2015-02-19 4 views
0

У нас мобильная компания, начиная их число с 01XXXXXXXXXDongle диалплан используется в Asterisk

Мой Звездочка имеет два Dongle модема: dongle0 и dongle1.

Чтобы набрать номер мобильного телефона от моей Звездочки коробки я использую

exten => _01X.,1,Dial(Dongle/dongle0/${EXTEN},20) 

exten => _01X.,n,Dial(Dongle/dongle1/${EXTEN},20) 

так, что если dongle0 занят вызов будет проходить через dongle1.

Проблема заключается в том, что, если получатель занят или отклоняет вызов, вызов снова отправляется с ключом 1.

Я хочу, чтобы dongle1 отправил вызов, только если dongle0 занят.

+0

Я устал от $ DIALSTATUS. но не работает –

ответ

1

Пожалуйста, попробуйте:

exten => _01X.,1, Dial(Dongle/dongle0/${EXTEN},20) 
same => n, Verbose(2, D0 DIALSTATUS => ${DIALSTATUS}) 
same => n, GotoIf($[ $['${GOSUB_RETVAL}'='BUSY'] | $['${GOSUB_RETVAL}'='NOANSWER'] ]?all_done) 
same => n, Dial(Dongle/dongle1/${EXTEN},20) 
same => n, Verbose(2, D1 DIALSTATUS => ${DIALSTATUS}) 
same => n(all_done), Verbose(2, Call being completed ... HANGUPCAUSE was ${HANGUPCAUSE}) 
same => n, Hangup(${HANGUPCAUSE}) 

Пожалуйста опубликуют результаты CLI двух вызовов здесь, так что мы можем отладить.