[asterisk-users] PRI failover to SIP trunk
Dave Fullerton
dfullertasterisk at shorelinecontainer.com
Fri Jul 10 10:40:25 CDT 2009
Steve Totaro wrote:
> On Fri, Jul 10, 2009 at 10:45 AM, Dave Fullerton <
> dfullertasterisk at shorelinecontainer.com> wrote:
>
>> Tzafrir Cohen wrote:
>>> On Thu, Jul 09, 2009 at 05:31:18PM -0400, Steve Totaro wrote:
>>>
>>> You have a small typo:
>>>
>>>> exten => _.,1,Dial(Zap,g1,${EXTEN})
>>>> exten => _.,2,Dial(SIP,Provider,${EXTEN})
>>> exten => _.,1,Dial(Zap/g1/${EXTEN})
>>> exten => _.,2,Dial(SIP/Provider/${EXTEN})
>>>
>>> ('/' instead of ',')
>>>
>> While this will work, be aware that there are circumstances where you
>> may end up calling the number twice, once through each provider. One
>> example is if the number you dial is busy, that progress will be passed
>> via the PRI to asterisk and the dialplan will continue to the next
>> priority. In this case, dialing the number again through the SIP
>> provider. To avoid this you will need to use some dialplan logic and
>> check the result of the DIALSTATUS variable. See this page for examples:
>>
>> http://www.voip-info.org/wiki/view/Asterisk+variable+DIALSTATUS
>>
>> -Dave
>>
>>
> Good point.
>
> I was unaware that "busy" back from a TDM circuit would progress in the
> dialplan rather than going to the h exten.
>
> What other cases are there like that?
It is my understanding (through trial and error, reading, etc) that any
Dial command that does not result in an answered state will continue in
the dialplan after a timeout (if specified) or some sort of progress is
received. If the called channel results in an answer then dialplan
processing stops as soon as one party hangs up (unless the g option is
specified).
This works on any channels that can pass progress (SIP/IAX and Zap/DAHDI
PRI and BRI). Zap/DAHDI Analog channels are considered answered as soon
as the dial is complete so you won't be able to use this trick under
normal circumstances.
-Dave
More information about the asterisk-users
mailing list