CallClientCoroutineWrapper

class CallClientCoroutineWrapper(client: CallClient)

A wrapper around CallClient which uses Kotlin coroutines.

This is a helper class to allow invoking CallClient methods using Kotlin's suspending functions model, instead of the "request completed" callbacks provided by CallClient.

Constructors

Link copied to clipboard
fun CallClientCoroutineWrapper(client: CallClient)

Functions

Link copied to clipboard
fun activeSpeaker(): Participant?

See the documentation for CallClient.activeSpeaker

Link copied to clipboard
suspend fun addCustomAudioTrack(name: CustomTrackName, source: CustomAudioSource)

See the documentation for CallClient.addCustomAudioTrack

Link copied to clipboard
suspend fun addCustomVideoTrack(name: CustomTrackName, source: CustomVideoSource)

See the documentation for CallClient.addCustomVideoTrack

Link copied to clipboard
fun addListener(callClientListener: CallClientListener)

See the documentation for CallClient.addListener

Link copied to clipboard
suspend fun addLiveStreamingEndpoints(endpoints: LiveStreamEndpoints.Preconfigured, streamId: StreamId? = null)

See the documentation for CallClient.addLiveStreamingEndpoints

Link copied to clipboard
@RequiresApi(value = 23)
fun audioDevice(): String?

See the documentation for CallClient.audioDevice.

Link copied to clipboard
fun availableDevices(): AvailableDevices

See the documentation for CallClient.availableDevices

Link copied to clipboard
suspend fun callConfigFor(url: String, token: MeetingToken? = null): CallConfiguration

See the documentation for CallClient.callConfigFor

Link copied to clipboard
fun callState(): CallState

See the documentation for CallClient.callState

Link copied to clipboard
suspend fun ejectRemoteParticipants(ids: List<ParticipantId>)

See the documentation for CallClient.ejectRemoteParticipants.

Link copied to clipboard
fun getNetworkStats(): NetworkStats?

See the documentation for CallClient.getNetworkStats

Link copied to clipboard
fun inputs(): InputSettings

See the documentation for CallClient.inputs

Link copied to clipboard
suspend fun join(url: String, meetingToken: MeetingToken? = null, clientSettings: ClientSettingsUpdate? = null): CallJoinData

See the documentation for CallClient.join.

Link copied to clipboard
suspend fun leave()

See the documentation for CallClient.leave

Link copied to clipboard
fun localAudioLevel(): Float

See the documentation for CallClient.localAudioLevel

Link copied to clipboard
fun participantCounts(): ParticipantCounts

See the documentation for CallClient.participantCounts

Link copied to clipboard
fun participants(): Participants

See the documentation for CallClient.participants

Link copied to clipboard
fun publishing(): PublishingSettings

See the documentation for CallClient.updatePublishing

Link copied to clipboard
fun release()

See the documentation for CallClient.release

Link copied to clipboard
fun remoteParticipantsAudioLevel(): Map<ParticipantId, Float>

See the documentation for CallClient.remoteParticipantsAudioLevel

Link copied to clipboard
suspend fun removeCustomAudioTrack(name: CustomTrackName)

See the documentation for CallClient.removeCustomAudioTrack

Link copied to clipboard
suspend fun removeCustomVideoTrack(name: CustomTrackName)

See the documentation for CallClient.removeCustomVideoTrack

Link copied to clipboard
fun removeListener(callClientListener: CallClientListener)

See the documentation for CallClient.removeListener

Link copied to clipboard
suspend fun removeLiveStreamingEndpoints(endpoints: LiveStreamEndpoints.Preconfigured, streamId: StreamId? = null)

See the documentation for CallClient.removeLiveStreamingEndpoints

Link copied to clipboard
suspend fun sendAppMessage(message: String, recipient: Recipient)

See the documentation for CallClient.sendAppMessage.

Link copied to clipboard
@RequiresApi(value = 23)
suspend fun setAudioDevice(deviceId: String)

See the documentation for CallClient.setAudioDevice.

Link copied to clipboard
suspend fun setInputsEnabled(camera: Boolean? = null, microphone: Boolean? = null)

See the documentation for CallClient.setInputsEnabled

Link copied to clipboard
suspend fun setIsPublishing(camera: Boolean? = null, microphone: Boolean? = null)

See the documentation for CallClient.setIsPublishing

Link copied to clipboard
suspend fun setSubscriptionProfile(participantIdToProfile: Map<ParticipantId, SubscriptionProfile>)
suspend fun setSubscriptionProfile(participantId: ParticipantId, profile: SubscriptionProfile)

