JSFiddle - React, Tailwind, and code Playground
JavaScript
var call1, call2, data, voicemail = false;
VoxEngine.addEventListener(AppEvents.Started, handleScenarioStart);
VoxEngine.addEventListener(AppEvents.HttpRequest, handleHttpRequest);
function handleHttpRequest(e) {
VoxEngine.terminate();
}
function handleScenarioStart(e) {
data = VoxEngine.customData();
data = data.split(":");
e.update = data[2];
var id = data[2];
call1 = VoxEngine.callPSTN(data[0],'78003334359');
// If we haven't detected voicemail yet start voicemail prompt detection algorithm
call1.addEventListener(CallEvents.Connected, function (e) {
callconnected = true; var id = data[2];
// Net.httpRequest("http://tophit.pro/testring.php?setstatus=Connected&id="+id, function(e1) {});
if (!voicemail) call1.detectVoicemailPrompt(3);
});
// Автоответчик детектед
call1.addEventListener(CallEvents.VoicemailPromptDetected, function (e) {
Logger.write("Voicemail prompt detected. Pattern: " + e.pattern);
voicemail = true;
call1.startPlayback("http://tophit.pro/Islam.top.31.07.15-3.mp3",false);
var opts = new Net.HttpRequestOptions();
opts.method = "POST";
opts.headers = ["User-Agent: VoxImplant","Accept: application/json, text/javascript, */*; q=0.01"];
opts.params = '';
opts.postData = '{"ops":[{"ref":"'+data[0]+'","type":"modify","obj":"task","conv_id":32051,"data":{"result":"voicemail","reason":"Автоответчик"}}]}';
var CallBackUrl = "https://www.corezoid.com/api/1/json/public/32051/ee7b9a7db1fee23aa4f1db1291dbee3bef17f864";
Net.httpRequest(CallBackUrl, function (res) { }, opts);
call1.addEventListener(CallEvents.PlaybackFinished, function(e1) { VoxEngine.terminate(); });
// Автоответчик
//Net.httpRequest("http://tophit.pro/testring.php?setstatus=67&id="+id,function(e1) { });
// need to re-launch detectVoicemailTone here if we need to find the tone
});
// Успешный дозвон
//
call1.addEventListener(CallEvents.VoicemailPromptNotDetected,...