Fired when the agent accepts an incoming interaction.
Payload: InteractionAcceptedPayload
Fired when the agent rejects an incoming interaction.
Payload: InteractionRejectedPayload
Fired when the voice call associated with an interaction is disconnected, typically preceding a transition to wrap-up state.
Payload: InteractionCallDisconnectedPayload
Fired when an interaction enters the wrap-up phase after the call ends. The agent can now record notes, set classification codes, and close the interaction.
Payload: InteractionWrapUpPayload
Fired when the wrap-up timer is extended. Contains the new deadline and extension details. Only fires on extensions, not on initial wrap-up entry.
Payload: InteractionWrapUpExtendedPayload
Fired when an interaction is completed and closed. The interaction will no longer emit events after this point.
Payload: InteractionCompletedPayload
Fired when the free-text notes on an interaction are updated via Interaction.setNotes.
Payload: InteractionNotesUpdatedPayload
Fired when the subject (short title) of an interaction is updated via Interaction.setSubject.
Payload: InteractionSubjectUpdatedPayload
Fired when the interaction's custom fields are updated - either by the local agent via Interaction.mergeCustomFields or by a server-side change.
Fired when any participant's microphone is muted on this interaction (owner, attended-transfer consult agent, or viewer). Broadcast to all agents; see InteractionCallMuteStateChangedPayload.userId for who was muted.
Fired when any participant's microphone is unmuted on this interaction (owner, attended-transfer consult agent, or viewer). Broadcast to all agents; see InteractionCallMuteStateChangedPayload.userId for who was unmuted.
Fired when the customer call is placed on hold.
Payload: InteractionCallStateChangedPayload
Fired when a held customer call is resumed and the agent is reconnected to the customer.
Payload: InteractionCallStateChangedPayload
Fired when a blind (immediate, no-consultation) transfer is completed and the interaction has been routed away from this agent.
Payload: InteractionBlindTransferredPayload
Fired when an attended (consultative) transfer is initiated and the consult call leg is being established.
Payload: InteractionTransferPayload
Fired when the consulted agent answers the consult call during an attended transfer.
Payload: InteractionTransferAnswerPayload
Fired when an in-progress attended transfer is cancelled and the originating agent is reconnected to the customer.
Payload: InteractionTransferCancelPayload
Fired when an attended transfer fails due to an external cause (busy, no answer,
rejected, etc.) rather than being cancelled by the agent. The interaction returns
to CONNECTED status and the agent can retry the transfer.
Payload: InteractionTransferFailedPayload
Fired when an attended transfer is completed and the customer is handed off to the consulted agent. Both the originating and consulted agents receive this event.
Payload: InteractionTransferCompletePayload
Fired when the voice call for this interaction is established and audio is active.
Payload: InteractionMediaEventPayload
Fired when a conference is initiated on this interaction, connecting the customer, the originating agent, and the consulted agent into a three-way call.
Payload: InteractionConferencePayload
Fired when the conference phase completes. The consulted agent transitions to a viewer role and the customer call continues between the owner and the viewer.
Payload: InteractionConferenceCompletePayload
Fired when a new viewer joins this interaction.
Payload: InteractionViewerAddedPayload
Fired when a viewer joins the audio call on this interaction.
Payload: InteractionViewerJoinedCallPayload
Fired when a viewer is removed from this interaction and fully exits the session.
Payload: InteractionViewerRemovedPayload
Fired when a viewer temporarily leaves the audio call while remaining in the viewer role.
Payload: InteractionViewerLeftCallPayload
Fired when the classification type or result for an interaction is updated via Interaction.setClassificationType or Interaction.setClassificationResult.
Fired when the customer's contact information (name, phone, email, or language code) is updated via Customer.setName, Customer.setPhone, Customer.setEmail, or Customer.setLanguageCode.
Fired when a voice call fails at the SIP/telephony layer (busy, not found, restricted, resource reset, etc.). The payload includes the failure reason, a user-friendly message, and whether the SDK is attempting automatic reconnection.
Payload: InteractionCallFailedPayload
Fired when the ownership of an interaction changes.
Payload: InteractionOwnershipChangedPayload
Fired when a message is received on this interaction - either authored by another
viewer/owner, or generated by the server as a system notification. Use
event.payload.message.isPrivate to distinguish private (viewer-only) messages
from customer-visible messages.
Payload: InteractionMessageReceivedPayload
Fired when the agent's own message has been accepted by the server.
Use event.payload.message.isPrivate to distinguish
private (viewer-only) messages from customer-visible messages. Useful for
confirming local sends and reconciling optimistic UI state.
Payload: InteractionMessageSentPayload
Fired when the current Elite supervisor viewer transitions into listen-talk mode
(barge active). The supervisor's voice is now audible to both the agent and the customer.
Payload: InteractionViewerBargeStartedPayload
Fired when the current Elite supervisor viewer transitions out of listen-talk mode
back to listen-only (barge ended). The supervisor's mic is silenced again.
Payload: InteractionViewerBargeEndedPayload
Fired when the current Elite supervisor viewer transitions into coach mode
(whisper coaching active). The supervisor's voice is audible only to the agent;
the customer cannot hear the supervisor.
Payload: InteractionViewerCoachStartedPayload
Fired when the current Elite supervisor viewer transitions out of coach mode
back to listen-only. The supervisor's mic is silenced again.
Payload: InteractionViewerCoachEndedPayload
The set of events that an Interaction can emit.
Use these with
Interaction.subscribe()to react to call state changes, transfer operations, conference actions, and viewer activity throughout the interaction lifecycle.Event lookup table
INTERACTION_ACCEPTEDINTERACTION_REJECTEDINTERACTION_CALL_DISCONNECTEDINTERACTION_WRAP_UPINTERACTION_WRAP_UP_EXTENDEDINTERACTION_COMPLETEDINTERACTION_NOTES_UPDATEDINTERACTION_SUBJECT_UPDATEDINTERACTION_CUSTOM_FIELDS_UPDATEDINTERACTION_CALL_MUTEDINTERACTION_CALL_UNMUTEDINTERACTION_CALL_HELDINTERACTION_CALL_RESUMEDINTERACTION_BLIND_TRANSFERREDINTERACTION_TRANSFERINTERACTION_TRANSFER_ANSWERINTERACTION_TRANSFER_CANCELINTERACTION_TRANSFER_FAILEDINTERACTION_TRANSFER_COMPLETEINTERACTION_CALL_ESTABLISHEDINTERACTION_CONFERENCEINTERACTION_CONFERENCE_COMPLETEINTERACTION_VIEWER_ADDEDINTERACTION_VIEWER_JOINED_CALLINTERACTION_VIEWER_REMOVEDINTERACTION_VIEWER_LEFT_CALLINTERACTION_VIEWER_BARGE_STARTEDINTERACTION_VIEWER_BARGE_ENDEDINTERACTION_VIEWER_COACH_STARTEDINTERACTION_VIEWER_COACH_ENDEDINTERACTION_CLASSIFICATION_UPDATEDINTERACTION_CUSTOMER_INFO_UPDATEDINTERACTION_CALL_FAILEDINTERACTION_OWNERSHIP_CHANGEDINTERACTION_MESSAGE_RECEIVEDINTERACTION_MESSAGE_SENTExample