...
Note |
---|
To accomplish above tasks please sdlgkndasglndsglnsdglnsdglkndsglknsdglk |
Code Block |
---|
[root@pbxroot@xxx ~]# vim /etc/asterisk/trunk-failover.conf |
...
Code Block |
---|
[trunk-failover] exten => _X.,1,Verbose(Failover group) same => n,Set(PREV_CHAN=${canale}) same => n(__trunk_ffefd2c02f46993e),Verbose(Trying to dial using trunk "MessagenetTrunk 89010" __trunk_ffefd2c02f46993e) same => n,Set(NETWORKSTATUS=${SIPPEER(__trunk_ffefd2c02f46993e,status)}) same => n,Gotoif($["${NETWORKSTATUS}"="UNREACHABLE"]?__trunk_616683993964bc16:) same => n,Set(SHARED(Sip_Trunk,${PREV_CHAN})=__trunk_ffefd2c02f46993e) same => n,Dial(SIP/__trunk_ffefd2c02f46993e/${EXTEN}) same => n,Hangup() same => n(__trunk_616683993964bc16),Verbose(Trying to dial using trunk "MessagenetTrunk 89111" __trunk_616683993964bc16) same => n,Set(NETWORKSTATUS=${SIPPEER(__trunk_616683993964bc16,status)}) same => n,Gotoif($["${NETWORKSTATUS}"="UNREACHABLE"]?__trunk_d346973491bc1df3:) same => n,Set(SHARED(Sip_Trunk,${PREV_CHAN})=__trunk_616683993964bc16) same => n,Dial(SIP/__trunk_616683993964bc16/${EXTEN}) same => n,Hangup() same => n(__trunk_d346973491bc1df3),Verbose(Trying to dial using trunk "MessagenetTrunk 89212" __trunk_d346973491bc1df3) same => n,Set(NETWORKSTATUS=${SIPPEER(__trunk_d346973491bc1df3,status)}) same => n,Gotoif($["${NETWORKSTATUS}"="UNREACHABLE"]?__trunk_6fd24f043acea450:) same => n,Set(SHARED(Sip_Trunk,${PREV_CHAN})=__trunk_d346973491bc1df3) same => n,Dial(SIP/__trunk_d346973491bc1df3/${EXTEN}) same => n,Hangup() same => n(__trunk_6fd24f043acea450),Verbose(Trying to dial using trunk "MessagenetTrunk 89313" __trunk_6fd24f043acea450) same => n,Set(NETWORKSTATUS=${SIPPEER(__trunk_6fd24f043acea450,status)}) same => n,Gotoif($["${NETWORKSTATUS}"="UNREACHABLE"]?__trunk_27f415d6fb6346c0:) same => n,Set(SHARED(Sip_Trunk,${PREV_CHAN})=__trunk_6fd24f043acea450) same => n,Dial(SIP/__trunk_6fd24f043acea450/${EXTEN}) same => n,Hangup() same => n(__trunk_27f415d6fb6346c0last),Verbose(Trying to dial using trunk "zerozero39" __trunk_27f415d6fb6346c0) same => n,Set(NETWORKSTATUS=${SIPPEER(__trunk_27f415d6fb6346c0,status)}) same => n,Gotoif($["${NETWORKSTATUS}"="UNREACHABLE"]?last:No trunk reachable) same => n,Set(SHARED(Sip_Trunk,${PREV_CHAN})=FAILOVER__trunk_27f415d6fb6346c0FAILED) same => n,Dial(SIP/__trunk_27f415d6fb6346c0/${EXTEN}) same => n,Hangup() same => n(last),Verbose(No trunk reachable) same => n,Set(SHARED(Sip_Trunk,${PREV_CHAN})=FAILOVER_FAILED) same => n,Hangup()Hangup() |
Once you're done just save the file. When you're back in console, as root you can reload dialplan by issuing the following command:
Code Block |
---|
[root@xxx ~]# rasterisk -x "dialplan reload"
Setting max files open to 65536
Privilege escalation protection disabled!
See https://wiki.asterisk.org/wiki/x/1gKfAQ for more details.
Dialplan reloaded.
[root@xxx ~]# |
Now your Trunk failover configuration is completed. Any time one Trunk of yours resulted Unreachable,
Brand | ||
---|---|---|
|
Info |
---|
It's possible to choose the exact priority by correctly naming your Trunks. Order followed is alphabetical. |
4.4.2 "Re-route temporary unavailable users" option
...