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 Android 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.

blueJeansSDK.getMeetingService().getModeratorControlsService().getIsModeratorControlsAvailable();
blueJeansSDK.meetingService.moderatorControlsService.isModeratorControlsAvailable: ObservableValueWithOptional<Boolean>

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

Note

  • ModeratorControlsService cannot override local audio and video muting operations performed by participants.
  • Participants can locally override the mute enforcement by the ModeratorControlsService

Meeting Recording Controls

The following APIs are used to control the in-Meeting recording features to start recording, stop recording, and check the space availability to record a meeting. 

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

blueJeansSDK.getMeetingService().getModeratorControlService().getIsRecordingFeatureAvailable();
blueJeansSDK.meetingService.moderatorControlsService.isRecordingFeatureAvailable: ObservableValueWithOptional<Boolean>

isRecordingFeatureAvailable is a Boolean observable. This will be true only if a meeting is joined as moderator and the meeting supports the recording feature.

Start Recording

The startRecording() method makes the request to the server 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.

blueJeansSDK.getMeetingService().getModeratorControlService().startRecording();
blueJeansSDK.meetingService.moderatorControlsService.startRecording()

Note

Use the recordingState property is used to check the current recording state.

blueJeansSDK.getMeetingService().getModeratorControlService().getRecordingState();
blueJeansSDK.meetingService.moderatorcontrolservice.recordingState: ObservableVariableWithOptional<RecordingState>

Stop Recording

The stopRecording() API is used to stop recording for a current meeting. Use the following code snippet to stop recording the current meeting session.

blueJeansSDK.getMeetingService().getModeratorControlService().stopRecording();
blueJeansSDK.meetingService.moderatorcontrolservice.stopRecording()

Note

Calling stopRecording() before recordingState transitions to RecordingState. Started causes the call to be ignored.

Mute/unmute the audio/video of other participants

Android 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. 
    blueJeansSDK.getMeetingService().getModeratorControlService().setAudioMutedForParticipant(Boolean
     muted, ParticipantService.Participant participant);
    blueJeansSDK.meetingService.moderatorControlsService.setAudioMutedForParticipant(muted: Boolean,
     participant: ParticipantService.Participant)
    
  • To set video muted/unmuted for specific participants within the meeting, use the following code snippet. 
    blueJeansSDK.getMeetingService().getModeratorControlService().setVideoMutedForParticipant(Boolean
     muted, ParticipantService.Participant participant);
    blueJeansSDK.meetingService.moderatorControlsService.setVideoMutedForParticipant(muted: Boolean,
     participant: ParticipantService.Participant)
    
    

Mute/unmute the audio/video of all participants

Android 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.
    blueJeansSDK.getMeetingService().getModeratorControlService().setAudioMutedForAll(Boolean muted);
    blueJeansSDK.meetingService.moderatorcontrolservice.setAudioMutedForAll(muted: boolean)
  • To set video muted/unmuted for all participants within the meeting, use the following code snippet. 
    blueJeansSDK.getMeetingService().getModeratorControlService().setVideoMutedForAll(Boolean muted);
    blueJeansSDK.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.

blueJeansSDK.getMeetingService().getModeratorControlService().removeParticipant(ParticipantsService.Participant participant);
blueJeansSDK.meetingService.moderatorControlsService.removeParticipant(participant: ParticipantsService.Participant)

End Meeting for All Participants

The Android 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 meeting status will be updated to "Idle".

blueJeansSDK.getMeetingService().getModeratorControlService().getEndMeetingForAllParticipants(Long timeInSecond);
blueJeansSDK.meetingService.moderatorControlsService.endMeetingForAllParticipants(timeInSeconds: Long)

Note

By default duration in seconds is "zero".

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. 

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

blueJeansSDK.getMeetingService().getModeratorControlService().spotlightParticipantVideo(Boolean enabled,
 ParticipantsService.Participant participant);
blueJeansSDK.meetingService.moderatorControlsService.spotlightParticipantVideo(enabled: Boolean,
 participant: ParticipantsService.Participant)