[Freeswitch-users] Handling unavailble destinations

Stanislav Sinyagin ssinyagin at yahoo.com
Wed Jan 8 18:12:14 MSK 2014


Grant,

Kamalilio Dispatcher module is able to ping its destinations, so in theory it should not even try to send INVITE to a destination which is unavailable.

Also if both destinations are offline, Kamailio should return a failure code immediately, so that SBC sends the failure response right away.

If you collect the SIP packet capture, most probably your SBC is already sending 100 Trying response back to the carrier. If it does not, then it probably didn't receive it from Kamailio, so you need to tune kamailio again.

I hope this helps.






________________________________
 From: Grant Bagdasarian <GB at cm.nl>
To: "FreeSWITCH Users Help (freeswitch-users at lists.freeswitch.org)" <freeswitch-users at lists.freeswitch.org> 
Sent: Wednesday, January 8, 2014 2:41 PM
Subject: [Freeswitch-users] Handling unavailble destinations
 


Hello,
 
Consider the following scenario:
 
Carrier ------------ SBC1 ------------ PROXY1 ------------ DESTINATION1/DESTINATION2
 
The carrier sends an incoming call to our SBC (SBC1).
The SBC bridges the incoming leg with an outgoing leg towards the Proxy (PROXY1). But it does not answer the incoming leg, it stays in an early state until the call is answered down the road.
The Proxy(Kamailio) tries to contact DESTINATION1 OR DESTINATION2 by distributing the traffic round-robin style.
 
Let’s say the first destination is not available. The proxy will then try to contact Destination2 after its timeout triggers. This works fine.
Our carrier has its own timeout. If we don’t connect the call in time, they cancel the current request and send a new one to the fallback IP. 
 
What I want is the following: have the SBC1 tell the carrier for the incoming leg that we are trying to connect the call by perhaps sending provisional messages every X interval.
And have the proxy control which destination is available. If both destinations are unavailable, the proxy should respond with a failure message which is sent back to the incoming leg by the SBC.
 
Normally if a destination is available I use  <action application="set" data="bridge_early_media=true" /> to send the provisional messages from the outgoing leg back to the incoming leg. 
But when the destination is not available, no responses received, the carrier cancels the call when their timeout occurs. 
 
Am I making any sense? Is it possible to accomplish this?
_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting at freeswitch.org
http://www.freeswitchsolutions.com




Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20140108/09408780/attachment-0001.html 


Join us at ClueCon 2013 Aug 6-8, 2013
More information about the FreeSWITCH-users mailing list