VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Входящий номер при поступление звонка, способы получения

Раздел для разработчиков для обсуждения программных и аппаратных продуктов и их реализации.

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

virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Входящий номер при поступление звонка, способы получения

Сообщение virus_net »

Есть event Bridge по которому можно осознать и номер А и номер Б по Uniqueid.

http://voxlink.ru/kb/asterisk-configuration/AMI/
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
le7o
Сообщения: 11
Зарегистрирован: 07 авг 2015, 19:19

Re: Входящий номер при поступление звонка, способы получения

Сообщение le7o »

Еще один вопрос в рамках данной темы:
Может кто нибудь поделиться логами AMI(с входящими внешними номерами), для анализа и разработки регулярных выражений?

Поясню: сейчас сделал, регулярное выражение вида:

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

Event=Dial.{1,}SubEvent=Begin.{1,}?100|Event=Bridge.{1,}?100|Event=Hangup.{1,}?100
И фиксируются события вида: ("=" вместо ":" подставляю для удобства дальнейшей обработки в Delphi)

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

Event=Dial
Privilege=call,all
Timestamp=1451857888.475368
SubEvent=Begin
Channel=SIP/101-00000087
Destination=SIP/100

Event=Bridge
Privilege=call,all
Timestamp=1451857890.606465
Bridgestate=Link
Bridgetype=core
Channel1=SIP/101-00000087
Channel2=SIP/100

Event=Hangup
Privilege=call,all
Timestamp=1451857893.432616
Channel=SIP/100
И вот здесь прошу помощи/подсказки - правильно ли я понимаю что НОМЕР, который мне необходимо получить находится в CallerIDNum?

Полное событие Dial ниже

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

Event: Dial
Privilege: call,all
Timestamp: 1451857888.475368
SubEvent: Begin
Channel: SIP/101-00000087
Destination: SIP/100-00000088
CallerIDNum: 101
CallerIDName: PhonerLite
ConnectedLineNum: <unknown>
ConnectedLineName: <unknown>
UniqueID: 1451857888.135
DestUniqueID: 1451857888.136
Dialstring: 100
P.s.:С jabber разобрался: повесил jabberSend() номер приходит оператору, далее управление берет программа (ищет номер в БД, сверяет и т.п.)
Вложения
Скрин тестовой версии
Скрин тестовой версии
virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Входящий номер при поступление звонка, способы получения

Сообщение virus_net »

Ответ на вопрос зависит от того какой именно номер вы хотите получить.
Честно, вопрос странен. Вы совершаете вызов, вы знаете кто и кому звонит, вы смотрите в консоль и вы же задаете сей вопрос, ответ на который можете дать сами.

P.S. Кодить для Asterisk`а, не имения понимания того как он устроен, хотя бы основные базовые понятия, это долгое и гиблое дело.
P.S.S. В разных версиях Asterisk`а события AMI могут отличаться.
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
le7o
Сообщения: 11
Зарегистрирован: 07 авг 2015, 19:19

Re: Входящий номер при поступление звонка, способы получения

Сообщение le7o »

В данном конкретном случае нет доступа к реальному листингу AMI, версия Asterisk 1.8.19.

Интересует именно разница между значениями: Channel: SIP/101-00000087 и CallerIDNum: 101 для события Dial в случае звонка из вне?
april22
Сообщения: 2187
Зарегистрирован: 09 июл 2012, 09:47

Re: Входящий номер при поступление звонка, способы получения

Сообщение april22 »

один канал
второй CallerIDNum

что такого ?
разница?
SIP/101-00000087
101

в значении
Своими вопросами , вы загоняете меня в ГУГЛЬ.
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Входящий номер при поступление звонка, способы получения

Сообщение Vlad1983 »

проблема позвонить и посмотреть?
ЛС: @rostel
le7o
Сообщения: 11
Зарегистрирован: 07 авг 2015, 19:19

Re: Входящий номер при поступление звонка, способы получения

Сообщение le7o »

Я же уже написал что на виртуальном стенде только внутренние номера, а интересует именно значение Channel при входящем вызове из вне (не внутренний номер).
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Входящий номер при поступление звонка, способы получения

Сообщение Vlad1983 »

хоть в какой среде можно сделать вызов якобы из вне
ЛС: @rostel
le7o
Сообщения: 11
Зарегистрирован: 07 авг 2015, 19:19

Re: Входящий номер при поступление звонка, способы получения

Сообщение le7o »

По итогу сформировал "регулярку" на получение события следующего вида:

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

Event=Bridge
Privilege=call,all
Timestamp=1451903956.180707
Bridgestate=Link
Bridgetype=core
Channel1=SIP/1001-00000036
Channel2=SIP/100-00000037
Uniqueid1=1451903954.54
Uniqueid2=1451903954.55
CallerID1=1001 - входящий номер
CallerID2=100
Входящий номер получаю через значение CallerID1, при условии что оно не равно CallerID2...
Всем спасибо за помощь...
le7o
Сообщения: 11
Зарегистрирован: 07 авг 2015, 19:19

Re: Входящий номер при поступление звонка, способы получения

Сообщение le7o »

Прикладываю пример на Delphi, может кому то поможет
Вложения
AMI_TEST.7z
(86.9 КБ) 579 скачиваний
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH