Skip to content

Changing permissions of self-joined users during a call has no (lasting) effect #7380

Closed
@danxuliu

Description

How to use GitHub

  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

If the permissions of a participant are changed when that participant is in a call currently that participant will force reconnect. When the HPB is not used the participant just leaves the call and joins it again, but when the HPB is used the participant also leaves the conversation and joins it again. When self joined users leave a conversation their attendee is removed, so any custom permission previously set is lost. Therefore, when the HPB is used, when a self joined user is force reconnected during a call due to having received custom permissions those permissions are immediately lost and the self joined user will be back to the default permissions.

This will be implicitly fixed by getting rid of forced reconnections when permissions change (#6896 and #6934). However, note that the fix only affects changing the permissions during a call; the self joined user will anyway lose the custom permissions when manually joining the conversation again.

How to test

  • Setup the HPB
  • Create a public conversation
  • Revoke audio and video permissions by default
  • In a private window, log in as another user
  • Join the conversation
  • Start a call
  • In the original window, join the call
  • Grant all permissions to the self joined user

Expected result

The self joined user is able to enable audio and video

Actual result

After some seconds the self joined user will have the default permissions again and she will not be able to enable audio and video. Moreover, when the self joined user then tries to leave the call it will fail, and the browser console will show the error Participant not found for conversation XXX.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Type

No type

Projects

  • Status

    ☑️ Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions