*** id: f5a76d81-035c-4281-addb-f4e5cd32e02a title: Events slug: /node/reference/voice/call/events description: Events available on the Call class. max-toc-depth: 3 ---------------- [call]: # [callcollect]: /docs/server-sdk/v4/node/reference/voice/call-collect [calldetect]: /docs/server-sdk/v4/node/reference/voice/call-detect [callplayback]: /docs/server-sdk/v4/node/reference/voice/call-playback [callprompt]: /docs/server-sdk/v4/node/reference/voice/call-prompt [callrecording]: /docs/server-sdk/v4/node/reference/voice/call-recording [callstate]: /docs/server-sdk/v4/node/reference/voice/call-state [calltap]: /docs/server-sdk/v4/node/reference/voice/call-tap ## Events ### onStateChanged * **Call.listen**(`{ onStateChanged: Callback }`) Emitted when the state of the call changes. Your event handler will be called with an instance of the [`CallState`][callstate] object. #### Parameters A [`Call`][call] object containing the call state. See [`CallState`][callstate]. ### onCollectEnded * **Call.listen**(`{ onCollectEnded: Callback }`) Emitted when a collect session has ended. Your event handler will be called with an instance of the [`CallCollect`][callcollect] object. #### Parameters A [`CallCollect`][callcollect] object. ### onCollectFailed * **Call.listen**(`{ onCollectFailed: Callback }`) Emitted when a collect session has failed. Your event handler will be called with an instance of the [`CallCollect`][callcollect] object. #### Parameters A [`CallCollect`][callcollect] object. ### onCollectInputStarted \[#voice\_call\_oncollectinputstarted] * **Call.listen**(`{ onCollectInputStarted: Callback }`) Emitted when a collect session has started. Your event handler will be called with an instance of the [`CallCollect`][callcollect] object. #### Parameters A [`CallCollect`][callcollect] object. ### onCollectStarted * **Call.listen**(`{ onCollectStarted: Callback }`) Emitted when a collect session has started. Your event handler will be called with an instance of the [`CallCollect`][callcollect] object. #### Parameters A [`CallCollect`][callcollect] object. ### onCollectUpdated * **Call.listen**(`{ onCollectUpdated: Callback }`) Emitted when the state of a collect session has changed. Your event handler will be called with an instance of the [`CallCollect`][callcollect] object. #### Parameters A [`CallCollect`][callcollect] object. ### onDetectEnded * **Call.listen**(`{ onDetectEnded: Callback }`) Emitted when a call detection session has ended. Your event handler will be called with an instance of the [`CallDetect`][calldetect] object. #### Parameters A [`CallDetect`][calldetect] object. ### onDetectStarted * **Call.listen**(`{ onDetectStarted: Callback }`) Emitted when a call detection session has started. Your event handler will be called with an instance of the [`CallDetect`][calldetect] object. #### Parameters A [`CallDetect`][calldetect] object. ### onDetectUpdated * **Call.listen**(`{ onDetectUpdated: Callback }`) Emitted when the state of a call detection session has changed. Your event handler will be called with an instance of the [`CallDetect`][calldetect] object. #### Parameters A [`CallDetect`][calldetect] object. ### onPlaybackEnded * **Call.listen**(`{ onPlaybackEnded: Callback }`) Emitted when a playback has ended. Your event handler will be called with an instance of the [`CallPlayback`][callplayback] object. #### Parameters A [`CallPlayback`][callplayback] object. ### onPlaybackFailed • **Call.listen**(`{ onPlaybackFailed: Callback }`) Emitted when a playback has failed. Your event handler will be called with an instance of the [`CallPlayback`][callplayback] object. #### Parameters A [`CallPlayback`][callplayback] object. ### onPlaybackStarted * **Call.listen**(`{ onPlaybackStarted: Callback }`) Emitted when a playback has started. Your event handler will be called with an instance of the [`CallPlayback`][callplayback] object. #### Parameters A [`CallPlayback`][callplayback] object. ### onPlaybackUpdated * **Call.listen**(`{ onPlaybackUpdated: Callback }`) Emitted when the state of a playback has changed. Your event handler will be called with an instance of the [`CallPlayback`][callplayback] object. #### Parameters A [`CallPlayback`][callplayback] object. ### onPromptEnded * **Call.listen**(`{ onPromptEnded: Callback }`) Emitted when a prompt has ended. Your event handler will be called with an instance of the [`CallPrompt`][callprompt] object. #### Parameters A [`CallPrompt`][callprompt] object. ### onPromptFailed * **Call.listen**(`{ onPromptFailed: Callback }`) Emitted when a prompt has failed. Your event handler will be called with an instance of the [`CallPrompt`][callprompt] object. #### Parameters A [`CallPrompt`][callprompt] object. ### onPromptStarted * **Call.listen**(`{ onPromptStarted: Callback }`) Emitted when a prompt has started. Your event handler will be called with an instance of the [`CallPrompt`][callprompt] object. #### Parameters A [`CallPrompt`][callprompt] object. ### onPromptUpdated * **Call.listen**(`{ onPromptUpdated: Callback }`) Emitted when the state of a prompt has changed. Your event handler will be called with an instance of the [`CallPrompt`][callprompt] object. #### Parameters A [`CallPrompt`][callprompt] object. ### onRecordingEnded * **Call.listen**(`{ onRecordingEnded: Callback }`) Emitted when a recording has ended. Your event handler will be called with an instance of the [`CallRecording`][callrecording] object. #### Parameters A [`CallRecording`][callrecording] object. ### onRecordingFailed * **Call.listen**( `{ onRecordingFailed: Callback }`) Emitted when a recording has failed. Your event handler will be called with an instance of the [`CallRecording`][callrecording] object. #### Parameters A [`CallRecording`][callrecording] object. ### onRecordingStarted * **Call.listen**(`{ onRecordingStarted: Callback }`) Emitted when a recording has started. Your event handler will be called with an instance of the [`CallRecording`][callrecording] object. #### Parameters A [`CallRecording`][callrecording] object. ### onRecordingUpdated * **Call.listen**(`{ onRecordingUpdated: Callback }`) Emitted when the state of a recording has changed. Your event handler will be called with an instance of the [`CallRecording`][callrecording] object. #### Parameters A [`CallRecording`][callrecording] object. ### onTapEnded * **Call.listen**(`{ onTapEnded: Callback }`) Emitted when a tap has ended. Your event handler will be called with an instance of the [`CallTap`][calltap] object. #### Parameters A [`CallTap`][calltap] object. ### onTapStarted * **Call.listen**(`{ onTapStarted: Callback }`) Emitted when a tap has started. Your event handler will be called with an instance of the [`CallTap`][calltap] object. #### Parameters A [`CallTap`][calltap] object.