Bobr.pw - Бобровая сила

Отладка SIP протокола в Asterisk

Если Вам необходимо увидеть SIP сообщения приходящие от пира, и какие сообщения отсылает Ваш сервер ему, то на сервере надо выполнить следующую команду: "asterisk -rx "sip set debug peer SIPuserID"" SIPuserID соответственно меняете на имя SIP аккаунт пользователя. Здесь важно учесть, что сервер Asterisk должен знать IP пользователя, другими словами пользователь должен быть зарегистрирован или у него в настройках должен быть прописал IP.

Если Вам известен IP пользователя, но неизвестно имя пользователя, то можно воспользоваться командой "asterisk -rx "sip set debug ip 192.168.1.1"". Для просмотрах всех отправляемых/получаемых SIP сообщений выполните "asterisk -rx "sip set debug on"".

Просмотреть результат выполнения можно двумя вариантами:

Консольный вариант. Заходим в CLI консоль командой: "asterisk -r". Данный способ быстрой, но на мой взгляд не очень удобный, так как лог бежит быстро и нет возможности поиска. Такой способ подходит для определения приходят ли сообщения вообще.
Файл лог. Открываем файл логов asterisk /var/log/asterisk/messages и смотрим в нём всё что нам необходимо. При необходимости можем скопировать файл и часть файла.
После завершения просмотра SIP сообщений не забудьте отключить отладку командой: "asterisk -rx "sip set debug off"". В случае, если не получается выполнить какую либо команду из-за нехватки прав, перед командой пишите "sudo".

Отладка плана набора (DialPlan) в Asterisk

Для запуска отладки плана набора или DialPlan выполните команду: "asterisk -rx "core set verbose 3"" Уровень verbose говорит asterisk насколько подробно ему сообщать о своих действия, уровня 3 вполне достаточно для анализа прохождения звонка. После запуска отладки сделайте звонок и все сведения о нём попадут в файл логов /var/log/asterisk/messages. По файлу выполните поиск номера, нас интересует строка, которая начинается с Executing. В этой сроке будут описаны действия из файл extensions.conf. Продолжайте поиск пока не дойдете до последней инструкции, в ней скорее всего и есть ошибка.

Так же после отладки не забываем отключить её. "asterisk -rx "core set verbose off"" или "asterisk -rx "core set verbose 0"".

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