See the documentation for CallClient.setSubscriptionProfile

Link copied to clipboard
suspend fun setSubscriptionState(participantIdToState: Map<ParticipantId, SubscriptionState>)
suspend fun setSubscriptionState(participantId: ParticipantId, state: SubscriptionState)
suspend fun setSubscriptionState(participantId: ParticipantId, camera: SubscriptionState? = null, microphone: SubscriptionState? = null, screenVideo: SubscriptionState? = null, screenAudio: SubscriptionState? = null)

See the documentation for CallClient.setSubscriptionState

Link copied to clipboard
suspend fun setSubscriptionStateForParticipantMedia(participantIdToTracks: Map<ParticipantId, TrackSubscriptionStateUpdate>)
Link copied to clipboard
suspend fun setUserName(userName: String)

See the documentation for CallClient.setUserName.

Link copied to clipboard
suspend fun startLiveStream(endpoints: LiveStreamEndpoints, streamingSettings: StreamingSettings? = null, streamId: StreamId? = null, forceNew: StreamingStartMode = StreamingStartMode.onlyIfNotAlreadyStreaming): StreamId

See the documentation for CallClient.startLiveStream

Link copied to clipboard
suspend fun startLocalAudioLevelObserver(intervalMs: Long? = null)

See the documentation for CallClient.startLocalAudioLevelObserver

Link copied to clipboard
suspend fun startRecording(streamingSettings: StreamingSettings? = null, streamId: StreamId? = null, forceNew: StreamingStartMode = StreamingStartMode.onlyIfNotAlreadyStreaming): StreamId

See the documentation for CallClient.startRecording

suspend fun startRemoteParticipantsAudioLevelObserver(intervalMs: Long? = null)
Link copied to clipboard
suspend fun startTranscription(properties: StartTranscriptionProperties)

See the documentation for CallClient.startTranscription

Link copied to clipboard
suspend fun stopLiveStream(streamId: StreamId? = null)

See the documentation for CallClient.stopLiveStream

Link copied to clipboard
suspend fun stopLocalAudioLevelObserver()

See the documentation for CallClient.stopLocalAudioLevelObserver

Link copied to clipboard
suspend fun stopRecording(streamId: StreamId? = null)

See the documentation for CallClient.stopRecording

Link copied to clipboard
suspend fun stopRemoteParticipantsAudioLevelObserver()
Link copied to clipboard
suspend fun stopTranscription()

See the documentation for CallClient.stopTranscription

Link copied to clipboard
Link copied to clipboard
fun subscriptions(): Map<ParticipantId, SubscriptionSettings>

See the documentation for CallClient.subscriptions

Link copied to clipboard
suspend fun updateCustomAudioTrack(name: CustomTrackName, source: CustomAudioSource)

See the documentation for CallClient.updateCustomAudioTrack

Link copied to clipboard
suspend fun updateCustomVideoTrack(name: CustomTrackName, source: CustomVideoSource)

See the documentation for CallClient.updateCustomVideoTrack

Link copied to clipboard
suspend fun updateInputs(inputSettings: Update<InputSettingsUpdate>)

See the documentation for CallClient.updateInputs.

Link copied to clipboard
suspend fun updateLiveStream(streamingSettings: StreamingUpdateSettings, streamId: StreamId? = null)

See the documentation for CallClient.updateLiveStream

Link copied to clipboard
suspend fun updatePublishing(publishSettings: Update<PublishingSettingsUpdate>)

See the documentation for CallClient.updatePublishing

Link copied to clipboard
suspend fun updateRecording(streamingSettings: StreamingUpdateSettings, streamId: StreamId? = null)

See the documentation for CallClient.updateRecording

Link copied to clipboard
suspend fun updateRemoteParticipants(updatesById: Map<ParticipantId, RemoteParticipantUpdate>)

See the documentation for CallClient.updateRemoteParticipants.

Link copied to clipboard
suspend fun updateSubscriptionProfiles(subscriptionProfiles: Map<SubscriptionProfile, Update<SubscriptionProfileSettingsUpdate>>)

See the documentation for CallClient.updateSubscriptionProfiles

Link copied to clipboard
suspend fun updateSubscriptions(forParticipants: Map<ParticipantId, Update<SubscriptionSettingsUpdate>>, forParticipantsWithProfiles: Map<SubscriptionProfile, Update<SubscriptionSettingsUpdate>>)

See the documentation for CallClient.updateSubscriptions

Link copied to clipboard
suspend fun updateSubscriptionsForParticipants(forParticipants: Map<ParticipantId, Update<SubscriptionSettingsUpdate>>)