Инструменты пользователя

Инструменты сайта


asterisk:agi_ami_ari

Asterisk Manager Interface(AMI)

AGI AMI ARI

В Астериск есть несколько програмных интерфейсов для связи с внешними программами:

  • AGI (Asterisk Gateway Interface) позволяет Asterisk запустить внешнюю программу, написанную на любом языке, для контроля над каналами связи, воспроизведением аудио, чтения DTMF сигналов и др., связываясь с Asterisk через стандартный потоковый ввод/вывод.
  • AMI (Asterisk Manager Interface) - это асинхронный интерфейс, позволяющий контролировать внутреннее состояние объектов в Asterisk, и получать информацию о происходящих событиях.
  • ARI (Asterisk REST Interface) предоставляет RESTful-интерфейс для получения информации от Астериск и управления его объектами.

Какие из этих технологий подойдут для получения информации и управления Астериском?

AGI предназначен в основном для расширения возможностей диалплана.

ARI - перспективно выглядит: удобна для вызова из веб-ориентированых программ, но к сожалению видимо пока еще недостаточно развита. Слишком мало действий, которые можно через ARI совершить. При всем многообразии объектов Астериск, слишком мало что можно с ними сделать через REST-интерфейс. ARI среди всех рассматриваемых интерфейсов самый молодой и надеюсь еще разовьется.

AMI - имеет немного странный способ обмена информацией между внешней программой и Астериск (думаю по этому и родилась идея создать REST-интерфейс), но по возможностям пока что эта технология наиболее развита.

Исходя из вышесказанного я рассмотрю в своих примерах программ только AMI (до момента, когда, я надеюсь, ARI будет уметь больше)

Использованные источники:

Создание хелпа по командам AMI

Средства обращения к AMI

Разбор системы запросов и ответов AMI

asterisk/agi_ami_ari.txt · Последнее изменение: 2020/02/14 11:33 — 127.0.0.1

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki