На АТС (Asterisk) определите, какие телефоны подключены

1

Я использую Asterisk в качестве своей АТС. На моем sip.conf Я имел обыкновение включать эту опцию:

[general]
...
qualify=yes

больше информации о квалификации можно найти в ВОТ ,

Благодаря этой опции я смог сказать, были ли телефоны (одноранговые) подключены или нет. Когда я управлял командой sip show peers на звездочке CLI я смог увидеть, какие телефоны были подключены и какие телефоны отключены (недоступно).

По какой-то причине qualify=yes вариант давал мне много проблем. Телефоны были отключены и переподключены. По этой причине несколько звонков были потеряны. Это привело меня к месту qualify=no на моем sip.conf.

Итак, теперь, когда я отключил квалификационный параметр, я пытаюсь найти способ определить, достижимы ли одноранговые узлы или нет. Возможно, есть способ отправить сообщение пинга пиру? , Например, я могу позвонить сверстнику, и если звонит телефон, я знаю, что он подключен. Но как я могу сделать это без необходимости звонить по телефону?

Обратите внимание, что АТС находится в облаке (общедоступный ip). Пиры находятся внутри сети. Поэтому я вижу один и тот же публичный IP-адрес для всех пиров.

Tono Nam
источник
Может быть qualify=60 или какое-то большее число все еще делает работу?
harrymc
Какую реализацию SIP вы используете? chan_sip или же chan_pjsip
user3788685
1
sip notify это способ "пинговать" sip-клиента, но он отправляет сообщение NOTIFY вместо ICMP ECHO. Если вы установили отладку достаточно высоко, вы можете увидеть ответ.
ssnobody
@ user3788685 chan_sip
Tono Nam
Я думаю, что решение может быть sip notify Собираюсь попробовать @ssnobody. Спасибо!
Tono Nam