amazon-chime-sdk / com.amazonaws.services.chime.sdk.meetings.realtime / RealtimeControllerFacade

RealtimeControllerFacade

interface RealtimeControllerFacade

RealtimeControllerFacade controls aspects meetings concerning realtime UX that for performance, privacy, or other reasons should be implemented using the most direct path. Callbacks generated by this interface should be consumed synchronously and without business logic dependent on the UI state where possible.

Events will be passed through RealtimeObserver, which in turn provides consumers the volume/mute/signal/attendee callbacks that can be used to render in the UI. Data Messages will be passed through DataMessageObserver.

Functions

addRealtimeDataMessageObserver

Subscribes to receive message on a topic, there could be multiple observers per topic

abstract fun addRealtimeDataMessageObserver(topic: String, observer: DataMessageObserver): Unit

addRealtimeObserver

Subscribes to real time events with an observer

abstract fun addRealtimeObserver(observer: RealtimeObserver): Unit

addRealtimeTranscriptEventObserver

Subscribes to transcript event with an observer

open fun addRealtimeTranscriptEventObserver(observer: TranscriptEventObserver): Unit

realtimeIsVoiceFocusEnabled

Checks if Amazon Voice Focus is enabled.

abstract fun realtimeIsVoiceFocusEnabled(): Boolean

realtimeLocalMute

Mute the audio input.

abstract fun realtimeLocalMute(): Boolean

realtimeLocalUnmute

Unmutes the audio input.

abstract fun realtimeLocalUnmute(): Boolean

realtimeSendDataMessage

Send message via data channel. Messages are only expected to be sent after audio video has started, otherwise will be ignored. Even though one can send data messages to any valid topic, in order to receive the messages from the given topic, one need to subscribed to the topic by calling addRealtimeDataMessageObserver. LifetimeMs specifies milliseconds for the given message can be stored in server side. Up to 1024 messages may be stored for a maximum of 5 minutes.

abstract fun realtimeSendDataMessage(topic: String, data: Any, lifetimeMs: Int = 0): Unit

realtimeSetVoiceFocusEnabled

Enable or disable Amazon Voice Focus (ML-based noise suppression) on the audio input.

abstract fun realtimeSetVoiceFocusEnabled(enabled: Boolean): Boolean

removeRealtimeDataMessageObserverFromTopic

Unsubscribes from a message topic

abstract fun removeRealtimeDataMessageObserverFromTopic(topic: String): Unit

removeRealtimeObserver

Unsubscribes from real time events by removing the specified observer

abstract fun removeRealtimeObserver(observer: RealtimeObserver): Unit

removeRealtimeTranscriptEventObserver

Unsubscribes from transcript event by removing the specified observer

open fun removeRealtimeTranscriptEventObserver(observer: TranscriptEventObserver): Unit

Inheritors

AudioVideoFacade

interface AudioVideoFacade : AudioVideoControllerFacade, RealtimeControllerFacade, DeviceController, VideoTileControllerFacade, ActiveSpeakerDetectorFacade, ContentShareController, EventAnalyticsFacade

DefaultRealtimeController

class DefaultRealtimeController : RealtimeControllerFacade