Protocols
The following protocols are available globally.
-
See moreEventAnalyticsController
keeps track of events and notifiesEventAnalyticsObserver
. An event describes the success and failure conditions for the meeting session.Declaration
Swift
@objc public protocol EventAnalyticsController
-
See moreEventAnalyticsFacade
exposes event analytics related function to buildersDeclaration
Swift
@objc public protocol EventAnalyticsFacade
-
See moreEventAnalyticsObserver
handles events regarding to analytics.Declaration
Swift
@objc public protocol EventAnalyticsObserver
-
See moreAudioVideoControllerFacade
manages the signaling and peer connections.Declaration
Swift
@objc public protocol AudioVideoControllerFacade
-
Declaration
Swift
@objc public protocol AudioVideoFacade: AudioVideoControllerFacade, RealtimeControllerFacade, DeviceController, VideoTileControllerFacade, ActiveSpeakerDetectorFacade, ContentShareController, EventAnalyticsFacade
-
See moreAudioVideoObserver
handles audio/video session events.Declaration
Swift
@objc public protocol AudioVideoObserver
-
See morePrimaryMeetingPromotionObserver
handles events related to Primary meeting promotion. SeeAudioVideoControllerFacade.promoteToPrimaryMeeting
for more information.Declaration
Swift
@objc public protocol PrimaryMeetingPromotionObserver
-
See moreActiveSpeakerDetectorFacade
listens to the volume indicator updates from theRealtimeControllerFacade
. It consults theActiveSpeakerPolicy
to determine if the speaker is active or not.Declaration
Swift
@objc public protocol ActiveSpeakerDetectorFacade
-
See moreActiveSpeakerObserver
handles event related to finding active speaker and corresponding scoresDeclaration
Swift
@objc public protocol ActiveSpeakerObserver
-
Declaration
Swift
@objc public protocol ActiveSpeakerPolicy
-
See moreScheduler
calls a callback on the schedule determined by the implementation.Declaration
Swift
@objc public protocol Scheduler
-
See moreContentShareController
exposes methods for starting and stopping content share with aContentShareSource
. The content represents a media steam to be shared in the meeting, such as screen capture or media files. Please refer to content share guide for details.Declaration
Swift
@objc public protocol ContentShareController
-
See moreContentShareObserver
handles all callbacks related to the content share. By implementing the callback functions and registering withContentShareController.addContentShareObserver
, one can get notified with content share status events.Declaration
Swift
@objc public protocol ContentShareObserver
-
See Using Amazon Chime SDK live transcription developer guide for details about transcription message types and data guidelines
Declaration
Swift
@objc public protocol TranscriptEvent
-
See moreMetricsObserver
handles events related to audio/video metrics.Declaration
Swift
@objc public protocol MetricsObserver
-
See moreVideoFrameBuffer
is a buffer which contains a single video buffer’s raw data. Typically owned by aVideoFrame
which includes additional metadata.Declaration
Swift
@objc public protocol VideoFrameBuffer
-
VideoRenderView
is the type of VideoSink used by theVideoTileController
Declaration
Swift
@objc public protocol VideoRenderView : VideoSink
-
A
See moreVideoSink
consumes video frames, typically from aVideoSource
. It may process, fork, or render these frames. Typically connected via videoVideoSource.addVideoSink
and disconnected viaVideoSource.removeVideoSink
Declaration
Swift
@objc public protocol VideoSink
-
See moreVideoSource
is an interface for sources which produce video frames, and can send to aVideoSink
. Implementations can be passed to theAudioVideoFacade
to be used as the video source sent to remote participlantsDeclaration
Swift
@objc public protocol VideoSource
-
Declaration
Swift
@objc public protocol VideoTileController : VideoTileControllerFacade
-
See moreVideoTileControllerFacade
allows one to controlVideoTile
. The caller is responsible for laying out video render views as desired and binding tile ids received from the observer in thevideoTileDidAdd
andvideoTileDidRemove
callbacks.Declaration
Swift
@objc public protocol VideoTileControllerFacade
-
See moreCameraCaptureSource
is an interface for camera capture sources with additional features not covered byVideoCaptureSource
. All the APIs in this protocol can be called regardless of whether theMeetingSession.audioVideo
is started or not.Declaration
Swift
@objc public protocol CameraCaptureSource : VideoCaptureSource
-
See moreCaptureSourceObserver
observes events resulting from different types of capture devices. Builders may desire this input to decide when to show certain UI elements, or to notify users of failure.Declaration
Swift
@objc public protocol CaptureSourceObserver
-
See moreVideoCaptureSource
is an interface for various video capture sources (i.e. screen, camera, file) which can emitVideoFrame
objects. All the APIs in this protocol can be called regardless of whether theMeetingSession.audioVideo
is started or not.Declaration
Swift
@objc public protocol VideoCaptureSource : VideoSource
-
See moreDeviceChangeObserver
listens to the change of Audio Device.Declaration
Swift
@objc public protocol DeviceChangeObserver
-
See moreDeviceController
keeps track of the devices being used for audio device (e.g. built-in speaker), video input (e.g. camera)). The list functions returnMediaDevice
objects. Changes in device availability are broadcast to any registeredDeviceChangeObserver
.Declaration
Swift
@objc public protocol DeviceController
-
See moreEventBuffer
defines storing and consuming of event data.Declaration
Swift
@objc public protocol EventBuffer
-
See moreEventClientConfiguration
contains speciic data required to send as metadata.Declaration
Swift
@objc public protocol EventClientConfiguration
-
See moreEventReporter
process data. It will be called inDefaultEventAnalyticsController
.Declaration
Swift
@objc public protocol EventReporter
-
Declaration
Swift
@objc public protocol EventReporterFactory
-
See moreEventSender
handles the sending of ingestion recordDeclaration
Swift
@objc public protocol EventSender
-
See moreDataMessasgeObserver
handles data message event,Declaration
Swift
@objc public protocol DataMessageObserver
-
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
See moreRealtimeObserver
, which in turn provides consumers the volume/mute/signal/attendee callbacks that can be used to render in the UI.Declaration
Swift
@objc public protocol RealtimeControllerFacade
-
See moreRealtimeObserver
handles event that happens in realtime, such as delta in attendees join or leave, volume/signal status.Declaration
Swift
@objc public protocol RealtimeObserver
-
See moreTranscriptEventObserver
provides a callback to handle transcript eventDeclaration
Swift
@objc public protocol TranscriptEventObserver
-
Declaration
Swift
@objc public protocol MeetingSession
-
See moreLogger
defines how to write logs for different logging level.Declaration
Swift
@objc public protocol Logger