[asterisk-users] How to balance traffic between 2 gateways ?

Anthony Francis anthonyf at rockynet.com
Thu Feb 7 12:27:06 CST 2008



Atis Lezdins wrote:
> On 2/7/08, Olivier <oza-4h07 at myamail.com> wrote:
>   
>> Hi,
>>
>> Is it possible and safe to split or balance outgoing calls to 2 different
>> sip-to-tdm voice gateways ?
>>
>> I need 5 E1 ports and the boxes have 4 ports each.
>> Setup would be :
>>
>> PSTN --<1xE1>-- Gateway1 ---<2xE1>---- PBX ---- TDM phones
>>                                 |
>>                              LAN ------------------ Asterisk ----- SIP
>> Phones
>>                                |
>> PSTN --<1xE1>-- Gateway2 ---<1xE1>---- PBX ---- TDM Phones
>>
>> Regards
>>
>>     
>
> Sure:
>
> context dial-out {
>   _X. => {
>     if ("${GROUP_COUNT(gw2)}">"${GROUP_COUNT(gw1)}") {
>       Set(OUTBOUND_GROUP=gw1)
>       Dial(SIP/${EXTEN}@gw1)
>     } else {
>       Set(OUTBOUND_GROUP=gw2)
>       Dial(SIP/${EXTEN}@gw2)
>     }
>   }
> }
>
> Regards,
> Atis
>
>   
Old variable syntax but this flips which gateway is used with every 
call, and fails over to the other line in the event of any negative 
status return, of course it could be cleaner, if both gateways where 
down this would make an infinite loop.

[macro-lb]
; ${ARG1} - PhoneNumber
exten => s,1,GotoIf($["${LOADBALANCE}" = "0"]?5)
exten => s,2,SetGlobalVar(LOADBALANCE=0)
exten => s,3,Dial(${TRUNK_DENVER}/${ARG1})
exten => s,4,Goto(s,6)
exten => s,5,SetGlobalVar(LOADBALANCE=1)
exten => s,6,Dial(${TRUNK_DENVER2}/${ARG1})
exten => s,7,Goto(s,3)

-- 
Thank you and have a wonderful day,

Anthony Francis
Rockynet VOIP




More information about the asterisk-users mailing list