Kapitel 18. Asterisk Gateway Schnittstelle

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Koffein. Die Einstiegsdroge.

Eddie Vedder

Der Asterisk Dialplan hat sich zu einer einfachen, aber leistungsstarken Programmierschnittstelle für die Anrufbearbeitung entwickelt. Viele Menschen, vor allem diejenigen mit einem Programmierhintergrund, ziehen es jedoch vor, die Rufbearbeitung in einer traditionellen Programmiersprache zu implementieren. Das Asterisk Gateway Interface (AGI) ermöglicht die Entwicklung von First-Party Call Control in der Programmiersprache deiner Wahl.

Schnellstart

In diesem Abschnitt findest du ein kurzes Beispiel für die Verwendung des AGI.

Zuerst erstellen wir das Skript, das wir ausführen wollen. AGI-Skripte werden normalerweise in /var/lib/asterisk/agi-bin gespeichert.

$ cd /var/lib/asterisk/agi-bin

$ vim hello-world.sh

#!/bin/bash

# Consume all variables sent by Asterisk
while read VAR && [ -n ${VAR} ] ; do : ; done

# Answer the call.
echo "ANSWER"
read RESPONSE

# Say the letters of "Hello World"
echo 'SAY ALPHA "Hello World" ""'
read RESPONSE

exit 0

$ chown asterisk:asterisk hello-world.sh

$ chmod 700 hello-world.sh

Füge nun die folgende Zeile zu /etc/asterisk/extensions.conf in deinem [sets] Kontext hinzu:

exten => 237,1,AGI(hello-world.sh)

Wenn du die Durchwahl 237 anrufst, solltest du hören, wie Allison "Hello World" buchstabiert.

AGI-Varianten

Es gibt einige Varianten von AGI, die ...

Get Asterisk: The Definitive Guide, 5. Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.