Description
We have integrated the Zoom Video SDK (React Native)( version 2.1.10) for mobile and ZOOM video SDK web UI Toolkit( version 2.2.10-1**)** and facing an issue where the same event (user-removed) is triggered in both of the following scenarios:
-
When a participant voluntarily leaves the session using the Leave button
-
When a host/admin removes (kicks) a participant from the session
In both cases, the event payload does not contain any property indicating the reason for removal.
Because of this, we are unable to differentiate between:
-
A voluntary leave
-
A host/admin removal
This impacts our production moderation flow, UI messaging, and session cleanup logic.
Video SDK Code Snippets
We are subscribing to the event as follows:
uitoolkit.on("user-removed", (removed: any) => {
if (this.sessionType === 'GroupSession') {
this.userRemoved(removed);
}
});
The removed object contains participant metadata such as:
-
userId
-
userGuid
-
displayName
-
isHost
-
muted
-
bVideoOn
-
sharerOn
-
subsessionId
However, there is no field indicating whether:
-
The user left voluntarily
-
The user was removed by host/admin
To Reproduce
-
Start a session with at least two participants (one host, one participant)
-
Scenario A: Participant clicks the Leave button
-
Observe
user-removedevent triggered -
Scenario B: Host removes (kicks) the participant
-
Observe
user-removedevent triggered -
In both cases, the event payload structure is identical.