Задать вопрос
@ThreeDHead

Как отловить событие поднятия трубки?

Есть коллцентр, входящий вызове из вне, при поднятии трубки оператором, нужно запустить некий AGI-скрипт. Как это событие (?) отловить?
  • Вопрос задан
  • 227 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 2
@dronmaxman
VoIP Administrator
Вот так например

exten => _XXXX,1,NoOp(-------AGENT-DIALPLAN----------)
 same => n,Dial(${EXTEN},60,rU(sub-agi,${CALLERID(num)},${EXTEN},${UNIQUEID}))



[sub-agi]
exten => s,1,Noop(------------Start-Sub-AGI---------------)
 same => n,NoCDR()
 same => n,Noop(${ARG1}
 same => n,Noop(${ARG2}
 same => n,Noop(${ARG3}
 same => n,AGI(myscript.php,${ARG1},${ARG2},${ARG3})
 same => n,return
Ответ написан
@ThreeDHead Автор вопроса
Я использую приложение dialwait для выставления задержки какой номер оператора, когда доложен начать звонить, там в приложение Dial добавил опцию M(), передал необходимые параметры и всё отловил.
Всем участникам большое спасибо!

[dialwait]
exten => _X.,1,Set(num=${CUT(EXTEN,:,1)})
exten => _X.,n,Set(wait=${CUT(EXTEN,:,2)})
exten => _X.,n,Wait(${wait})
exten => _X.,n,Dial(SIP/${num},60,M(connectevent,${CALLERID(num)},${num}))

[macro-connectevent]
exten => s,1,AGI(connect-event.php,${ARG1},${ARG2})
exten => s,n,Return()
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Попробуйте опцию G() для Dial.
Ответ написан
Комментировать
Комментировать
Возможно, это событие подойдет
https://wiki.asterisk.org/wiki/display/AST/Asteris...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы