Настройка Asterisk

Подробные руководства и справочные материалы по настройке Asterisk. Документация постоянно обновляется и дополняется.

Установка

Asterisk работает под управлением операционных систем Linux и FreeBSD. Доступны установка из бинарных файлов и компиляция из исходного кода. Также существует множество дистрибьютивов Linux с уже готовым к работе предустановленным Asterisk и FreePBX.
Инструкции по установке Asterisk для различных дистрибьютивов Linux:

Конфигурационные файлы Asterisk

Большинство настроек Asterisk контролируются с помощью конфигурационных файлов, расположенных в директории /etc/asterisk. Синтаксис конфигурационных файлов Asterisk разработан для редактирования вручную и имеет простую и понятную структуру. Категории или по иному контексты группируют свойства объектов и отделяют их друг от друга именами в квадратных скобках по принципу наследования. Все, что записано после имени контекста относится к нему, пока не появится следующее имя контекста в квадратных скобках. Практически в каждом кофиге встречается категория [general], которая задает параметры для всех объектов конфигурационного файла. Параметры объектов имеют приоритет над глобальными параметрами, если одинаковый параметр, может быть назначен, как глобально, так и конкретному объекту. Некторые конфиги имеют только заранее определенные секции, например asterisk.conf отвечающий за общие настройки pbx. Но в большинстве случаев, для назначения объектов, создаются контексты и задаются их имена. Приведенные ниже примеры конфигов Asterisk 14 с описанием параметров, переведены и дополнены авторами сайта.

Realtime архитектура Asterisk

Реалтайм Архитектура Asterisk - набор драйверов и функций для конфигурации в режиме реального времени. Существует два типа конфигурации - статический и динамический: - Статический хранит конфигурации в БД, как конфигурационные файлы и также обновляет данные при перезагрузке модулей. - Динамический используется для создания и обновления объектов в режиме реального времени, при совершении вызовов

Каналы связи в Asterisk

SIP

Под каналами связи в Asterisk подразумевается набор драйверов для взаимодействия с устройствами и протоколами связи. Так как Asterisk в первую очередь VoIP АТС ключевое значение имеют драйвера взаимодействия с VoIP протоколами, в частности с SIP протоколом. Изначально в Asterisk был один драйвер SIP протокола chan_sip. Но его реализация была неполной и в конкуренции с FreeSWITCH, который имел более продвинутый SIP драйвер, в Asterisk начиная с версии 12, был включен новый драйвер SIP - chan_pjsip.
Поддержка старого драйвера сохраняется и оба драйвера могут действовать совместно.
Однако предпочтительней использовать новый драйвер PJSIP.

IAX

Также в Asterisk реализован собственный VoIP протокол - IAX (Inter Asterisk Exchange). Как и следует из названия, он в первую очередь ориентирован на создание каналов связи между серверами Asterisk. IAX имеет упрощенную структуру, используя один и тот же порт для сигнализации и медиа, что в теории упрощает прохождение NAT и экономит трафик, однако в современных условиях и с появлением PJSIP его преимущества не завоевали ему популярности.

h323

Поддержка устаревшего VoIP протокола h323 может понадобиться для интеграции с устаревшими АТС, например Avaya CSI.

DAHDI

Драйвер DAHDI поддерживает большую линейку устройств, таких как платы потоков ISDN PRI E1, FXO, FXS и GSM интерфейсов.

Local

Прокси - псевдо канал Asterisk, позволяющий вызывать канал любой технологии без явного ее указания.

NAT SIP Asterisk

Руководства по настройке Asterisk для работы за NAT.

План набора Asterisk

Для понимания Asterisk очень важен - диалплан (dialplan).
Диалплан направляет каждый звонок от его источника, с помощью различных приложений,
в пункт назначения. Все вызовы, будь-то голосовая почта, конференция, меню автосекретаря
или вызов телефона, определяются логикой и концепцией диалплана.
Русская документация мануал по dialplan Asterisk

Команды диалплана Asterisk

Функции диалплана Астериск

Asterisk Dialplan functions

Функции Asterisk используются в диалплане. Это не команды диалплана и не могут быть использованы прямо. Функции возвращают значение для дальнейшего использования в логике диалплана.

Очереди и Агенты Asterisk

Очередями в Asterisk называется механизм ACD (automated call distribution) для распределения входящих вызовов между агентами колл центра. Конфигурация очередей осуществляется в файле Asterisk настройка очереди - queues.conf, имена очередей вызовов используются в качестве аргумента команды Queue в файле конфигурации плана набора extensions.conf. Интерфейсы операторов назначаются параметром очереди - member. Агенты, которые обрабатывают вызовы, поступающие в очередь, могут быть заданы в файле Asterisk: agents.conf.

Шифрование в Asterisk

Конференции Asterisk

Asterisk позволяет организовать телеконференции с неограниченным числом пользователей.

Абонентские функции Asterisk

В файле features.conf назначаются пользовательские коды абонентских функций Asterisk и опции абонентских функций, такие как:
Переадресация вызова(transfer), перехват вызова (pickup), запись по требованию (record on demand), таймауты между набора и переадресации (digit timeout), паркинг (park) и др.

Отчеты о звонках Asterisk

Детализированный отчет о звонках (CDR) backend для сохранения данных о входящих, исходящих и внутренних вызовах Asterisk. Полное описание на русском языке CDR, MySQL, ODBC etc.

Логи в Asterisk

CLI - интерфейс командной строки Asterisk.

Командная строка является мощным инструментом для мониторинга и управления работой Asterisk PBX

Asterisk AMI

Asterisk manager Interface - интерфейс управления.

Asterisk Call Files - Автообзвон

Asterisk имеет возможность инициировать вызовы по команде извне при помощи dialplan, AMI и Call files (spooling interface). Call files позволяют инициировать вызов, поместив в директорию (по умолчанию /var/spool/asterisk/outgoing/) файл с определенным содержимым. Этот метод позволяет создавать эффективные системы обзвона абонентов.

Asterisk ARI

Настроим Asterisk, Freeswitch, Call Center

  • asterisk/asterisk.txt
  • Последние изменения: 2022/01/11