В данной статье будет рассмотрен модуль Asterisk CLI – Command Line Interface, другими словами – консоль Asterisk. Данный инструмент является многоцелевым и может выполнять следующие функции:
- Получение информации о системных компонентах Asterisk
- Настройка системной конфигурации
- Просмотр логов, ошибок и предупреждений в реальном времени
- Генерация звонков в целях проведения тестов
- Просмотр расширенной документации – для API, приложений, функций, настройки модулей и так далее.
Далее рассмотрим процесс вызова консоли – есть несколько путей.
ЧЕРЕЗ ВЕБ-ИНТЕРФЕЙС FREEPBX
Для этого необходимо открыть веб-интерфейс Вашей АТС и далее пройти по следующему пути: Admin –> Asterisk CLI
После этого откроется страница, на которой можно вводить команды.
ПО SSH
С помощью удаленного доступа – по SSH\Telnet с использованием терминала (к примеру, PuTTy). При таком типе подключения необходимо будет ввести логин и пароль, и затем ввести команду:
[root@localhost ~]#asterisk -rvvvv
Примечание: Количество букв «v» означает уровень логирования в CLI. Т.е чем больше букв – тем больше информации будет «сыпаться» на экран.
Как только был получен доступ, возможно будет вывести следующую информацию:
- Телефонные звонки
- Регистрацию абонентов
- Уведомления о появлении новых абонентов
- Запросить перезагрузку системных компонентов (экстеншенов, транков и т.д)
Все команды имеют следующий синтаксис:
module name -> action type -> parameters (Название модуля –> Тип действия -> Параметры)
К примеру – команда sip show peers, которая выведет список зарегистрированных chan_sip абонентов.
Если же ваша АТС работает некорректно – к примеру, Asterisk не стартует вообще, стоит попробовать вызвать консоль с другим набором настроек, которые позволят начать специфическую отладку приложений – логирование порядка загрузки, соединения с базой данной, количества попыток регистрации и прочее.
Кроме того, есть возможность запускать команды CLI без непосредственного ввода команд, описанных выше. Для этого необходимо напрямую обратиться к модулю Asterisk:
[root@localhost ~]#asterisk -rx 'reload now'
К примеру, данная команда перезагрузит весь модуль Asterisk.
САМЫЕ НУЖНЫЕ КОМАНДЫ
Ниже будут приведены описания некоторых часто используемых команд:
localhost*CLI>DIALPLAN SHOW \\ вывод вашего диалплана (правила маршрутизации вызовов)
localhost*CLI>CORE SHOW TRANSLATION \\ вывод таблицы с методами транскодирования кодеков
localhost*CLI>SIP SET DEBUG PEER PHONE_EXT \\ запуск отладки определенного экстеншена (с указанием номера экстеншена)
localhost*CLI>SIP SET DEBUG IP PEER_IP \\ запуск отладки определенного абонента по его сетевому адресу
localhost*CLI>SIP SET DEBUG OFF \\ отключение режима отладки
localhost*CLI>RELOAD \\ перезагрузка модуля Asterisk, не всей АТС целиком. Может использоваться после внесения измерений
localhost*CLI>RESTART NOW \\ перезагрузка всей системы в целом, может понадобиться если команды reload недостаточно или в целях регулярной плановой перезагрузки.
Главная команда, которую нужно усвоить – help, она выводит все прочие команды. Очень удобный внутренний инструмент.