Skip to content

Rejected calls remain active for some time #1162

@antondokusov

Description

@antondokusov

Hi,

I’m trying to get a list of active calls that a user can participate in. My queryCalls() looks like this:

    final result = await client.queryCalls(
      watch: true,
      filterConditions: {
        "\$and": [
          {
            "ongoing": true,
          },
          {
            "members": {
              "\$in": [client.currentUser.id],
            },
          },
        ],
      },
    );

This condition successfully filters out calls for which end() was called. However, consider the following scenario:

  1. User1 calls User2 with ringing: true
  2. User2 rejects the call

A session is created for the call, so the condition ongoing: true is still met. However, the call is not ended after User2 rejects it and remains active for some time (around 10 minutes). After that, the call becomes idle and queryCalls() no longer returns it. The host also cannot end the call manually, because the SDK rejects the request with [end] rejected (invalid status): Disconnected.

Is there a way to avoid this 10-minute delay? It’s a bit confusing, since a rejected call is not intended to be used anymore.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions