Calling Multiple Destinations with Failover
Hi there, I am trying to implement a scenario where I can terminate calls to multiple destinations AND have termination carrier fail over. Currently I can see how to do one or the other. But not both. Multiple destinations is easy: <action application="bridge" data="sofia/SIP_PROVIDER_1/6095551234,sofia/SIP_PROVIDER_1/7325551234"/> Failover appears to use the same mechanism: <action application="bridge" data="sofia/gateway/primary/blah|sofia/gateway/secondary/blah"/> I can not get my head around how use these together, such that: - 6095551234 is dialed through SIP_PROVIDER_1 - if NO_ROUTE_DESTINATION then dial 6095551234 through SIP_PROVIDER_2 - Called party does not answer 7325551234 is dialed through SIP_PROVIDER_1 - if NO_ROUTE_DESTINATION then dial 7325551234 through SIP_PROVIDER_2 - Called party answers This must be a fairly common requirement so any ideas on what I might be missing would be very welcome. Thanks Phillip Jones
While any use of loopback can be considered abuse, that is how I solve this issue. I use loopback for each dialed # and then in the dialplan use mod_lcr to build a dialstring that does failover in order of cost. So: <action application="bridge" data="sofia/SIP_PROVIDER_1/6095551234,sofia/SIP_PROVIDER_1/7325551234"/> becomes <action application="bridge" data="loopback/6095551234,loopback/7325551234"/> In the dialplan you then match on those (just regular 10digit dialing) and do your normal failover dialstring. Again, I do this with mod_lcr but that isn't necessary. <action application="bridge" data="sofia/gw1/$1|sofia/gw2/$2..."/> On Sat, Aug 8, 2009 at 5:59 AM, Phillip Jones <pjintheusa@gmail.com> wrote:
Hi there,
I am trying to implement a scenario where I can terminate calls to multiple destinations AND have termination carrier fail over. Currently I can see how to do one or the other. But not both.
Multiple destinations is easy:
<action application="bridge" data="sofia/SIP_PROVIDER_1/6095551234,sofia/SIP_PROVIDER_1/7325551234"/>
Failover appears to use the same mechanism:
<action application="bridge" data="sofia/gateway/primary/blah|sofia/gateway/secondary/blah"/>
I can not get my head around how use these together, such that:
- 6095551234 is dialed through SIP_PROVIDER_1 - if NO_ROUTE_DESTINATION then dial 6095551234 through SIP_PROVIDER_2 - Called party does not answer 7325551234 is dialed through SIP_PROVIDER_1 - if NO_ROUTE_DESTINATION then dial 7325551234 through SIP_PROVIDER_2 - Called party answers
This must be a fairly common requirement so any ideas on what I might be missing would be very welcome.
Thanks
Phillip Jones
_______________________________________________ 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
-- -Rupa
Thanks very much for that - very help. Why would loopback be considered "abuse"? What would be the downsides of doing this? On Sat, Aug 8, 2009 at 7:18 AM, Rupa Schomaker<rupa@rupa.com> wrote:
On Sat, Aug 8, 2009 at 9:16 AM, Rupa Schomaker <rupa@rupa.com> wrote:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$2..."/>
That of course, should be:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$1..."/> -- -Rupa
_______________________________________________ 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
loopback ends up using extra threads which we are only able to drop later in certain situations so it will decrease your total amount of calls you can do if your not careful with them. Mike On Aug 8, 2009, at 1:44 PM, Phillip Jones wrote:
Thanks very much for that - very help.
Why would loopback be considered "abuse"? What would be the downsides of doing this?
On Sat, Aug 8, 2009 at 7:18 AM, Rupa Schomaker<rupa@rupa.com> wrote:
On Sat, Aug 8, 2009 at 9:16 AM, Rupa Schomaker <rupa@rupa.com> wrote:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$2..."/>
That of course, should be:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$1..."/> -- -Rupa
_______________________________________________ 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
Mike/Rupa , Thanks for your help on this. So I am correct that summarizing that FreeSWITCH does not really support fail over and multiple call destinations because the same mechanism is used to achieve both? And that loopback as a solution is possible but not recommended? Is there any other solution to this? Perhaps a second FS box in the mix? Phil On Sat, Aug 8, 2009 at 1:00 PM, Michael Jerris<mike@jerris.com> wrote:
loopback ends up using extra threads which we are only able to drop later in certain situations so it will decrease your total amount of calls you can do if your not careful with them.
Mike
On Aug 8, 2009, at 1:44 PM, Phillip Jones wrote:
Thanks very much for that - very help.
Why would loopback be considered "abuse"? What would be the downsides of doing this?
On Sat, Aug 8, 2009 at 7:18 AM, Rupa Schomaker<rupa@rupa.com> wrote:
On Sat, Aug 8, 2009 at 9:16 AM, Rupa Schomaker <rupa@rupa.com> wrote:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$2..."/>
That of course, should be:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$1..."/> -- -Rupa
_______________________________________________ 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
I think that summary is totally wrong. Loopback should be used here, and this should work to do what you want, just be aware of what that means. Mike On Aug 8, 2009, at 4:24 PM, Phillip Jones wrote:
Mike/Rupa ,
Thanks for your help on this. So I am correct that summarizing that FreeSWITCH does not really support fail over and multiple call destinations because the same mechanism is used to achieve both? And that loopback as a solution is possible but not recommended?
Is there any other solution to this? Perhaps a second FS box in the mix?
Phil
On Sat, Aug 8, 2009 at 1:00 PM, Michael Jerris<mike@jerris.com> wrote:
loopback ends up using extra threads which we are only able to drop later in certain situations so it will decrease your total amount of calls you can do if your not careful with them.
Mike
On Aug 8, 2009, at 1:44 PM, Phillip Jones wrote:
Thanks very much for that - very help.
Why would loopback be considered "abuse"? What would be the downsides of doing this?
On Sat, Aug 8, 2009 at 7:18 AM, Rupa Schomaker<rupa@rupa.com> wrote:
On Sat, Aug 8, 2009 at 9:16 AM, Rupa Schomaker <rupa@rupa.com> wrote:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$2..."/>
That of course, should be:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$1..."/> -- -Rupa
Ok - that's great. I will build this out - thanks both for your help on this. Much appreciated. On Sat, Aug 8, 2009 at 1:32 PM, Michael Jerris<mike@jerris.com> wrote:
I think that summary is totally wrong. Loopback should be used here, and this should work to do what you want, just be aware of what that means.
Mike
On Aug 8, 2009, at 4:24 PM, Phillip Jones wrote:
Mike/Rupa ,
Thanks for your help on this. So I am correct that summarizing that FreeSWITCH does not really support fail over and multiple call destinations because the same mechanism is used to achieve both? And that loopback as a solution is possible but not recommended?
Is there any other solution to this? Perhaps a second FS box in the mix?
Phil
On Sat, Aug 8, 2009 at 1:00 PM, Michael Jerris<mike@jerris.com> wrote:
loopback ends up using extra threads which we are only able to drop later in certain situations so it will decrease your total amount of calls you can do if your not careful with them.
Mike
On Aug 8, 2009, at 1:44 PM, Phillip Jones wrote:
Thanks very much for that - very help.
Why would loopback be considered "abuse"? What would be the downsides of doing this?
On Sat, Aug 8, 2009 at 7:18 AM, Rupa Schomaker<rupa@rupa.com> wrote:
On Sat, Aug 8, 2009 at 9:16 AM, Rupa Schomaker <rupa@rupa.com> wrote:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$2..."/>
That of course, should be:
<action application="bridge" data="sofia/gw1/$1|sofia/gw2/$1..."/> -- -Rupa
_______________________________________________ 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 (3)
-
Michael Jerris
-
Phillip Jones
-
Rupa Schomaker