Доступ к AMI

Asterisk Manager Interface (AMI) - мощный и удобный программный интерфейс (API) Asterisk для управления системой из внешних программ. Благодаря AMI внешние программы могут осуществлять соединения с Asterisk посредством TCP протокола, инициировать выполнение команд, считывать результат их выполнения, а так же получать уведомления о происходящих событиях в реальном времени. AMI часто используют для интеграции с бизнес-процессами и системами, программным обеспечением CRM (Customer Relationship Managment — управление взаимодействия с клиентами). Управление Asterisk часто осуществляется из консоли CLI, но при использовании AMI не требуется прямой доступ к серверу, на котором запущен Asterisk. AMI — это наиболее простой инструмент, который в руках разработчика может оказаться очень мощным и гибким средством для интеграции с другими программными продуктами. Он дает возможность разработчикам использовать информацию, генерируемую Asterisk, в реальном масштабе времени.

Первое что необходимо сделать, это включить AMI и завести пользователя, с помощью которого клиентская программа будет аутентифицироваться. «Система» - «Доступ к AMI»

Для добавления новой учетной записи необходимо указать Имя пользователя и Пароль. Кроме того, необходимо задать Сетевой фильтр, т.е. из какой подсети разрешено подключение к пользователю AMI. Вы можете разрешить подключения с любых адресов, либо указать конкретную сеть, настройку который Вы произвели в разделе Сеть и FirewallСетевой экран.

Опции и права пользователя AMI

Права пользователя AMI, устанавливаемые в секции [user] конфигурационного файла /etc/asterisk/manager.conf

Идентификатор правЧтениеЗапись

System

Чтение общей информации о системе, например, уведомления о перезагрузке конфигурации

Позволяет пользователю выполнять Asterisk системы управления такими командами, как Restart, Reload, или Shutdown. Это разрешение также предоставляет пользователям возможность запускать системные команды за пределами Asterisk. Предоставление такого разрешения эквивалентно предоставлению доступа к командной оболочке, с правами пользователя / группы, под которыми запущен процесс Asterisk

Call

Чтение события о каналах в системе

Позволяет пользователю устанавливать информация на каналах

Log

Предоставляет пользователю доступ к чтению логов

Только чтение

Verbose

Предоставляет пользователю доступ к чтению подробных логов

Только чтение

Agent

Чтение событий статуса агентов из app_queue и chan_agent модулей

Позволяет пользователю выполнять действия для управления и получения состояния очередей и агентов

User

Доступа к пользовательским событиям, а также событиям Jabber / XMPP пользователей

Позволяет пользователю выполнять команду UserEvent, для создания пользовательских событий

Config

Только для записи

Позволяет пользователю получать, обновлять и перегружать файлы конфигурации

Command

Только для записи

Позволяет пользователю выполнять команды Asterisk CLI из AMI

Dtmf

Позволяет пользователю получать события DTMF

Только чтение

Reporting

Доступ к событиям качества звонка, таким как jitterbuffer или RTCP

Позволяет пользователю выполнять ряд действий для получения статистики и информации о состоянии всей системы

Cdr

Чтение событий записи данных в CDR

Только чтение

Dialplan

Чтение событий установки переменных диалплана, создания экстенов

Только чтение

Originate

Только для записи

Разрешение пользователю выполнять команду Origitate, которая отправляет запрос на создание нового звонка

Last updated