Appearance
Interface: ClientEvents
Extends
Record<string,unknown[]>
Indexable
ts
[key: string]: unknown[]Properties
| Property | Type | Description |
|---|---|---|
activeSpeakers | [string[]] | - |
audioOnlyFallback | [boolean] | The media server dropped the video it sends this client to audio only, its connection too slow for video (true), or brought it back (false). It tries video again on its own. room.audioOnlyFallback keeps it. |
callEnded | [{ call: Call | null; reason: CallEndReason; }] | Once per call, however it ended: this side hung up, the server ended it, or an invite was cancelled, rejected or answered elsewhere. reason is from this client's side (CallEndReason), and call.endReason keeps it. |
callStarted | [Call] | - |
callUpdated | [Call] | Every change to the active call's state. Call is one object for the life of a call, so this is what tells a UI to read it again. |
connectionState | [ConnectionState, { attempt: number; cause: ReconnectCause | null; }] | - |
dataReceived | [DataMessage] | - |
disconnected | [{ reason: string; reconnectAllowed: boolean; }] | The server closed the session and said whether a reconnect is allowed. |
error | [TalklineError] | - |
incomingCall | [Call] | - |
localTracksChanged | [Track[]] | - |
mediaRecovery | [{ of: number; step: 1 | 2 | 3; }] | The media recovery ladder moved a rung: 1 is an ICE restart, 2 a rebuilt connection, 3 a rebuilt one through TURN only. For logs, and for a host that wants to say "still trying". |
needsUserGesture | [Track] | Safari refused play() because no gesture led to it. Surface a button; the SDK has no words of its own. |
participantJoined | [RemoteParticipant] | - |
participantLeft | [{ identity: string; }] | - |
participantUpdated | [RemoteParticipant] | - |
presence | [PresenceInfo] | A watched identity's presence changed (watchPresence). Also raised for every watched identity after a reconnect that could have missed one. |
quality | [QualityLevel, string] | - |
recordingChanged | [RoomRecording] | The room's recording started, stopped or failed, or this user acknowledged it (Room.recording, which this is). Raised also on joining a room being recorded. Every participant is told, recorded or not, and the host must show it: a person has a right to know. The words are the host's. |
roomJoined | [Room] | - |
roomLeft | [{ reason: string; }] | - |
stats | [StatsSample[]] | This client's own media samples, one per stream, every 5 seconds while it is in a room (every 15 past 12 participants): the numbers it grades its quality from and reports to the server. |
trackSubscribed | [Track, RemoteParticipant | null] | - |
trackUnsubscribed | [Track, RemoteParticipant | null] | - |
updateDue | [ProtocolInfo] | This build's protocol is more than one minor behind the deployment's: it is served until the deployment raises its minimum, and then refused client_outdated. Raised on a connect that finds it so. The words, and whether to say any, are the host's. |