[Freeswitch-users] Scripts (v8/js)
Rick Jarvis
rick at magicmail.mooo.com
Thu Aug 24 15:39:52 UTC 2017
Hello all
We’re using scripts now, in particular with the v8 engine. So far so good, but a couple of questions I’m hoping someone can answer:
1. How do we terminate the script early? I’ve tried ‘return;’ but that doesn’t seem to do it?
2. What’s the best way to invoke a delay? ...see the second part of the script below, the standard js ways of waiting generate syntax errors, and using ‘session.execute’ with sleep isn’t fixing it… the problem we’re getting is that either the outgoing message is part of the way through by the time it connects, or if the call is going to a person, it’s possible to answer the call before the audio has established (this might be two separate issues though I guess)...
re = session.destination.match(/^555555555$/);
if(re) {
if(office_open) {
session.setVariable("call_timeout", 8);
session.setVariable("hangup_after_bridge", true);
session.setVariable("continue_on_fail", true);
session.execute("export", "alert_info=Bellcore-dr4");
session.execute("db", "insert/call_pickup_uuid/201/" + session.uuid);
session.answer();
session.streamFile(“custom/open.wav");
session.execute("bridge", "user/201@" + domain);
session.setVariable("call_timeout", 30);
session.execute("bridge", "group/mainq@" + domain);
} else {
session.answer();
await sleep(1000); // tried this
setTimeout(function() { // and this
session.streamFile(“custom/closed.wav”); // but this has already started
session.setVariable("skip_greeting", true);
session.setVariable("skip_instructions", true);
session.execute("voicemail", "default " + domain + " 201");
}, 1000);
}
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20170824/6857f969/attachment-0001.html>
More information about the FreeSWITCH-users
mailing list