Страница 1 из 1

Астериск через время переводит вызов на городскую линию

Добавлено: 20 май 2015, 11:32
fil23
Доброго дня.

Абонент пытается дозвонится по внутреннему номеру 103.
Если ответа не поступает (через промежуток времени), то Астериск переключает вызов на городскую линию, а точнее звонит в скорую :)

Приведу диалплан, он простенький ) ... по логам видно что исходящий вызов на внутренний номера совершается через

Код: Выделить всё

exten => _1XX,1,Dial(SIP/${EXTEN},,t)
но я это делал , для трансфера . может я чего не понимаю?, .... а далее если ответа на последовало , то вызов переводится на

Код: Выделить всё

exten => _X.,n,Dial(SIP/Operator_SIP/${EXTEN})

Код: Выделить всё

[globals]
NUMBERGARS1=803
NUMBERGARS2=805

[default]

[incoming_calls]
exten => ${NUMBERGARS1},1,Goto(incoming_calls,vizov,1)
exten => ${NUMBERGARS2},1,Goto(incoming_calls,vizov,1)


exten => vizov,1,Set(TIMEOUT(digit)=2)
exten => vizov,n,Verbose(1,Получен звонок с внешней линии)
exten => vizov,n,Answer()                                                               ;отвечаем
;exten => vizov,n(met1),Background(/var/lib/asterisk/sounds/ru/soundgars/hellogars)     ;воспроизводим приветствие
;exten => vizov,n,WaitExten(3)                                                          ;ждем реакции
exten => vizov,n,Goto(managers,s,1)                                                     ;если абанюга ни чего не нажал то переводим его на мэенеджеров
exten => vizov,n,Hangup()

exten => 0,1,NoOp(1,Передается параметр ${EXTEN})
exten => 0,n,GotoIf($[${EXTEN}=0]?fax-rx,receive,1)                                     ;если был нажат 0 , то принимаем факс

;exten => i,1(met2),Playback(/var/lib/asterisk/sounds/ru/soundgars/invalidinput)        ;воспроизводим "ошибка ввода"
exten => i,1,Goto(incoming_calls,${NUMBERGARS},met1)                                    ;и переводим на приветствие


[incoming_uniscan]
exten => _X.,1,NoOp(Совершается входящий звонок через УНИСКАН)
exten => _X.,n,Answer()
exten => _X.,n,Dial(SIP/${EXTEN}, 30)
exten => _X.,n,Hangup()

[outgoing_calls]
exten => _X.,1,NoOp(Совершается исходящий вызов)
exten => _X.,n,Dial(SIP/Operator_SIP/${EXTEN})

exten => _1XX,1,Dial(SIP/${EXTEN})                                                      ;;делаем вызовы по всем внутренним номерам

exten => 111,1,NoOp(Переводим на факс)
exten => 111,n,Goto(fax-rx,receive,1)


exten => _[12]XXX,1,NoOp(Совершается исходящий вызов в УНИСКАН)
exten => _[12]XXX,n,Set(CALLERID(all)=4${CALLERID(num)})                                ;"прибавляем" к внутреннему номеру в начало 4
exten => _[12]XXX,n,Dial(SIP/Uniscan_sip_out/${EXTEN})                                  ;делаевы вызов в унискан


[managers]
exten => s,1,Verbose(1,Переводим на менеджеров)                                         ;контекст сюда переводятся абоненты с внешки на двоих менеджеров
exten => s,n,Dial(SIP/101&SIP/102, 30)                                                  ;вызываем манагеров 30 с
;exten => s,n,Playback(/var/lib/asterisk/sounds/ru/soundgars/goodbye)                    ;воспроизводим "досвидания"
exten => s,n,Hangup()



[phones]
include => outgoing_calls

exten => _1XX,1,Dial(SIP/${EXTEN},,t)


Спасибо.

Re: Астериск через время переводит вызов на городскую линию

Добавлено: 20 май 2015, 11:58
zzuz
По каким таким логам видно?

Re: Астериск через время переводит вызов на городскую линию

Добавлено: 20 май 2015, 12:16
awsswa
вам надо разграничить внутренние и внешние вызовы через контекст
а у вас всё в одном
Еще как вариант - ограничьте внешние по правильному номеру - не _X. а _89XXXXXXXXX, смысл пускать только внешние номера наружу

[outgoing_calls]
exten => _X.,1,NoOp(Совершается исходящий вызов)
exten => _X.,n,Dial(SIP/Operator_SIP/${EXTEN})

exten => _1XX,1,Dial(SIP/${EXTEN}) ;;делаем вызовы по всем внутренним номерам

exten => 111,1,NoOp(Переводим на факс)
exten => 111,n,Goto(fax-rx,receive,1)