IVR Bridged Call Dropping after 2 rings
Hi, I am trying to setup a very simple IVR using LUA. Call arrives from a DID SIP trunk and is answered and message is played ok, after a particular digit is pressed it bridges the call to an extension which is remotely connected. It works but after 2 rings the call to the extension is dropped with a SIP message "BYE" from DID provider. If I just route the call directly to the extension (no IVR) it works fine. It seems like the DID hangs up when the call is bridged to the extension. Have tried same thing using the XML IVR Engine and get exactly the same result. The IVR script is below pathsep = '/' session:setAutoHangup(false); session:answer() prompt = "ivr" .. pathsep .. "247talk.wav" invalid = "ivr" .. pathsep .. "ivr-that_was_an_invalid_entry.wav" freeswitch.consoleLog("INFO", "Prompt file is '" .. prompt .. "'\n") continue = true while( session:ready() == true and continue == true) do digits = session:playAndGetDigits(1,1,3,7000,"#", prompt, invalid, "\\d+") if (digits == "1") then continue = false session:execute("bridge","sofia/external/2476% 91.xxx.xx.xx") end if (digits == "2") then session:execute("bridge","sofia/external/2475% 91.xxx.xx.xx") end if (digits == "3") then continue = false session:execute("bridge","sofia/external/2475% 91.xxx.xx.xx") end end session:hangup() Any help with this greatly appreciated it is driving me nuts. regards, John Carpenter
I have spoken to my SIP trunk supplier and they say they have a timeout of 10 seconds on their system, so if no signalling or RTP media it disconnects. So question is now how can I get FS to send some signalling or RTP messages back to SIP trunk while my IVR is dialling an extension. regards, John Carpenter On Sat, 2011-01-22 at 01:57 +0000, John Carpenter wrote:
Hi, I am trying to setup a very simple IVR using LUA. Call arrives from a DID SIP trunk and is answered and message is played ok, after a particular digit is pressed it bridges the call to an extension which is remotely connected. It works but after 2 rings the call to the extension is dropped with a SIP message "BYE" from DID provider. If I just route the call directly to the extension (no IVR) it works fine. It seems like the DID hangs up when the call is bridged to the extension. Have tried same thing using the XML IVR Engine and get exactly the same result. The IVR script is below
pathsep = '/' session:setAutoHangup(false); session:answer() prompt = "ivr" .. pathsep .. "247talk.wav" invalid = "ivr" .. pathsep .. "ivr-that_was_an_invalid_entry.wav" freeswitch.consoleLog("INFO", "Prompt file is '" .. prompt .. "'\n") continue = true
while( session:ready() == true and continue == true) do digits = session:playAndGetDigits(1,1,3,7000,"#", prompt, invalid, "\\d+") if (digits == "1") then continue = false session:execute("bridge","sofia/external/2476% 91.xxx.xx.xx") end if (digits == "2") then session:execute("bridge","sofia/external/2475% 91.xxx.xx.xx") end if (digits == "3") then continue = false session:execute("bridge","sofia/external/2475% 91.xxx.xx.xx") end end
session:hangup()
Any help with this greatly appreciated it is driving me nuts.
regards, John Carpenter
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Can you pastebin a debug log with a siptrace? Also, pastebin your dialplan. I think we can help with this but I want to see what you're doing before I suggest anything. -MC On Fri, Jan 21, 2011 at 5:57 PM, John Carpenter <john@247-talk.co.uk> wrote:
Hi, I am trying to setup a very simple IVR using LUA. Call arrives from a DID SIP trunk and is answered and message is played ok, after a particular digit is pressed it bridges the call to an extension which is remotely connected. It works but after 2 rings the call to the extension is dropped with a SIP message "BYE" from DID provider. If I just route the call directly to the extension (no IVR) it works fine. It seems like the DID hangs up when the call is bridged to the extension. Have tried same thing using the XML IVR Engine and get exactly the same result. The IVR script is below
pathsep = '/' session:setAutoHangup(false); session:answer() prompt = "ivr" .. pathsep .. "247talk.wav" invalid = "ivr" .. pathsep .. "ivr-that_was_an_invalid_entry.wav" freeswitch.consoleLog("INFO", "Prompt file is '" .. prompt .. "'\n") continue = true
while( session:ready() == true and continue == true) do digits = session:playAndGetDigits(1,1,3,7000,"#", prompt, invalid, "\\d+") if (digits == "1") then continue = false
session:execute("bridge","sofia/external/2476%91.xxx.xx.xx") end if (digits == "2") then
session:execute("bridge","sofia/external/2475%91.xxx.xx.xx") end if (digits == "3") then continue = false
session:execute("bridge","sofia/external/2475%91.xxx.xx.xx") end end
session:hangup()
Any help with this greatly appreciated it is driving me nuts.
regards, John Carpenter
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi, I have now traced the problem down to the SIP tunk provider having a timeout of 10 seconds. If they receive no signalling or RTP for 10 seconds they drop the call. If I had known this earlier I would not have signed up with them but its too late now. So the question is how do I get FS to send RTP back to SIP trunk when a call is being bridged, it currently dies if extension not answered in 10 seconds. Have tried proxy_media and bypass_media without any success. My extensions are remote and using NAT. regards, John On Mon, 2011-01-24 at 12:28 -0800, Michael Collins wrote:
Can you pastebin a debug log with a siptrace? Also, pastebin your dialplan. I think we can help with this but I want to see what you're doing before I suggest anything.
-MC
On Fri, Jan 21, 2011 at 5:57 PM, John Carpenter <john@247-talk.co.uk> wrote:
Hi, I am trying to setup a very simple IVR using LUA. Call arrives from a DID SIP trunk and is answered and message is played ok, after a particular digit is pressed it bridges the call to an extension which is remotely connected. It works but after 2 rings the call to the extension is dropped with a SIP message "BYE" from DID provider. If I just route the call directly to the extension (no IVR) it works fine. It seems like the DID hangs up when the call is bridged to the extension. Have tried same thing using the XML IVR Engine and get exactly the same result. The IVR script is below
pathsep = '/' session:setAutoHangup(false); session:answer() prompt = "ivr" .. pathsep .. "247talk.wav" invalid = "ivr" .. pathsep .. "ivr-that_was_an_invalid_entry.wav" freeswitch.consoleLog("INFO", "Prompt file is '" .. prompt .. "'\n") continue = true
while( session:ready() == true and continue == true) do digits = session:playAndGetDigits(1,1,3,7000,"#", prompt, invalid, "\\d+") if (digits == "1") then continue = false session:execute("bridge","sofia/external/2476% 91.xxx.xx.xx") end if (digits == "2") then session:execute("bridge","sofia/external/2475% 91.xxx.xx.xx") end if (digits == "3") then continue = false session:execute("bridge","sofia/external/2475% 91.xxx.xx.xx") end end
session:hangup()
Any help with this greatly appreciated it is driving me nuts.
regards, John Carpenter
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Send an audio ringback to them. David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34 Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur. Le 25/01/2011 à 16:22, John Carpenter a écrit :
Hi, I have now traced the problem down to the SIP tunk provider having a timeout of 10 seconds. If they receive no signalling or RTP for 10 seconds they drop the call. If I had known this earlier I would not have signed up with them but its too late now. So the question is how do I get FS to send RTP back to SIP trunk when a call is being bridged, it currently dies if extension not answered in 10 seconds. Have tried proxy_media and bypass_media without any success. My extensions are remote and using NAT.
regards, John
On Mon, 2011-01-24 at 12:28 -0800, Michael Collins wrote:
Can you pastebin a debug log with a siptrace? Also, pastebin your dialplan. I think we can help with this but I want to see what you're doing before I suggest anything.
-MC
On Fri, Jan 21, 2011 at 5:57 PM, John Carpenter <john@247-talk.co.uk> wrote: Hi, I am trying to setup a very simple IVR using LUA. Call arrives from a DID SIP trunk and is answered and message is played ok, after a particular digit is pressed it bridges the call to an extension which is remotely connected. It works but after 2 rings the call to the extension is dropped with a SIP message "BYE" from DID provider. If I just route the call directly to the extension (no IVR) it works fine. It seems like the DID hangs up when the call is bridged to the extension. Have tried same thing using the XML IVR Engine and get exactly the same result. The IVR script is below
pathsep = '/' session:setAutoHangup(false); session:answer() prompt = "ivr" .. pathsep .. "247talk.wav" invalid = "ivr" .. pathsep .. "ivr-that_was_an_invalid_entry.wav" freeswitch.consoleLog("INFO", "Prompt file is '" .. prompt .. "'\n") continue = true
while( session:ready() == true and continue == true) do digits = session:playAndGetDigits(1,1,3,7000,"#", prompt, invalid, "\\d+") if (digits == "1") then continue = false session:execute("bridge","sofia/external/2476%91.xxx.xx.xx") end if (digits == "2") then session:execute("bridge","sofia/external/2475%91.xxx.xx.xx") end if (digits == "3") then continue = false session:execute("bridge","sofia/external/2475%91.xxx.xx.xx") end end
session:hangup()
Any help with this greatly appreciated it is driving me nuts.
regards, John Carpenter
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Thanks for all the suggestions, will not be able to test until tomorrow, will post results then regards, John On Tue, 2011-01-25 at 17:26 +0100, David Ponzone wrote:
Send an audio ringback to them.
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 25/01/2011 à 16:22, John Carpenter a écrit :
Hi, I have now traced the problem down to the SIP tunk provider having a timeout of 10 seconds. If they receive no signalling or RTP for 10 seconds they drop the call. If I had known this earlier I would not have signed up with them but its too late now. So the question is how do I get FS to send RTP back to SIP trunk when a call is being bridged, it currently dies if extension not answered in 10 seconds. Have tried proxy_media and bypass_media without any success. My extensions are remote and using NAT.
regards, John
On Mon, 2011-01-24 at 12:28 -0800, Michael Collins wrote:
Can you pastebin a debug log with a siptrace? Also, pastebin your dialplan. I think we can help with this but I want to see what you're doing before I suggest anything.
-MC
On Fri, Jan 21, 2011 at 5:57 PM, John Carpenter <john@247-talk.co.uk> wrote:
Hi, I am trying to setup a very simple IVR using LUA. Call arrives from a DID SIP trunk and is answered and message is played ok, after a particular digit is pressed it bridges the call to an extension which is remotely connected. It works but after 2 rings the call to the extension is dropped with a SIP message "BYE" from DID provider. If I just route the call directly to the extension (no IVR) it works fine. It seems like the DID hangs up when the call is bridged to the extension. Have tried same thing using the XML IVR Engine and get exactly the same result. The IVR script is below
pathsep = '/' session:setAutoHangup(false); session:answer() prompt = "ivr" .. pathsep .. "247talk.wav" invalid = "ivr" .. pathsep .. "ivr-that_was_an_invalid_entry.wav" freeswitch.consoleLog("INFO", "Prompt file is '" .. prompt .. "'\n") continue = true
while( session:ready() == true and continue == true) do digits = session:playAndGetDigits(1,1,3,7000,"#", prompt, invalid, "\\d+") if (digits == "1") then continue = false
session:execute("bridge","sofia/external/2476% 91.xxx.xx.xx") end if (digits == "2") then
session:execute("bridge","sofia/external/2475% 91.xxx.xx.xx") end if (digits == "3") then continue = false
session:execute("bridge","sofia/external/2475% 91.xxx.xx.xx") end end
session:hangup()
Any help with this greatly appreciated it is driving me nuts.
regards, John Carpenter
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
what's happen if you send comfort_noise ? ----- Original Message ----- From: John Carpenter To: FreeSWITCH Users Help Sent: Tuesday, January 25, 2011 10:22 AM Subject: Re: [Freeswitch-users] IVR Bridged Call Dropping after 2 rings Hi, I have now traced the problem down to the SIP tunk provider having a timeout of 10 seconds. If they receive no signalling or RTP for 10 seconds they drop the call. If I had known this earlier I would not have signed up with them but its too late now. So the question is how do I get FS to send RTP back to SIP trunk when a call is being bridged, it currently dies if extension not answered in 10 seconds. Have tried proxy_media and bypass_media without any success. My extensions are remote and using NAT. regards, John On Mon, 2011-01-24 at 12:28 -0800, Michael Collins wrote: Can you pastebin a debug log with a siptrace? Also, pastebin your dialplan. I think we can help with this but I want to see what you're doing before I suggest anything. -MC On Fri, Jan 21, 2011 at 5:57 PM, John Carpenter <john@247-talk.co.uk> wrote: Hi, I am trying to setup a very simple IVR using LUA. Call arrives from a DID SIP trunk and is answered and message is played ok, after a particular digit is pressed it bridges the call to an extension which is remotely connected. It works but after 2 rings the call to the extension is dropped with a SIP message "BYE" from DID provider. If I just route the call directly to the extension (no IVR) it works fine. It seems like the DID hangs up when the call is bridged to the extension. Have tried same thing using the XML IVR Engine and get exactly the same result. The IVR script is below pathsep = '/' session:setAutoHangup(false); session:answer() prompt = "ivr" .. pathsep .. "247talk.wav" invalid = "ivr" .. pathsep .. "ivr-that_was_an_invalid_entry.wav" freeswitch.consoleLog("INFO", "Prompt file is '" .. prompt .. "'\n") continue = true while( session:ready() == true and continue == true) do digits = session:playAndGetDigits(1,1,3,7000,"#", prompt, invalid, "\\d+") if (digits == "1") then continue = false session:execute("bridge","sofia/external/2476%91.xxx.xx.xx") end if (digits == "2") then session:execute("bridge","sofia/external/2475%91.xxx.xx.xx") end if (digits == "3") then continue = false session:execute("bridge","sofia/external/2475%91.xxx.xx.xx") end end session:hangup() Any help with this greatly appreciated it is driving me nuts. regards, John Carpenter _______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ------------------------------------------------------------------------------ _______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Do they absolutely require RTP? If so then add a "pre_answer" app to your dialplan before you bridge to your local endpoint. See http://wiki.freeswitch.org/wiki/Misc._Dialplan_Tools_pre_answer for more information. -MC On Tue, Jan 25, 2011 at 7:22 AM, John Carpenter <john@247-talk.co.uk> wrote:
Hi, I have now traced the problem down to the SIP tunk provider having a timeout of 10 seconds. If they receive no signalling or RTP for 10 seconds they drop the call. If I had known this earlier I would not have signed up with them but its too late now. So the question is how do I get FS to send RTP back to SIP trunk when a call is being bridged, it currently dies if extension not answered in 10 seconds. Have tried proxy_media and bypass_media without any success. My extensions are remote and using NAT.
regards, John
On Mon, 2011-01-24 at 12:28 -0800, Michael Collins wrote:
Can you pastebin a debug log with a siptrace? Also, pastebin your dialplan. I think we can help with this but I want to see what you're doing before I suggest anything.
-MC
On Fri, Jan 21, 2011 at 5:57 PM, John Carpenter <john@247-talk.co.uk> wrote:
Hi, I am trying to setup a very simple IVR using LUA. Call arrives from a DID SIP trunk and is answered and message is played ok, after a particular digit is pressed it bridges the call to an extension which is remotely connected. It works but after 2 rings the call to the extension is dropped with a SIP message "BYE" from DID provider. If I just route the call directly to the extension (no IVR) it works fine. It seems like the DID hangs up when the call is bridged to the extension. Have tried same thing using the XML IVR Engine and get exactly the same result. The IVR script is below
pathsep = '/' session:setAutoHangup(false); session:answer() prompt = "ivr" .. pathsep .. "247talk.wav" invalid = "ivr" .. pathsep .. "ivr-that_was_an_invalid_entry.wav" freeswitch.consoleLog("INFO", "Prompt file is '" .. prompt .. "'\n") continue = true
while( session:ready() == true and continue == true) do digits = session:playAndGetDigits(1,1,3,7000,"#", prompt, invalid, "\\d+") if (digits == "1") then continue = false
session:execute("bridge","sofia/external/2476%91.xxx.xx.xx") end if (digits == "2") then
session:execute("bridge","sofia/external/2475%91.xxx.xx.xx") end if (digits == "3") then continue = false
session:execute("bridge","sofia/external/2475%91.xxx.xx.xx") end end
session:hangup()
Any help with this greatly appreciated it is driving me nuts.
regards, John Carpenter
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing listFreeSWITCH-users@lists.freeswitch.orghttp://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-usershttp://www.frees...
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
participants (4)
-
David Ponzone
-
John Carpenter
-
Madovsky
-
Michael Collins