Moderator Controls


Moderator controls assist you in conducting secure online meetings. Moderators can guide meeting discussions in the right direction, minimize interruptions, and collaborate effectively to speed decision-making.

The Web Client SDK provides privileged meeting controls for moderators to perform in-meeting actions. Moderators have more control over the meeting than other meeting participants. You can mute/unmute individual participants and mute/unmute all participants as a moderator. This is especially useful if participants forget to mute themselves during the meeting.

The ModeratorControlsService provides the ability to check if an SDK user has joined with moderator privileges and functions to perform moderator-specific actions. Use the following code snippets to check the availability of the moderator control service.

webClientSDK.meetingService.moderatorcontrolservice.isModeratorControlsAvailable();

As a moderator, you can perform the following privileges:

  • Controls on meeting recordings (by start and stop recordings).
  • mute/unmute the audio of other participants / all participants.
  • mute/unmute the video of other participants / all participants
  • remove any participant from the meeting
  • end everyone's meeting immediately / after a certain delay
  • spotlight a video participant

Meeting Recording controls

The following APIs are used to control the in-Meeting recording features such as starting a recording, stopping a recording, and checking the space availability to record a meeting. 

The Web Client SDK provides the ability to record the meeting sessions.  isRecordingFeatureAvailable API is used to check if meeting recording is enabled. Use the following code snippet to verify the recording feature availability.

webClientSDK.meetingService.moderatorcontrolservice.isRecordingFeatureAvailable();

Start Recording

The startRecording() method is used to start recording a meeting. Promise returned by this method indicates whether the API call was successful. It internally calls checkSpaceAvailabilityForRecording to check if space is available and calls the startRecording API accordingly. Also, the recording will start only if isRecordingFeatureAvailable is true and there is no recording in progress. To start the recording meeting, use the following code snippet.

webClientSDK.meetingService.moderatorcontrolservice.startRecording();

Note

Use the recordingState API to check the current recording status.

webClientSDK.meetingService.moderatorcontrolservice.recordingState

Stop Recording

The stopRecording() method is used to stop recording for a current meeting. Promise returned by this method indicates whether the API call was successful. Use the following code snippet to stop recording the current meeting session.

webClientSDK.meetingService.moderatorcontrolservice.stopRecording();

Mute/unmute the audio/video of other participants

Web Client SDK provides an ability for moderators to mute/unmute the audio/video of a participant within the meeting.

  • To set audio muted/unmuted for specific participants within the meeting, use the following code snippet. 
    webClientSDK.meetingService.moderatorcontrolservice.setAudioMutedForParticipant(<muted: boolean>, <participant: Participant>);
  • To set video muted/unmuted for specific participants within the meeting, use the following code snippet. 
    webClientSDK.meetingService.moderatorcontrolservice.setVideoMutedForParticipant(<muted: boolean>, <participant: Participant>)

The audioMuteType/videoMuteType property of Participant object specifies the type of audio/video mute that is applied.

  • remoteMuted will hold the audio mute state information when a moderator mutes/unmutes a participant
  • remoteMuted will hold the video mute state information when a moderator mutes/unmutes a participant

Mute/unmute the audio/video of all participants

Web Client SDK provides an ability for moderators to mute/unmute the audio/video of all participants within the meeting.

  • To set audio muted/unmuted for all participants within the meeting, use the following code snippet.
    webClientSDK.meetingService.moderatorcontrolservice.setAudioMutedForAll(<muted: boolean>);
  • To set video muted/unmuted for all participants within the meeting, use the following code snippet. 
    webClientSDK.meetingService.moderatorcontrolservice.setVideoMutedForAll(<muted: boolean>);

Remove Participant

Moderators have the privilege to remove participants from the meeting at any time. The removeParticipant() method is used to remove a participant from the meeting. If someone accidentally joins a meeting, or if you no longer need to include a participant in a new discussion topic, you can remove that participant from the online meeting using the following command.

webClientSDK.meetingService.moderatorcontrolservice.removeParticipant(<participant: Participant>);

End Meeting for All Participants

The Web Client SDK allows moderators to leave the meeting immediately and other participants to leave after a timeout. The endMeetingForAllParticipants method is used to end the meeting of all other participants after a while. Therefore, all participants in the meeting will leave immediately after the time set by the moderator. If the meeting ends successfully, the connection status will be updated to "IDLE".

webClientSDK.meetingService.moderatorcontrolservice.endMeetingForAllParticipants(<timeInSeconds: number>);

Spotlight a video participant

The moderator has the privileged to "Spotlight" the participants during the meeting.
Whenever a spotlight for a participant "X" is enabled by a moderator, all the participants are pushed into the "People view" (1x5 "filmstrip" layout) for all participants in the meeting and everyone will see the spotlighted participant video in the main stage irrespective of whoever is the speaker. 

isSpotLightAllowed API is used to check if the spotlight is enabled for the participant. Use the following code snippet to check whether the participant is allowed to spotlight the video.

webClientSDK.meetingService.moderatorcontrolservice.isSpotLightAllowed(<participant: Participant>);

Spotlight can be used for self (moderator) and other video participants in the meeting. Use the following code snippet to spotlight a participant.

webClientSDK.meetingService.moderatorcontrolservice.spotlightParticipantVideo(<enabled: boolean>, <participant: Participant>):