Задать вопрос
OrlovEvgenii
@OrlovEvgenii
golang developer / DevOps

Asterisk. Как получить номер звонящего + номер оператора поднявшего трубку?

В общем есть наипростейший екстеншн следующего типа
exten => s,1,Answer()
exten => s,n,Wait(5)
exten => s,n,Dial(SIP/100&SIP/101&SIP/102,25,mt(ss_moh))


Ситуация - входящий звонок, один из трех операторов первым отвечает на звонок.
Как в момент ответа на звонок налету вытащить входящий номер абонента, и внутренний номер оператора ответившего на звонок?
И как после завершения звонка отловить Hangup()?
  • Вопрос задан
  • 3980 просмотров
Подписаться 3 Оценить Комментировать
Решения вопроса 1
@maddimons
Инженер связи
Christian, воспользуйтесь приложением Queue(). В нем есть отличные параметры для вас:
с - ловит положенную трубку со стороны звонящего (продолжает диалплан). Можно, например, стандартным MySQL() приложением положить нужные переменные канала в базу.
AGI или перевод на Macro с нужным AGI - далее в скрипте вы вылавливаете переменные канала и кладете их в базу или используете на свое усмотрение.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 5
@torr2009
И как после завершения звонка отловить Hangup()?
Для этого есть специальный extension h.
Ответ написан
Комментировать
@fluffybear
"Кто в очереди принял звонок"
awsswa.livejournal.com/6172.html
Ответ написан
Комментировать
@goodcat32
А можно поинтересоваться, почему вы такую задачу решаете не по средствам очередей?
И где вы хотите отловить это все? В консоли или в некий лог вывести?
Ответ написан
Комментировать
mvlbrn
@mvlbrn
Если необходимо использовать именно Dial() то номера можно отловить в макросе при соединении (параметр M(x) команды Dial) а завершение можно отловить в экстеншне h при использовании параметра 'e' команды Dial

Описание команды - www.voip-info.org/wiki/view/Asterisk+cmd+Dial
Ответ написан
Комментировать
@Taksist410
Это легко сделать на стороне оператора, если у него стоит "самодельный" софтфон написанный на VoIP SDK (например www.portsip.com/portsip-voip-sdk). Тогда всё, что вы спрашиваете это события и параметры событий программы софтфона.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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