Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

История изменений [назад]

нажмите, чтобы скрыть/показать версии 1
изначальная версия
редактировать

спросил 2012-09-05 16:31:35 +0400

Mixa87 Gravatar Mixa87

Осуществление исходящих вызовов по очереди через GOIP 4

Добрый день

Есть 4 шлюза goip 4, и 2 шлюза gudwin Asterisk 1.6, Elastix 2.0

Задача стоит следующая чтобы направлять вызовы по очереди с каждой карточки, при условии если карточка занята переходить на следующую.

В данный момент настроена схема для gudwin, как корректно добавить в эту очередь шлюзы goip?

[outbound-1] exten => .,1,Answer() exten => _.,2,Wait(1) exten => _.,3,Set(fname=${UNIQUEID}) exten => _.,4,MixMonitor(/var/spool/asterisk/monitor/${STRFTIME(,,%G%m%d)}/${fname}.wav) exten => _XXX,5,Dial(SIP/${EXTEN}) exten => _XXX,6,Goto(lblvdp-outbound_3) exten => _044XXXXXXX,5,Goto(trunks) exten => _044XXXXXX,5,Goto(trunks) exten => _XXXXXXX,5,Goto(trunks) exten => _XXXXXX,5,Goto(trunks) exten => _0800X.,5,Goto(trunks)

;exten => _0157XXXXXXXXXX,5,Goto(moscow) ;exten => _01537XXXXXXXXXX,5,Goto(moscow)

exten => _X.,5(moscow),Set(SES=0) exten => _X.,6,Set(GMIN=1) exten => _X.,7,Set(GMAX=4) exten => _X.,n,Set(GSMGMIN=1) exten => _X.,n,Set(GSMGMAX=2) exten => _X.,n,Set(GSMGATE=${RAND(${GSMGMIN},${GSMGMAX})}) exten => _X.,n,Set(GATE=${RAND(${GMIN},${GMAX})})

exten => X.,n,GotoIf($["${GSMGATE}" = "1"]?lblvdp-outbound0:lblvdp-outbound_12)

exten => X.,n(lblvdp-outbound0),GotoIf($["${SES}" = "4"]?:lblvdp-outbound2) exten => _X.,n,Set(SES=0) exten => _X.,n,Goto(lblvdp-outbound_12)

exten => X.,n(lblvdp-outbound2),Dial(SIP/gudwin1/99${GATE}${EXTEN}) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CONGESTION"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CANCEL"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "DONTCALL"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "TORTURE"]?lblvdp-outbound4:) exten => _X.,n,Goto(lblvdp-outbound3) exten => _X.,n(lblvdp-outbound4),GotoIf($["${GATE}" = "4"]?:lblvdp-outbound7) exten => _X.,n,Set(GATE=1) exten => _X.,n(lblvdp-outbound6),Set(SES=$[(${SES}+1)]) exten => _X.,n,Goto(lblvdp-outbound0) exten => _X.,n(lblvdp-outbound5),GotoIf($["${GATE}" < "4"]?:lblvdp-outbound4) exten => _X.,n,Set(GATE=$[${GATE} + 1]) exten => _X.,n,Goto(lblvdp-outbound_6)

exten => X.,n(lblvdp-outbound12),GotoIf($["${SES}" = "4"]?:lblvdp-outbound7) exten => _X.,n,Set(SES=0) exten => _X.,n,Goto(lblvdp-outbound0) exten => _X.,n(lblvdp-outbound7),Dial(SIP/gudwin2/98${GATE}${EXTEN}) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CONGESTION"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CANCEL"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "DONTCALL"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "TORTURE"]?lblvdp-outbound9:) exten => _X.,n,Goto(lblvdp-outbound3) exten => _X.,n(lblvdp-outbound9),GotoIf($["${GATE}" = "4"]?:lblvdp-outbound10) exten => _X.,n,Set(GATE=1) exten => _X.,n(lblvdp-outbound11),Set(SES=$[(${SES}+1)]) exten => _X.,n,Goto(lblvdp-outbound0) exten => _X.,n(lblvdp-outbound10),GotoIf($["${GATE}" < "4"]?:lblvdp-outbound9) exten => _X.,n,Set(GATE=$[${GATE} + 1]) exten => _X.,n,Goto(lblvdp-outbound_11)

exten => .,n(lblvdp-outbound_3),Hangup()

спасибо

Осуществление исходящих вызовов по очереди через GOIP 4

Добрый день

Есть 4 шлюза goip 4, и 2 шлюза gudwin Asterisk 1.6, Elastix 2.0

Задача стоит следующая чтобы направлять вызовы по очереди с каждой карточки, при условии если карточка занята переходить на следующую.

В данный момент настроена схема для gudwin, как корректно добавить в эту очередь шлюзы goip?

[outbound-1] 
exten => .,1,Answer() _.,1,Answer() 
exten => _.,2,Wait(1) 
exten => _.,3,Set(fname=${UNIQUEID}) 
exten => _.,4,MixMonitor(/var/spool/asterisk/monitor/${STRFTIME(,,%G%m%d)}/${fname}.wav) 
exten => _XXX,5,Dial(SIP/${EXTEN}) 
exten => _XXX,6,Goto(lblvdp-outbound_3) _XXX,6,Goto(lbl_vdp-outbound_3) 
exten => _044XXXXXXX,5,Goto(trunks) 
exten => _044XXXXXX,5,Goto(trunks) 
exten => _XXXXXXX,5,Goto(trunks) 
exten => _XXXXXX,5,Goto(trunks) 
exten => _0800X.,5,Goto(trunks) 

;exten => _0157XXXXXXXXXX,5,Goto(moscow) ;exten => _01537XXXXXXXXXX,5,Goto(moscow)

