[Freeswitch-users] Handling unavailble destinations

Grant Bagdasarian GB at cm.nl
Wed Jan 8 16:41:09 MSK 2014


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?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20140108/eef3ade7/attachment.html 


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