MeetingSDKDelegate
public protocol MeetingSDKDelegate : AnyObject
Implement an instance of this delegate interface to receive important information about the status of a meeting such as when participants are added, removed, etc..
-
meetingToken(decodedToken:Default implementation) Called when a V3 or later server decodes the Meeting token on a joinMeeting call
Default Implementation
Declaration
Swift
func meetingToken(decodedToken: String)Parameters
decodedTokenThe decoded MJWT for the meeting
-
participantAdded(participant:Default implementation) Called when a participant gets added, on the audio_site_changed callback
Default Implementation
Declaration
Swift
func participantAdded(participant: Participant)Parameters
participantCurrent information of the corresponding participant
-
participantAudioAdded(participant:Default implementationstreamId: ) Called when a participant’s audio stream gets added. You will never receive this for the local user
Default Implementation
Declaration
Swift
func participantAudioAdded(participant: Participant, streamId: String)Parameters
participantCurrent information of the corresponding participant
streamIdUnique stream id
-
participantAudioUpdated(participant:Default implementation) Called when a participant’s audio stream gets added. You will never receive this for the local user
Default Implementation
Declaration
Swift
func participantAudioUpdated(participant: Participant)Parameters
participantCurrent information of the corresponding participant
-
participantVideoAdded(participant:Default implementationstreamId: ) Called when a participant gets added with a video stream, on the video_site_changed callback
Default Implementation
Declaration
Swift
func participantVideoAdded(participant: Participant, streamId: String)Parameters
participantCurrent information of the corresponding participant
streamIdUnique stream id
-
participantVideoUpdated(participant:Default implementationstreamId: ) Called when a participant video stream is updated with a new size
Default Implementation
Declaration
Swift
func participantVideoUpdated(participant: Participant, streamId: String)Parameters
participantCurrent information of the corresponding participant
streamIdUnique stream id
videoViewThe VideoView for the corresponding participant
-
participantVideoViewCreated(participant:Default implementationvideoView: local: ) Called when a video stream is enabled
Default Implementation
Declaration
Swift
func participantVideoViewCreated(participant: Participant, videoView: VideoView, local: Bool)Parameters
partipantCurrent information of the corresponding participant
videoViewThe VideoView for the corresponding participant
localBoolean to know if this participant is the local video stream
-
previewVideoViewCreated(videoView:Default implementation) Called when a video stream is enabled
Default Implementation
Declaration
Swift
func previewVideoViewCreated(videoView: VideoView)Parameters
videoViewThe VideoView for the preview stream
-
previewVideoUpdated(streamId:Default implementation) Called when a video preview stream is updated
Default Implementation
Declaration
Swift
func previewVideoUpdated(streamId: String) -
participantVideoViewRetrieved(participant:Default implementationvideoView: local: ) Called when a video stream is enabled but the VideoView already exists
Default Implementation
Declaration
Swift
func participantVideoViewRetrieved(participant: Participant, videoView: VideoView, local: Bool)Parameters
partipantCurrent information of the corresponding participant
videoViewThe VideoView for the corresponding participant
localBoolean to know if this participant is the local video stream
-
participantVideoRemoved(participant:Default implementationstreamId: ) Called when a participant’s video is removed, on the video_stream_removed callback
Default Implementation
Declaration
Swift
func participantVideoRemoved(participant: Participant, streamId: String)Parameters
participantCurrent information of the corresponding participant
videoViewThe VideoView for the corresponding participant
-
particpantVideoRemoteLayoutChanged(participant:Default implementationstreamId: ) Called when the remote layout of a participant’s video is changed
Default Implementation
Declaration
Swift
func particpantVideoRemoteLayoutChanged(participant: Participant, streamId: String)Parameters
participantCurrent information of the corresponding participant
streamIdUnique stream id
-
participantRemoved(participant:Default implementation) Called when a participant leaves or is removed from the meeting, on the audio_stream_removed callback
Default Implementation
Declaration
Swift
func participantRemoved(participant: Participant)Parameters
participantCurrent information of the corresponding participant
-
inputMeterChanged(meter:Default implementation) Called when the input volume is and gets the level of volume between 0 and 100
Default Implementation
Declaration
Swift
func inputMeterChanged(meter: Int)Parameters
meterThe level between 0 and 100
-
outputMeterChanged(meter:Default implementation) Called when the output volume is changing and gets the level of volume between 0 and 100
Default Implementation
Declaration
Swift
func outputMeterChanged(meter: Int)Parameters
meterThe level between 0 and 100
-
participantAmplitudeChanged(participant:Default implementationamplitude: muted: ) Called when a participant is inputting a volume and gets the level of volume between 0 and 100
Default Implementation
Declaration
Swift
func participantAmplitudeChanged(participant: Participant, amplitude: Int, muted: Bool)Parameters
participantThe corresponding participant that is inputting volume
amplitudeThe level between 0 and 100
mutedTrue if the participant is muted, false if not
-
logMessage(level:Default implementationmessage: ) Called whenever a new log message has been logged from either the lower level SDK, IGVideo or IGAudio. Only used if the MeetingSDK method enableInlineAudioVideoLogging has been called with a parameter of “true”
Default Implementation
Declaration
Swift
func logMessage(level: Int, message: String)Parameters
levelThe log level
messageThe log message
-
amplitude(participant:Default implementationamplitude: ) Called when a participant is inputting a volume and gets the level of volume between 0 and 100
Default Implementation
Declaration
Swift
func amplitude(participant: Participant, amplitude: Int)Parameters
participantThe corresponding participant that is inputting volume
amplitudeThe level between 0 and 100
-
binaryPlaybackEnded(id:Default implementation) Called when a sound played via MeetingSDK.playSound() has completed
Default Implementation
Declaration
Swift
func binaryPlaybackEnded(id: UInt64)Parameters
idThe id of the sound that just completed playing
-
binaryPlaybackFailed(id:Default implementation) Called when a sound played via MeetingSDK.playSound() has failed to play
Default Implementation
Declaration
Swift
func binaryPlaybackFailed(id: UInt64)Parameters
idThe id of the sound that just failed to play
-
screenShareCancelled()Default implementationCalled when an iOS screen share has been terminated (either by a “disableVideoCapture” call or by the user stopping it from the iOS controls)
Default Implementation
Declaration
Swift
func screenShareCancelled()Parameters
idThe id of the sound that just failed to play
-
meetingDisconnected()Default implementationCalled when an active meeting doesn’t get audio/video update packets for 60 seconds
Default Implementation
Declaration
Swift
func meetingDisconnected() -
participantNetworkQuality(participant:Default implementationstreamId: quality: ) Called when the network strength of a remote participant changes for one of their video feeds
- participant: The participant this video stream belongs to
Default Implementation
Declaration
Swift
func participantNetworkQuality(participant: Participant, streamId: String, quality: NetworkQuality) -
networkQuality(quality:Default implementation) Called when the local user’s network strength reading changes
Default Implementation
Declaration
Swift
func networkQuality(quality: NetworkQuality) -
connectionStatus(status:Default implementation) Called when the meeting connection status changes
Default Implementation
Declaration
Swift
func connectionStatus(status: ConnectionStatus)