Voicemail and beep detection
Voximplant enables developers to detect voicemail using the answering machine detection module. Additionally, you can detect beeps with a specified frequency.
Contents
Voicemail and answering machine detection
This feature employs artificial intelligence to discern whether you are speaking to a live person, a pre-recorded voicemail prompt, or a conversational AI robot during an outgoing call. Depending on the outcome, it adapts its behavior, such as playing a pre-recorded message and leaving it in the voicemail inbox.
Voicemail detection, a machine learning-based technology, continuously improves, resulting in enhanced service over time.
Currently, the voicemail detection feature is available for the following countries: Brazil, Colombia, Kazakhstan, Mexico, and Russia. If your country is not on the list, and you need the voicemail/answering machine detection feature, please contact support.
As an example, let us call a phone number, and if AMD detects a voicemail, play an MP3 message into the inbox.
Voicemail detection works for any type of call, including SIP calls. Use it the same way as calling phone numbers.
*Alternatively, instead of creating an AMD instance first and then passing it as a parameter to the call, you can create an AMD instance within the call itself. There are two methods for doing this: event-based and async-await. Here is an example of the event-based approach:
Here is the async-await scenario example of creating an AMD instance within a call:
Beep detection
The beep detector functionality in VoxEngine scenarios allows developers to detect beeps with a specified frequency.
To detect beeps, use the following methods:
enableBeepDetection({frequencies, timeout}) — enables beep detection for the current call. Accepts an object with two parameters: -
frequencies— an array of frequencies. -timeout— a timeout to detect beeps in milliseconds.disableBeepDetection() — disables beep detection for the current call.
The following events help you to process the received frequencies:
BeepDetectionComplete — triggered after a beep detection occurred. The event object contains two parameters: -
frequencies— an array of detected frequencies, at least one. -timeout— whether the detection timeout is reached, boolean. This parameter is undefined if the beep is detected successfully, true if the timeout is reached, and false if beep detection is disabled.BeepDetectionError — triggered after a beep detection fails with an error. The event object contains one parameter: reason.
Here is the complete scenario example on how to use these methods and events: