If I originate an outgoing call from FreeSwitch and want to tts a phrase or play an audio once the call has been answered (i.e, someone answered their cell phone or I got their voicemail) then how do I detect that. Otherwise, I've tried the following but it relies in getting the timing right which won't always work or looping the tts phrase over and over. var s; while (tryCalling()) {} s.hangup(); exit(); function tryCalling() { ??? s = new Session("sofia/gateway/spa3102/12223334444@10.0.0.5:5061"); ??? s.waitForAnswer(10000); ??? ??? if (s.cause == "USER_BUSY") { ??? ?? ?return true; ??? } ??? if (s.ready()) { ??? ?? ?s.sleep(10000); ??? ?? ?s.speak("cepstral","Callie","Hello from FreeSwitch"); ??? } ??? return false; } Another way is to keep replaying the tts phrase by replacing ? if (s.ready()) { ??? ?? ?s.sleep(10000); ??? ?? ?s.speak("cepstral","Callie","Hello from FreeSwitch"); ??? } with something like: while (s.ready()) { ??? ?? ?s.speak("cepstral","Callie","Hello from FreeSwitch"); ??? } Thanks. Mark.