Skip to main content

Crate opentalk_roomserver_module_automod

Crate opentalk_roomserver_module_automod 

Source
Expand description

§Auto-Moderation Module

§Functionality

On room startup the automod is disabled.

Selecting the options for the automod is managed by the frontend and this module does not provide templates or anything else

Following selection_strategies are defined:

  • None: No automatic reselection happens after the current speaker yields. The next one must always be selected by the moderator. The moderator may choose a participant directly or let the roomserver choose one randomly. For that the roomserver holds a allow_list which is a set of participants which are able to be randomly selected. Furthermore the roomserver will hold a list of start/stop speaker events. That list can optionally be used to avoid double selections when randomly choosing a participant.

  • Playlist: The playlist-strategy requires a playlist of participants. This list will be stored ordered inside the roomserver. Whenever a speaker yields the roomserver will automatically choose the next participant in the list to be the next speaker.

    A moderator may choose to skip over a speaker. That can be done by selecting the next one or let the roomserver choose someone random from the playlist. The playlist can, while the automod is active, be edited.

  • Random: This strategy behaves like None but will always choose the next speaker randomly from the allow_list as soon as the current speaker yields.

  • Nomination: This strategy behaves like None but requires the current speaker to nominate the next participant to be speaker. The nominated participant MUST be inside the allow_list and if double selection is not enabled the roomserver will check if the nominated participant already was a speaker.

§Lifecycle

As soon as a moderator starts the automod, the automod-module will set the config in memory and then send a start event to all participants.

The selection of the first speaker must be done by the frontend then, depending of the selection_strategy, will the automod continue running until finished or stopped.

Once the active speaker yields or their time runs out, the automod module is responsible to select the next speaker (if the selection_strategy requires it). This behavior MUST only be executed after ensuring that this participant is in fact still the speaker.

If the participant leaves while being speaker, the automod-module must execute the same behavior as if the participants simply yielded without selecting the next one (which would be required for the nominate selection_strategy. A moderator has to intervene in this situation).

Moderators will always be able to execute a re-selection of the current speaker regardless of the selection_strategy.

Structs§

AutomodModule
SpeakerTimeLimitReached
Indicates that the time limit for a speaker has been reached

Enums§

AutomodLoopback