CallEvents
Constants
AudioIdentificationError
Triggers when voicemail detection occurs an error.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
AudioIdentificationStarted
Triggers when voicemail detection system connects to the VMD/AMD server and starts detecting voicemail.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
AudioIdentificationStopped
Triggers when voicemail detection stops detecting voicemail.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
AudioQualityDetected
Triggers after the audio quality detected.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
quality:
The audio quality.
AudioStarted
Triggers after remote peer answered the call or set the call into the Call.startEarlyMedia state. Note that event is not triggered in P2P mode.
Parameters
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
BeepDetectionComplete
Triggers after the beep detection is complete. The beep detection may be started by the Call.enableBeepDetection method.
Parameters
call:
Call that triggered the event
frequencies:
number[]
OptionalArray of frequencies detected during the beep detection in Hz.
id:
string
The call's ID
name:
string
The name of the event
timeout:
false
OptionalWhether the timeout occurred during beep detection.
BeepDetectionError
Error during beep detection.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
reason:
string
Beep detection failure reason.
BlindTransferRequested
Triggered when blind transfers are enabled by Call.handleBlindTransfer.
Parameters
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
transferTo:
string
Username
Connected
Triggers after an incoming/outgoing call is connected. For incoming call, it happens after the Call.answer is called. For outgoing call, it happens when a remote peer answers the call.
Parameters
call:
Call that triggered the event
customData:
string
OptionalOptional. Custom data that was passed from the client with call accept command
headers:
{[header: string]: string}
Optional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
Disconnected
Triggered when a call is terminated. Most frequent status codes (returned when a call is terminated before being answered):
| Code | Description |
|---|---|
| 408 | Call is not answered within 60 seconds |
| 603 | Call is rejected |
| 486 | Destination number is busy |
| 487 | Request terminated |
You can find the complete list of rfc3261 response codes on Wikipedia.
Note that this event does not mean the end of the JavaScript session. The session without calls and/or ACD requests are automatically terminated after some time (see the session limits for details). It is a good idea to explicitly terminate the session with VoxEngine.terminate after it is no longer needed.
Parameters
call:
Call that triggered the event
cost:
number
Call cost in account currency
direction:
string
Call direction type according to billing
duration:
number
Total call duration in seconds
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
internalCode:
number
Status code of the call (i.e., 486)
name:
string
The name of the event
reason:
string
Reason of the call failure
Failed
Triggered when an outgoing call is terminated before connection.
Most frequent status codes:
| Code | Description |
|---|---|
| 486 | Destination number is busy |
| 487 | Request terminated |
| 404 | Invalid number |
| 480 | Destination number is unavailable |
| 402 | Insufficient funds |
| 603 | Call was rejected |
| 408 | Call was not answered within 60 seconds |
Parameters
call:
Call that triggered the event
code:
number
Status code of the call (i.e., 486)
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
reason:
string
Status message of call failure
FirstAudioPacketReceived
Triggers after the first audio packet is received.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
FirstVideoPacketReceived
Triggers after the first video packet is received.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
Forwarding
Triggers on an incoming/outgoing call forwarding.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
InfoReceived
Triggered when an INFO message is received.
Parameters
body:
string
Content of the message
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
mimeType:
string
MIME type of INFO message
name:
string
The name of the event
MessageReceived
Triggered when a text message is received.
Parameters
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
text:
string
Content of the message
MicStatusChange
Triggers each time when microphone status changes. There is the method for enabling status analyzing - Call.handleMicStatus.
Parameters
active:
boolean
Whether the microphone is active
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
OffHold
Triggered when a call is taken off hold.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
OnHold
Triggered when a call is put on hold.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
PlaybackFinished
Triggered when the audio/voice playback is completed. Note that the Call.stopPlayback method finishes any media**, so the CallEvents.PlaybackFinished event is not triggered. The playback may be started by the Call.say or Call.startPlayback methods.
Parameters
call:
Call that triggered the event
error:
string
OptionalOptional. Error that occurred during the playback
id:
string
The call's ID
name:
string
The name of the event
PlaybackReady
Triggers by the Call.startPlayback and Call.say methods when:
1) the audio file download to the Voximplant cache is finished;
2) the audio file is found in the cache (i.e., it is in the cache before).
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
PlaybackStarted
Triggers by the Call.startPlayback and Call.say methods when audio/voice playback is started.
Parameters
call:
Call that triggered the event
duration:
number
Playback duration
id:
string
The call's ID
name:
string
The name of the event
PushSent
Triggered when a push notification is sent.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
result:
string
ReInviteAccepted
Triggered when the Voximplant cloud receives the ReInviteAccepted message. This message means that a call received video from the other participant.
Parameters
body:
string
Content of the message
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
mimeType:
string
MIME type of INFO message
name:
string
The name of the event
ReInviteReceived
Triggered when the Voximplant cloud receives the ReInviteReceived message. This message means that a caller:
1) started sending video;
2) started/stopped screensharing;
3) put a call on hold / took a call off hold.
Parameters
body:
string
Content of the message
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
mimeType:
string
MIME type of INFO message
name:
string
The name of the event
ReInviteRejected
Triggered when the Voximplant cloud receives the ReInviteRejected message. This message means that a call does not receive video from the other participant.
Parameters
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
RecordError
Triggers in case of errors during the recording process.
Parameters
call:
Call that triggered the event
error:
string
Triggers in case of errors during the recording process
id:
string
The call's ID
name:
string
The name of the event
RecordStarted
Triggered when call recording is started. The recording may be started by the Call.record method.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
url:
string
Link to the record file.
RecordStopped
Triggered when call recording is stopped. This happens after the CallEvents.Disconnected event is triggered.
Parameters
call:
Call that triggered the event
cost:
string
Record cost (in the account's currency: USD, EUR or RUB)
duration:
number
Record duration (sec)
id:
string
The call's ID
name:
string
The name of the event
url:
string
Link to the record file.
Ringing
Triggers after outgoing call receives progress signal from a remote peer.
Parameters
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
RtpResumed
Triggers after the RTP resumed.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
RtpStopped
Triggers within 7 seconds after the RTP/RTCP has stopped. Applies to all types of calls (users, SIP, and PSTN).
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
StateChanged
Triggered when a call status is changed.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
newState:
string
oldState:
string
Statistics
Triggered when call statistic changed.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
ToneDetected
Triggered when a call dial tone is detected (either dial tone or busy tone).
There is the deprecated method for enabling the tone detection - 'Call.detectProgressTone'. Note that:
1) triggers only if the CallEvents.Connected event is triggered;
2) the event is only triggered once in a call session.
Parameters
ProgressTone:
boolean
Whether the detected tone is a dial tone.
VoicemailTone:
boolean
Whether the detected tone is a voicemail tone.
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
ToneReceived
Triggered when a DTMF signal is received. Note that by default DTMF signals do not trigger this event, this behavior needs to be set explicitly via the Call.handleTones method.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
tone:
string
Tone received in this event. The possible values are: 0-9,*,#
type:
string
Type of the received tone. The possible values are: 1 (rfc 2833), 2 (Inband), 3 (SipInfo)
TransferComplete
Triggered when a call transfer is complete.
Parameters
call:
Call that triggered the event
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
role:
transferor
OptionalOptional. The transfer roles.
TransferFailed
Triggered when a call transfer is failed.
Parameters
call:
Call that triggered the event
code:
number
Failed transfer's status (e.g., 486)
headers:
{[header: string]: string}
OptionalOptional. SIP headers received with the message (the ones starting with "X-")
id:
string
The call's ID
name:
string
The name of the event
reason:
string
Failed transfer's status message
role:
transferor
OptionalOptional. The transfer roles.
VideoTrackCreated
Triggers after the video track is created. This could happen only if the Call.record method with {video: true} parameters is called.
Parameters
call:
Call that triggered the event
id:
string
The call's ID
name:
string
The name of the event
url:
string
Record URL