1002] (sets) maibox=1002
Это одна из самых малоизвестных возможностей создания конфигурационного файла. Очень немногие пользуются этой возможностью, но лишь потому, что мало кто знает о ней. Итак, пришло время перемен. С этого момента мы хотим видеть, что шаблонами пользуются все; и да, мы будем проверять.
Отладка
В Asterisk предлагается несколько методов отладки. Подключившись к консоли, можно управлять отладкой и уровнем детальности сообщений, а также трассировкой пакетов протокола. В данном разделе рассмотрим доступные варианты.
Подключение к консоли
Чтобы подключиться к консоли Asterisk, можно или запустить сервер непосредственно из консоли (в этом случае невозможно будет выйти из консоли, не завершив работу Asterisk), или запустить Asterisk как демон и затем подключиться к удаленной консоли.
Чтобы запустить процесс Asterisk непосредственно из консоли, используйте флаг консоли: # /usr/sbin/asterisk -c
Чтобы подключиться к удаленной консоли, сначала запустите демон, а затем выполните подключение, используя флаг -r:
# /usr/sbin/asterisk
# /usr/sbin/asterisk -r
Если какой-то модуль не загружается или Asterisk не загружается из- за какого-то модуля, запустите Asterisk с флагом -c, чтобы отслеживать статус загружаемых модулей. Например, если при попытке загрузить драйвер канала OSS (который позволяет использовать канал CONSOLE (консоль)) Asterisk не может открыть /dev/dsp, при запуске будет получено сообщение о такой ошибке:
WARNING[32174]: chan_oss.c:470 soundcard_init: Unable to open /dev/dsp:
No such file or directory
== No sound card detected -- console channel will be unavailable
== Turn off OSS support by adding 'noload=chan_oss.so' in /etc/asterisk/ modules.conf
WARNING[32174]: chan_oss.c:470 soundcard_init: Не получается
открыть /dev/dsp:
Файл или каталог не существует
== Звуковая карта не найдена - канал консоли будет недоступен
== Отключите поддержку OSS, добавив 'noload=chan_oss.so' в /etc/asterisk/modules.conf
Изменение детальности сообщений и включение отладки
Asterisk может выводить отладочную информацию в форме сообщений WARNING (предупреждение), NOTICE (извещение) и ERROR (ошибка). Эти сообщения предоставляют информацию о системе, такую как регистрационные данные, статус, последовательность вызовов и другие полезные сведения. Обратите внимание, что сообщения WARNING и NOTICE не являются сообщениями об ошибках; а вот к сообщениям ERROR необходимо относиться внимательно. Уровень детальности сообщений можно задать с помощью команды set verbose и числового значения. Диапазон допустимых значений - от 3 до 10. Например, чтобы задать самый высокий уровень детальности, используется команда
# set verbose 10
Также можно активировать вывод основных сообщений отладки с помощью команды set debug и числового значения. Чтобы активировать вывод сообщений DEBUG (отладка) в консоли, возможно, понадобится в файле logger.conf добавить debug в выражение console =>:
console => warning,notice,error,event,debug Диапазон допустимых значений для set debug - от 3 до 10. Например:
# set debug 10
Заключение
Проработав все разделы данной главы, вы должны получить пару сконфигурированных аналоговых интерфейсов, локальные каналы SIP и IAX2, подключенные к программному и/или аппаратному телефону, и иметь возможность передавать вызовы через серверы по протоколам SIP и IAX2. Эти настройки элементарны, но благодаря им мы имеем функциональные каналы, с которыми можно работать. Мы будем использовать их в следующих главах, пока не научимся создавать более функциональные диалпланы.5
Основы диаллана
Диалплан, поистине, - сердце любой системы Asterisk, поскольку он определяет, как Asterisk обрабатывает входящие и исходящие вызовы. По сути, он состоит из списка инструкций или шагов, которым будет следовать Asterisk. В отличие от традиционных систем телефонной связи, диалплан Asterisk является полностью настраиваемым. Чтобы добиться успеха в построении собственной системы Asterisk, необходимо понять концепцию диалплана.