The AsteriskGUI creates and uses failover in its dialplans. As that is how
I started out with Asterisk it turns out that I do use failover. The way
it works is to create a macro and then every time you want to dial you call
the macro and pass in the names of the trunks that you want to use. Here
is a cut/paste from my dialplan, which is probably way more complex than
you need (all the callerid stuff, which I probably don't need either), but
could be enough for you to figure out how to make your situation work.
[globals]
vitel-outbound = SIP/vitel-outbound
voipcheap = SIP/voipcheap
CID_vitel-outbound = 8005551212
CID_voipcheap = 8005551212
[CallingRule_DomesticLD]
exten =
_1NXXNXXXXXX,1,Macro(trunkdial-failover-dak,${vitel-outbound}/${EXTEN:0},${voipcheap}/00${EXTEN:0},vitel-outbound,voipcheap)
[macro-trunkdial-failover-dak]
exten = s,1,GotoIf($[${LEN(${FMCIDNUM})} > 6]?1-fmsetcid,1)
exten = s,2,GotoIf($[${LEN(${GLOBAL_OUTBOUNDCIDNAME})} > 1]?1-setgbobname,1)
exten = s,3,Set(CALLERID(num)=${IF($[${LEN(${CID_${CALLERID(num)}})} >
2]?${CID_${CALLERID(num)}}:${CALLERID(num)})})
exten = s,n,GotoIf($[${LEN(${CALLERID(num)})} > 6]?1-dial,1)
exten = s,n,Set(CALLERID(num)=${IF($[${LEN(${CID_${ARG3}})} >
6]?${CID_${ARG3}}:${GLOBAL_OUTBOUNDCID})})
exten = s,n,Goto(1-dial,1)
exten = 1-setgbobname,1,Set(CALLERID(name)=${GLOBAL_OUTBOUNDCIDNAME})
exten = 1-setgbobname,n,Goto(s,3)
exten = 1-fmsetcid,1,Set(CALLERID(num)=${FMCIDNUM})
exten = 1-fmsetcid,n,Set(CALLERID(name)=${FMCIDNAME})
exten = 1-fmsetcid,n,Goto(1-dial,1)
exten = 1-dial,1,Dial(${ARG1})
exten = 1-dial,n,Gotoif(${LEN(${ARG2})} > 0 ?1-${DIALSTATUS},1:1-out,1)
exten = 1-CHANUNAVAIL,1,Goto(failover,1)
exten = 1-CONGESTION,1,Goto(failover,1)
exten = 1-out,1,Hangup()
exten = failover,1,GotoIf($[${LEN(${FMCIDNUM})} > 6]?failover-fmsetcid,1)
exten = failover,2,GotoIf($[${LEN(${GLOBAL_OUTBOUNDCIDNAME})} >
1]?failover-setgbobname,1)
exten = failover,3,Set(CALLERID(num)=${IF($[${LEN(${CID_${CALLERID(num)}})}
> 2]?${CID_${CALLERID(num)}}:)})
exten = failover,n,GotoIf($[${LEN(${CALLERID(num)})} > 6]?failover-dial,1)
exten = failover,n,Set(CALLERID(all)=${IF($[${LEN(${CID_${ARG4}})} >
6]?${CID_${ARG4}}:${GLOBAL_OUTBOUNDCID})})
exten = failover,n,Goto(failover-dial,1)
exten = failover-setgbobname,1,Set(CALLERID(name)=${GLOBAL_OUTBOUNDCIDNAME})
exten = failover-setgbobname,n,Goto(failover,3)
exten = failover-fmsetcid,1,Set(CALLERID(num)=${FMCIDNUM})
exten = failover-fmsetcid,n,Set(CALLERID(name)=${FMCIDNAME})
exten = failover-fmsetcid,n,Goto(failover-dial,1)
exten = failover-dial,1,Dial(${ARG2})
On Sun, Nov 6, 2011 at 12:41 PM, Fernando Fuentes
<digitaldis...@gmail.com>wrote:
> Has anybody set some type of faiolover?
> I am trying to set my system to failover to my GSM Gateway when there is
> no internet which happens quite often here.
> I used:
>
> exten => _1NXXNXXXXXX,1,Dial(SIP/voipms/${EXTEN})
> exten =>
> _1NXXNXXXXXX,n,GotoIf($[${DIALSTATUS}=CHANUNAVAIL]?${EXTEN},failover)
> exten => _1NXXNXXXXXX,n(failover),Dial(SIP/gsm/${EXTEN})
> exten => _1NXXNXXXXXX,n,Hangup()
>
> But DIALSTATUS needs to contact the carrier... In my case the system is
> off line and the system is not register so it cant failover.
>
> Any ideas?
>
> Thank You!
>
>
> ------------------------------------------------------------------------------
> RSA(R) Conference 2012
> Save $700 by Nov 18
> Register now
> http://p.sf.net/sfu/rsa-sfdev2dev1
> _______________________________________________
> Astlinux-users mailing list
> Astlinux-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/astlinux-users
>
> Donations to support AstLinux are graciously accepted via PayPal to
> pay...@krisk.org.
>
------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
Astlinux-users mailing list
Astlinux-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/astlinux-users
Donations to support AstLinux are graciously accepted via PayPal to
pay...@krisk.org.