ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

AMI - Как узнать, что абонент снял трубку и разговор начался

Проблемы и их решения Asterisk как такового

Модераторы: april22, Zavr2008

AMI - Как узнать, что абонент снял трубку и разговор начался

Сообщение postgres » 07 май 2017, 20:49

Сейчас пробую слушать event Hangup после Action originate
Звонок приходит на мой номер, я поднимаю и кладу трубку.
В формате JSON привожу здесь состав события. Оно появляется дважды - для моего номера и для вызываемого.
Код: выделить все
{"variables":{},"event":"Hangup","privilege":"call,all","channel":"PJSIP/119-00003de2","channelstate":"6","channelstatedesc":"Up","calleridnum":"119","calleridname":"device","connectedlinenum":"120","connectedlinename":"0000P8P=P0","language":"ru","accountcode":"","context":"from-internal","exten":"","priority":"1","uniqueid":"1494175166.22321","linkedid":"1494175165.22319","cause":"16","cause_txt":"Normal Clearing"} 

{"variables":{},"event":"Hangup","privilege":"call,all","channel":"Local/119@default-000000e9;1","channelstate":"6","channelstatedesc":"Up","calleridnum":"119","calleridname":"\u0002P>P=","connectedlinenum":"120","connectedlinename":"\u0000P8P=P0","language":"ru","accountcode":"","context":"ext-local","exten":"h","priority":"1","uniqueid":"1494175165.22319","linkedid":"1494175165.22319","cause":"16","cause_txt":"Normal Clearing"}


Если я беру трубку, жду когда ее поднимет абонент, абонент поднимает ее, то событие тоже всплывает 2 раза... Вот тут у меня непонимание, почему.
Привожу вывод
Код: выделить все
{variables":{},"event":"Hangup","privilege":"call,all","channel":"Local/119@default-000000ea;1","channelstate":"6","channelstatedesc":"Up","calleridnum":"119","calleridname":"0P=Q\u0002P>P=","connectedlinenum":"120","connectedlinename":"\u0000P8P=P0","language":"ru","accountcode":"","context":"ext-local","exten":"h","priority":"1","uniqueid":"1494175528.22323","linkedid":"1494175528.22323","cause":"16","cause_txt":"Normal Clearing"}  jssip.html:22:17

{"variables":{},"event":"Hangup","privilege":"call,all","channel":"Local/119@default-000000ea;2","channelstate":"6","channelstatedesc":"Up","calleridnum":"120","calleridname":"u0000P8P=P0","connectedlinenum":"119","connectedlinename":"010P=Q\u0002P>P=","language":"ru","accountcode":"","context":"default","exten":"h","priority":"1","uniqueid":"1494175528.22324","linkedid":"1494175528.22323","cause":"16","cause_txt":"Normal Clearing"}



ПОлучается, что я не могу определить, разговор начался или не начинался... А как узнать?
postgres
 
Сообщений: 9
Зарегистрирован: 27 фев 2017, 15:23

Re: AMI - Как узнать, что абонент снял трубку и разговор нач

Сообщение ded » 07 май 2017, 21:40

ded
 
Сообщений: 15803
Зарегистрирован: 26 авг 2010, 19:00

Re: AMI - Как узнать, что абонент снял трубку и разговор нач

Сообщение postgres » 08 май 2017, 10:16

Asterisk 13 - по ссылкам указывают на собятия, которых нет в документации. Link Unlink - что Это?
Документацию читаю здесь - https://wiki.asterisk.org/wiki/display/ ... AMI+Events
postgres
 
Сообщений: 9
Зарегистрирован: 27 фев 2017, 15:23

Re: AMI - Как узнать, что абонент снял трубку и разговор нач

Сообщение virus_net » 08 май 2017, 10:30

Что значит "почему" ? Потому что у вызова два плеча (два канала) и они оба hangup`ятся.
"uniqueid":"1494175166.22321","linkedid":"1494175165.22319"
"uniqueid":"1494175165.22319","linkedid":"1494175165.22319"

"uniqueid":"1494175528.22323","linkedid":"1494175528.22323"
"uniqueid":"1494175528.22324","linkedid":"1494175528.22323"

Asterisk Standard Channel Variables

Нет, не получается. Узнать легко по:
Есть event newstate и в нем есть channelstate. channelstate = 6 это answer.

Ещё есть event bridge.
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва


Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH