Kapitel 7. AEL

Asterisk Extension Language

Philipp Kempgen

Stefan Wintermeyer

Seit Asterisk 1.4 haben Sie die Möglichkeit, den aus Kapitel 3, Dialplan – die Grundlagen und Kapitel 6, Programmieren im Dialplan bekannten Dialplan nicht nur im Format extensions.conf zu schreiben, sondern Sie können sich alternativ auch für AEL, die Asterisk Extension Language, entscheiden. Die Datei dafür heißt extensions.ael.
AEL ist vor allem für diejenigen interessant, die sich immer schon geärgert haben, dass eine größere extensions.conf schwer zu lesen ist. AEL ähnelt mehr einer richtigen Skript-Programmiersprache. Übrigens schließen sich extensions.conf und extensions.ael nicht gegenseitig aus, man kann auch beide benutzen, also Kontexte in der einen oder in der anderen Datei definieren. Wenn beide Dateien vorhanden sind, überschreibt die extensions.conf Teile, die in der extensions.ael parallel vorhanden sind.
Hier ein kleiner Vorgeschmack:
extensions.confextensions.ael
[meine-telefone]
exten => 20,1,Answer()
exten => 20,n,Playback(beep)
exten => 20,n,Hangup()
context meine-telefone {
  20 => {
    Answer();
    Playback(beep);
    Hangup();
  }
}
Es sei auch auf das bei Asterisk mitgelieferte Kommandozeilen-Werkzeug aelparse hingewiesen, mit dem Sie jederzeit seine extensions.ael wieder in das extensions.conf-Format konvertieren können. Wir werden später noch darauf eingehen (siehe Abschnitt 7.2, „aelparse“).

Anmerkung

Am Rande sei noch gesagt, dass hier, wie bei Asterisk üblich, mit AEL immer AEL2 gemeint ist, denn die erste Version war nur ein experimenteller Versuch.