Während AMI gut für die Anrufsteuerung und AGI gut dafür geeignet ist, einem entfernten Prozess die Ausführung von Dialplan-Anwendungen zu ermöglichen, war keine dieser APIs dafür ausgelegt, dass ein Entwickler seine eigene benutzerdefinierte Kommunikationsanwendung erstellen kann.
Die Asterisk RESTful Interface (ARI) wurde entwickelt, um diese Probleme zu lösen.
ARI ist eine asynchrone API, die es Entwicklern ermöglicht, Kommunikationsanwendungen zu erstellen, indem sie die Objekte in Asterisk (channels, bridges, endpoints, media) durch eine intuitive REST-Schnittstelle zur Verfügung stellen. Der Zustand der vom Benutzer gesteuerten Objekte wird über JSON-Ereignisse über einen WebSocket übermittelt.
ARI ist standardmäßig ausgeschaltet. Die Konfiguration erfolgt über http.conf und ari.conf
/etc/asterisk/http.conf
/etc/asterisk/ari.conf
Wenn Du ARI nicht benötigst, musst Du im ari.conf den Eintrag enabled = no
setzen!