В Астериск есть несколько програмных интерфейсов для связи с внешними программами:
Какие из этих технологий подойдут для получения информации и управления Астериском?
AGI предназначен в основном для расширения возможностей диалплана.
ARI - перспективно выглядит: удобна для вызова из веб-ориентированых программ, но к сожалению видимо пока еще недостаточно развита. Слишком мало действий, которые можно через ARI совершить. При всем многообразии объектов Астериск, слишком мало что можно с ними сделать через REST-интерфейс. ARI среди всех рассматриваемых интерфейсов самый молодой и надеюсь еще разовьется.
AMI - имеет немного странный способ обмена информацией между внешней программой и Астериск (думаю по этому и родилась идея создать REST-интерфейс), но по возможностям пока что эта технология наиболее развита.
Исходя из вышесказанного я рассмотрю в своих примерах программ только AMI (до момента, когда, я надеюсь, ARI будет уметь больше)
Использованные источники: