MultimediaSessionFlows
interface MultimediaSessionFlows
Reactive streams for observing multimedia session state.
Use these flows to drive UI updates for call status, participant lists, and audio visualization.
See also
Samples
scope.launch {
session.event.collect { event ->
when (event) {
is MultimediaSessionEvent.Connection.Connected -> {
// Call connected successfully
}
is MultimediaSessionEvent.Connection.Reconnecting -> {
// Network interruption, attempting to reconnect
}
is MultimediaSessionEvent.Connection.Disconnected -> {
// Call ended or lost connection
}
is MultimediaSessionEvent.ParticipantChanged -> {
// Agent joined or participant state changed
}
is MultimediaSessionEvent.Error -> {
val errorCode = event.code
}
else -> {}
}
}
}Content copied to clipboard
scope.launch {
session.remoteParticipants.collect { participants ->
participants.forEach { participant ->
val isRemote = participant.origin == MultimediaParticipantOrigin.Remote
// Use participant.audioTracks for audio visualization
}
}
}Content copied to clipboard
Inheritors
Properties
Link copied to clipboard
A stream of MultimediaSessionEvent instances emitted during the session lifecycle.
Link copied to clipboard
A stream of the local MultimediaParticipant.
Link copied to clipboard
A stream of remote MultimediaParticipant instances currently in the session.