exten => _X.,5(moscow),Set(SES=0) exten => _X.,6,Set(GMIN=1) exten => _X.,7,Set(GMAX=4) exten => _X.,n,Set(GSMGMIN=1) exten => _X.,n,Set(GSMGMAX=2) exten => _X.,n,Set(GSMGATE=${RAND(${GSMGMIN},${GSMGMAX})}) exten => _X.,n,Set(GATE=${RAND(${GMIN},${GMAX})})

exten => X.,n,GotoIf($["${GSMGATE}" = "1"]?lblvdp-outbound0:lblvdp-outbound_12)

exten => X.,n(lblvdp-outbound0),GotoIf($["${SES}" = "4"]?:lblvdp-outbound2) exten => _X.,n,GotoIf($["${GSMGATE}" = "1"]?lbl_vdp-outbound_0:lbl_vdp-outbound_12) exten => _X.,n(lbl_vdp-outbound_0),GotoIf($["${SES}" = "4"]?:lbl_vdp-outbound_2) exten => _X.,n,Set(SES=0) exten => _X.,n,Goto(lblvdp-outbound_12)

exten => X.,n(lblvdp-outbound2),Dial(SIP/gudwin1/99${GATE}${EXTEN}) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CONGESTION"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CANCEL"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "DONTCALL"]?lblvdp-outbound4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "TORTURE"]?lblvdp-outbound4:) exten => _X.,n,Goto(lblvdp-outbound3) exten => _X.,n(lblvdp-outbound4),GotoIf($["${GATE}" = "4"]?:lblvdp-outbound7) _X.,n,Goto(lbl_vdp-outbound_12) exten => _X.,n(lbl_vdp-outbound_2),Dial(SIP/gudwin1/99${GATE}${EXTEN}) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?lbl_vdp-outbound_4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CONGESTION"]?lbl_vdp-outbound_4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?lbl_vdp-outbound_4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?lbl_vdp-outbound_4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CANCEL"]?lbl_vdp-outbound_4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "DONTCALL"]?lbl_vdp-outbound_4:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "TORTURE"]?lbl_vdp-outbound_4:) exten => _X.,n,Goto(lbl_vdp-outbound_3) exten => _X.,n(lbl_vdp-outbound_4),GotoIf($["${GATE}" = "4"]?:lbl_vdp-outbound_7) exten => _X.,n,Set(GATE=1) exten => _X.,n(lblvdp-outbound6),Set(SES=$[(${SES}+1)]) exten => _X.,n,Goto(lblvdp-outbound0) exten => _X.,n(lblvdp-outbound5),GotoIf($["${GATE}" _X.,n(lbl_vdp-outbound_6),Set(SES=$[(${SES}+1)]) exten => _X.,n,Goto(lbl_vdp-outbound_0) exten => _X.,n(lbl_vdp-outbound_5),GotoIf($["${GATE}" < "4"]?:lblvdp-outbound4) "4"]?:lbl_vdp-outbound_4) exten => _X.,n,Set(GATE=$[${GATE} + 1]) exten => _X.,n,Goto(lblvdp-outbound_6)

exten => X.,n(lblvdp-outbound12),GotoIf($["${SES}" = "4"]?:lblvdp-outbound7) _X.,n,Goto(lbl_vdp-outbound_6) exten => _X.,n(lbl_vdp-outbound_12),GotoIf($["${SES}" = "4"]?:lbl_vdp-outbound_7) exten => _X.,n,Set(SES=0) exten => _X.,n,Goto(lblvdp-outbound0) exten => _X.,n(lblvdp-outbound7),Dial(SIP/gudwin2/98${GATE}${EXTEN}) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CONGESTION"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CANCEL"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "DONTCALL"]?lblvdp-outbound9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "TORTURE"]?lblvdp-outbound9:) exten => _X.,n,Goto(lblvdp-outbound3) exten => _X.,n(lblvdp-outbound9),GotoIf($["${GATE}" = "4"]?:lblvdp-outbound10) _X.,n,Goto(lbl_vdp-outbound_0) exten => _X.,n(lbl_vdp-outbound_7),Dial(SIP/gudwin2/98${GATE}${EXTEN}) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?lbl_vdp-outbound_9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CONGESTION"]?lbl_vdp-outbound_9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?lbl_vdp-outbound_9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?lbl_vdp-outbound_9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CANCEL"]?lbl_vdp-outbound_9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "DONTCALL"]?lbl_vdp-outbound_9:) exten => _X.,n,GotoIf($["${DIALSTATUS}" = "TORTURE"]?lbl_vdp-outbound_9:) exten => _X.,n,Goto(lbl_vdp-outbound_3) exten => _X.,n(lbl_vdp-outbound_9),GotoIf($["${GATE}" = "4"]?:lbl_vdp-outbound_10) exten => _X.,n,Set(GATE=1) exten => _X.,n(lblvdp-outbound11),Set(SES=$[(${SES}+1)]) exten => _X.,n,Goto(lblvdp-outbound0) exten => _X.,n(lblvdp-outbound10),GotoIf($["${GATE}" _X.,n(lbl_vdp-outbound_11),Set(SES=$[(${SES}+1)]) exten => _X.,n,Goto(lbl_vdp-outbound_0) exten => _X.,n(lbl_vdp-outbound_10),GotoIf($["${GATE}" < "4"]?:lblvdp-outbound9) "4"]?:lbl_vdp-outbound_9) exten => _X.,n,Set(GATE=$[${GATE} + 1]) exten => _X.,n,Goto(lblvdp-outbound_11)

exten => .,n(lblvdp-outbound_3),Hangup()

_X.,n,Goto(lbl_vdp-outbound_11) exten => _.,n(lbl_vdp-outbound_3),Hangup()

спасибо

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.