📜 ⬆️ ⬇️

Defining voice mail when calling

It is no secret that the majority of modern mobile operators send a call to voice mail in some cases, which can be very different depending on the approach to this issue of the operator itself, as well as user settings. There is nothing wrong with this function, but it can interfere with the implementation of a number of telephone scenarios, when it is important to connect the operator with a person, and not send him to communicate with voice mail. First, it can lead to additional costs for telephony, as well as wasting the time of operators, which also leads to unnecessary financial costs. When developing the VoxImplant platform, we proceeded from the fact that some of the customers would like to make a call center at its base and this problem will be relevant for them, so we decided to explore what ways to deal with this problem and what difficulties may arise. We began by studying the voice mail behavior of our Big Three operators (MTS, Beeline, Megafon).

Megaphone


We started with Megaphone, everything turned out to be more or less simple, the voice mail is triggered in the pre-answer state (from the alarm point of view) and there is a characteristic sound signal before recording. To determine the sound signal, the Goertzel algorithm was used. After the algorithm was implemented and tested, the megaphone voice mail began to be determined quite well, though after a while, Megaphone for some reason changed the signal frequency and had to tune the determinant again.

Mts


At MTS, voice mail is turned on and off in the service control panel. If voice mail is turned on, the greeting will lose after picking up the handset (in terms of signaling), which makes the definition of this case less useful, since the money will still start to be spent. That is conceptually
')

Beeline


With Beeline, the situation is similar to that of the MTS, first the phone is picked up, and then the voice mail greeting is played.

What can be done in a situation where voice mail picks up the phone? Well, firstly, you can focus on beeps, in the case of voice mail, the handset rises instantly, while a normal person answers for a while and during this time beeps, but there are some nuances here too - today all operators offer paid service "melody instead of beeps". If you determine the beeps and their duration by the nature of the sound signal, then in the case when there will be music instead of beeps, this is already a completely non-trivial option. In addition, when the caller beats the call, he can also go to voice mail, in this case the voice mail will also be beeps. It is the variety of options that makes it very difficult or almost impossible to determine if you get voice mail in 100% of cases.

Thanks to one incident, it turned out that actually sending a call to voice mail was accompanied by a certain signaling (SIP 181 Call is Being Forwarded), but unfortunately, if you are not directly with operators, but through some transit operator, then Probably 99% of this alarm you do not prokinut.

From the point of view of the VoxEngine script, the definition of voice mail now looks like this:
//       ,       Voximplant var call = VoxEngine.callPSTN(phone_number, "+1234567890"); call.detectProgressTone(true); call.addEventListener(CallEvents.ToneDetected, function(e) { if (e.VoicemailTone && !e.ProgressTone) { //     } }); 

Source: https://habr.com/ru/post/248735/


All Articles