OngoingCallListener class for legacy-style callbacks, and the addEventListener method for modern event subscriptions.
OngoingCallListener
TheOngoingCallListener class provides callbacks for call events. Pass it to CallSettingsBuilder.setCallEventListener():
OngoingCallListener Events
| Event | Payload | Description |
|---|---|---|
onUserJoined | User object | A user joined the call |
onUserLeft | User object | A user left the call |
onUserListUpdated | User array | The participant list changed |
onCallEnded | - | The call has ended |
onCallEndButtonPressed | - | The end call button was pressed |
onSessionTimeout | - | The session timed out due to inactivity |
onError | Error object | An error occurred |
onAudioModesUpdated | Audio modes array | Available audio modes changed |
onRecordingStarted | Recording data | Recording has started |
onRecordingStopped | Recording data | Recording has stopped |
onUserMuted | User object | A user was muted |
onCallSwitchedToVideo | Session data | An audio call was switched to video |
addEventListener
For more granular control, useCometChatCalls.addEventListener() to subscribe to specific events:
Session Status Events
| Event | Payload | Description |
|---|---|---|
onSessionJoined | - | Successfully joined the session |
onSessionLeft | - | Left the session |
onConnectionLost | - | Connection to the session was lost |
onConnectionRestored | - | Connection was restored |
onConnectionClosed | - | Connection was closed |
onSessionTimedOut | - | Session timed out due to inactivity |
Media Events
| Event | Payload | Description |
|---|---|---|
onAudioMuted | - | Local audio was muted |
onAudioUnMuted | - | Local audio was unmuted |
onVideoPaused | - | Local video was paused |
onVideoResumed | - | Local video was resumed |
onRecordingStarted | - | Recording started |
onRecordingStopped | - | Recording stopped |
onScreenShareStarted | - | Screen sharing started |
onScreenShareStopped | - | Screen sharing stopped |
onAudioModeChanged | Audio mode | Audio output mode changed |
onCameraFacingChanged | Camera facing | Camera switched (front/rear) |
Participant Events
| Event | Payload | Description |
|---|---|---|
onParticipantJoined | Participant | A participant joined |
onParticipantLeft | Participant | A participant left |
onParticipantAudioMuted | Participant | A participant muted their audio |
onParticipantAudioUnmuted | Participant | A participant unmuted their audio |
onParticipantVideoPaused | Participant | A participant paused their video |
onParticipantVideoResumed | Participant | A participant resumed their video |
onParticipantHandRaised | Participant | A participant raised their hand |
onParticipantHandLowered | Participant | A participant lowered their hand |
onParticipantStartedScreenShare | Participant | A participant started screen sharing |
onParticipantStoppedScreenShare | Participant | A participant stopped screen sharing |
onParticipantStartedRecording | Participant | A participant started recording |
onParticipantStoppedRecording | Participant | A participant stopped recording |
onDominantSpeakerChanged | Participant | The dominant speaker changed |
onParticipantListChanged | Participant array | The participant list changed |
Button Click Events
| Event | Payload | Description |
|---|---|---|
onLeaveSessionButtonClicked | - | Leave session button clicked |
onRaiseHandButtonClicked | - | Raise hand button clicked |
onShareInviteButtonClicked | - | Share invite button clicked |
onChangeLayoutButtonClicked | - | Change layout button clicked |
onParticipantListButtonClicked | - | Participant list button clicked |
onToggleAudioButtonClicked | - | Toggle audio button clicked |
onToggleVideoButtonClicked | - | Toggle video button clicked |
onRecordingToggleButtonClicked | - | Recording toggle button clicked |
onScreenShareButtonClicked | - | Screen share button clicked |
onChatButtonClicked | - | Chat button clicked |
onSwitchCameraButtonClicked | - | Switch camera button clicked |
Layout Events
| Event | Payload | Description |
|---|---|---|
onCallLayoutChanged | Layout | The call layout changed |
onParticipantListVisible | - | Participant list became visible |
onParticipantListHidden | - | Participant list was hidden |
onPictureInPictureLayoutEnabled | - | PiP mode was enabled |
onPictureInPictureLayoutDisabled | - | PiP mode was disabled |
Participant Object
The participant object contains:| Property | Type | Description |
|---|---|---|
pid | string | Participant ID |
uid | string | User ID |
name | string | Display name |
avatar | string | Avatar URL (optional) |
Complete Example
Related Documentation
- Actions - Control the call programmatically
- Session Settings - Configure event listeners
- Participant Management - Manage participants