Я использую Asterisk в качестве своей АТС. На моем sip.conf
Я имел обыкновение включать эту опцию:
[general]
...
qualify=yes
больше информации о квалификации можно найти в ВОТ ,
Благодаря этой опции я смог сказать, были ли телефоны (одноранговые) подключены или нет. Когда я управлял командой sip show peers
на звездочке CLI я смог увидеть, какие телефоны были подключены и какие телефоны отключены (недоступно).
По какой-то причине qualify=yes
вариант давал мне много проблем. Телефоны были отключены и переподключены. По этой причине несколько звонков были потеряны. Это привело меня к месту qualify=no
на моем sip.conf.
Итак, теперь, когда я отключил квалификационный параметр, я пытаюсь найти способ определить, достижимы ли одноранговые узлы или нет. Возможно, есть способ отправить сообщение пинга пиру? , Например, я могу позвонить сверстнику, и если звонит телефон, я знаю, что он подключен. Но как я могу сделать это без необходимости звонить по телефону?
Обратите внимание, что АТС находится в облаке (общедоступный ip). Пиры находятся внутри сети. Поэтому я вижу один и тот же публичный IP-адрес для всех пиров.
chan_sip
или же chan_pjsip
sip notify
это способ "пинговать" sip-клиента, но он отправляет сообщение NOTIFY вместо ICMP ECHO. Если вы установили отладку достаточно высоко, вы можете увидеть ответ.
sip notify
Собираюсь попробовать @ssnobody. Спасибо!
qualify=60
или какое-то большее число все еще делает работу?