In release v1.2.0, you have had the following update added:
The user who created a session is considered the “original host”. The original host has the following privileges: the session ends after a configurable timeout after the original host leaves a session, if a new host was not assigned. When the original host rejoins the same session later, if nobody was assigned as the new host by the original host before they left the session, the original host can claim the ‘host’ role, based on its user_identity setting in the JWT payload. The original host can take the host role at any time from the current host. See user_identity and role_type in Authentication for details.
But I noticed that this only works if participants come to a meeting where there is no host (none of them is given the host role, that’s right). But if there is a host at the meeting (with role_type “1” in jwt-token) and he exits, then the role is still transferred to the participant whose jwt token has role_type “0”. I also tried to additionally specify user_identity when receiving the token, but this does not change the situation. The role of the host is still transferred to the participants if the main host leave.
I noticed a bug that if you specify role_type = 1 when receiving the signature, and if the host exits the conference, then all participants receive a event 'user-updated', with the parameter muted: false. All participants turn on the microphone =D
Can I clarify a few things? When you see the muted: false property, which event listener are you using? When logging user-updated I see this JSON which does not include a muted property:
That being said, when calling client.getAllUser() after the user-updated event is triggered, I do see muted: false when the user has not joined audio (have not called stream.startAudio()) which would be inaccurate, but if the user has joined audio (have called stream.startAudio()) and is muted, I see muted: true.
When you saw this functionality, was your user connected to audio via stream.startAudio().