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

PJSIP и BLF

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

Модератор: april22

PJSIP и BLF

Сообщение Kroteg » 04 фев 2020, 14:26

Приветствую.
У кого-нибудь получалось подружить PJSIP с BLF?
Что и где надо настраивать? Пытаюсь настроить оповещения для внешнего транка.
Код: выделить все
409505@ext-did-0002-: PJSIP/409505,CustomP  State:Idle            Presence:not_set         Watchers  0

Засунул во вложенный контекст для этого номера:
Код: выделить все
[ext-did-0002-custom]

exten => 409505,hint,PJSIP/409505,CustomPresence:409505

Код: выделить все
*CLI> dialplan show 409505@ext-did-0002
[ Context 'ext-did-0002' created by 'pbx_config' ]
...
[ Included context 'ext-did-0002-custom' created by 'pbx_config' ]
  '409505' =>       hint: PJSIP/409505,CustomPresence:409505      [extensions_custom.conf:9]

В телефоне для BLF он и был указан и на чансипе работало:
Снимок экрана (1220).png
Снимок экрана (1220).png (2.43 KIB) Просмотров: 1338

Необходимые модули в системе загружены.
Изображение
Аватар пользователя
Kroteg
 
Сообщений: 162
Зарегистрирован: 11 янв 2018, 14:51

Re: PJSIP и BLF

Сообщение ded » 04 фев 2020, 15:49

Судя по описанию - это не внешний транк, это внутренний абонент PJSIP/409505 (во внешнем мире).
Определения: транк - внешняя трубочка, туда можно отправлять много разных вызовов номеров: 4095ХХ, 123456, или +79012345678 например.
Внутренний абонент, экстен - образно один номер 409505, и всё. В терминологии Н.323 - это терминал, а транк - это шлюз.

Посмотри через debug - SIP пакеты, должны бегать SUBSCRIBE, с приложениями, согласно RFC 3863 PIDF+XML, или XPIDF+XML.
ded
 
Сообщений: 14616
Зарегистрирован: 26 авг 2010, 19:00

Reшено: PJSIP и BLF

Сообщение Kroteg » 05 фев 2020, 14:16

Всё оказалось гораздо проще. После правки на
Код: выделить все
[from-pstn-custom]
exten => 409,hint,PJSIP/409505,CustomPresence:409505

Мне Астер выругался в кли:
Код: выделить все
[2020-02-05 15:03:47] NOTICE[28704]: res_pjsip_exten_state.c:418 new_subscribe: Endpoint '102' state subscription failed: Extension '409' does not exist in context 'from-internal' or has no associated hint

Откуда становится ясно что подписчик и отслеживаемый должны быть в одном контексте. Вот и добавляю хинт в контекст
Код: выделить все
[from-internal-custom]
exten => 409505,hint,PJSIP/409505,CustomPresence:409505

И после релоада диалплана пожалуйста - BLF моргает, Watchers сменился на 1.
Изображение
Аватар пользователя
Kroteg
 
Сообщений: 162
Зарегистрирован: 11 янв 2018, 14:51

Re: PJSIP и BLF

Сообщение ded » 05 фев 2020, 15:39

1) А почему [from-pstn-custom] ?
По идее, если экстен добавлен в вэб-интерфейсе, то эта строчка должа сама появиться в extensions_additional.conf для абонента 409505?
exten => 409505,hint,PJSIP/409505,CustomPresence:409505

2) А почему [ext-did-0002-custom] ? зачем он во внешнем мире, где DIDs?
ded
 
Сообщений: 14616
Зарегистрирован: 26 авг 2010, 19:00

Re: PJSIP и BLF

Сообщение Kroteg » 05 фев 2020, 16:40

1) Почему-то freepbx не желает создавать хинты для внешних номеров.
2) Потому что внешние DID в конечном итоге и обитают в ext-did-0002
Изображение
Аватар пользователя
Kroteg
 
Сообщений: 162
Зарегистрирован: 11 янв 2018, 14:51

Re: PJSIP и BLF

Сообщение ded » 05 фев 2020, 17:07

Внешние (со стороны from-trunk, from-pstn) пиры по логике Создателей - транки, шлюзы, софтсвичи и операторские АТС, мониторить их статус через hints полагаю не задумывалось ввиду неоднородности, а в случае с SIP - соответствие RFC 3863 под большим вопросом.
И почему телефонный аппарат - как внешний DID? У меня реально - ступор.
Мониторить состояние внутренних номеров через BLF - понимаю, а мониторить внешний шлюз по BLF - не понимаю. Сообщение
Endpoint '102' state subscription failed: Extension '409' does not exist in context 'from-internal'
говорит об endpoint 102, об 409 extension, каким боком туда внешний DID =409505?
ded
 
Сообщений: 14616
Зарегистрирован: 26 авг 2010, 19:00

PJSIP и BLF

Сообщение Kroteg » 06 фев 2020, 10:29

По порядку: видимо да - "мониторить" таким образом внешние номера и не планировали, но до этого было настроено на аппарате и удобно знать что поступил вызов и пока "висит" на IVR.
Телефонный аппарат - внутренний, на скриншоте настройки BLF (если речь о скриншоте).
А про последнее: если углубиться в документацию Астериска, то синтаксис хинтов выглядит:
Код: выделить все
exten = 6001,hint,SIP/Bob-mobile&SIP/Bob-desk
или
exten => 1000,hint,PJSIP/alice,CustomPresence:alice

т.е. экстен можно обозвать хоть 666 и через него отслеживать эндпойнт (например PJSIP/105), вот и проверял уже больше от безысходности, что, однако, натолкнуло на верное решение.
Изображение
Аватар пользователя
Kroteg
 
Сообщений: 162
Зарегистрирован: 11 янв 2018, 14:51


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

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

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

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