Страница 1 из 2
DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 09 янв 2014, 16:28
tonny_bennet
Здравствуйте.
Есть шлюз DVG-7044s, к которому подключены четыре аналоговые линии. На одной из них подключена услуга "Евро Caller ID" (именно так страшно называют в Ростелекоме CallerID). Все четыре линии настроены отдельными транками на Elastix.
Позвонив на этот номер, SuperLink Monitor говорит, что CallerID определился. Он передаётся в Asterisk:
Код: Выделить всё
-- Executing [s@macro-user-callerid:19] Set("SIP/7004-0000101c", "CALLERID(number)=7004") in new stack
-- Executing [s@macro-user-callerid:20] Set("SIP/7004-0000101c", "CALLERID(name)=8988*****88") in new stack
-- Executing [s@macro-user-callerid:21] NoOp("SIP/7004-0000101c", "Using CallerID "8988*****88" <7004>") in new stack
но как видно из логов, передаётся он не так как этого хочется. Т.е. в качестве номера - имя транка 7004, а в качестве имени звонящего номер телефона 8988*****88. В сети встречал решения, которые правили CallerID на стороне Asterisk-а, выдёргивая номер из имени. Мне кажется что это проблема шлюза и должна быть решена на уровне шлюза.
Подскажите пожалуйста может кто-нибудь решал подобные проблемы?
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 09 янв 2014, 18:18
awsswa
сохраняете в переменную - из переменной вставляете куда надо
или сразу в callerid(num)
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 09 янв 2014, 18:30
ded
awsswa, судя по логу - у него уже есть правильный Caller ID, и он уже сохранён в переменной "CALLERID(name)", не совсем в той, то есть пересохранять - вряд ли нужно.
ТС,
1) в каком контексте обрабатываются входящие из DVG-7044s ?
2) какой Hot line number Вы там прописали? 7004? Неправильно.
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 10 янв 2014, 10:11
tonny_bennet
1. Т.к. все настройки делал исходя из данной статьи
http://lynks.ru/blog/nastroika-voip-shl ... k-dvg-xxxx то контекст следующий context=from-pstn
2. Раньше в HotLine было прописано 07004, но т.к. в логах я увидел, что Asterisk его интерпретирует как DID Number я прописал туда семизначный городской номер, что бы логичнее смотрелись правила входящей маршрутизации. Номер 7004 фигурирует как номер линии (в инструкции это указано).
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 10 янв 2014, 10:25
Vlad1983
в шлюзе найти и выставить отправку Remote-Party-ID
в пирах шлюза шлюза прописать trustrpid = yes
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 10 янв 2014, 10:55
tonny_bennet
На шлюзе нашёл это только в одном месте
![Изображение](http://s019.radikal.ru/i602/1401/f8/40496901fdc0.png)
пробовал оба варианта. В настройках транка строку trustrpid = yes добавил. Ситуация не изменилась
Вы можете пояснить, за что отвечает данный пункт настроек шлюза?
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 10 янв 2014, 10:58
Vlad1983
смотрите ниже INVITE With Remote-Party-ID Header
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 10 янв 2014, 11:04
tonny_bennet
Уже после поста решил сам поставить галочку и реально заработало
Огромное вам спасибо за помощь.
Код: Выделить всё
-- Executing [s@macro-user-callerid:19] Set("SIP/7004-000011e3", "CALLERID(number)=8988*****88") in new stack
-- Executing [s@macro-user-callerid:20] Set("SIP/7004-000011e3", "CALLERID(name)=8988*****88") in new stack
-- Executing [s@macro-user-callerid:21] NoOp("SIP/7004-000011e3", "Using CallerID "8988*****88" <8988*****88>") in new stack
И всё же можете пояснить логику работы шлюза для общего развития и понимания вопроса?
![Подмигивает ;)](./images/smilies/icon_e_wink.gif)
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 10 янв 2014, 11:11
Vlad1983
сами разберитесь и разъясните для будущих поколений
Re: DVG-7044s отдаёт CallerID не так как хочется
Добавлено: 10 янв 2014, 12:01
tonny_bennet
http://www.voip-info.org/wiki/view/P-As ... -ID+header
Как я понял из статьи выше, Remote-Party-Id - заголовок который поддерживается многими устройствами, но не является частью стандарта. Шлюз инициализирует вызов на астериск, используя данный заголовок. Астериску нужно разрешить принимать данный заголовок trustrpid=yes.