3.5. Die Variable ${EXTEN} und die Funktion ${CALLERID(num)}
Obwohl wir im Buch erst später über Variablen (siehe Abschnitt 6.1.2, „Variablen“) und Funktionen (siehe Anhang D, Funktionen im Dialplan) sprechen, möchte ich zwei sehr einfache und
intuitiv zu benutzende Elemente schon hier vorstellen. Es handelt sich um
die Systemvariable
${EXTEN}
und die Funktion
${CALLERID(num)}
.3.5.1. ${EXTEN}
In der Systemvariable
${EXTEN}
wird von Asterisk
automatisch die gewählte Rufnummer (also die Extension) gespeichert.
Mann kann also in der extensions.conf
anstattexten => 2000,1,Dial(SIP/2000)auch einfach
exten => 2000,1,Dial(SIP/${EXTEN})schreiben. Bei einer Zeile ist das natürlich noch wenig sinnvoll, aber wenn man diese Funktionalität mit Pattern Matching (siehe Abschnitt 3.3.1, „Syntax“) kombiniert, dann kann man sehr viel Zeit und Aufwand sparen und bekommt zusätzlich auch noch eine viel übersichtlichere Konfiguration.
Um somit alle SIP-Telefone mit den Durchwahlen 2000 bis 2999 in
der
extensions.conf
anwählbar zu machen, reicht
folgende Zeile:exten => _2XXX,1,Dial(SIP/${EXTEN})
Tipp
Eine ausführliche Beschreibung zum Thema Variablen finden Sie
unter Abschnitt 6.2, „Variablen“.
3.5.2. ${CALLERID(num)}
Der Funktionsaufruf
${CALLERID(num)}
gibt als
Ergebnis die Nummer des Anrufers aus. Dies ist besonders bei der
Applikation VoiceMailMain()
praktisch, da man dort als
ersten Parameter die gewünschte Mailboxnummer angeben kann. So könnte
man mit folgendem Dialplan-Eintrag eine komfortable Abfrage der
Voicemailbox realisieren:exten => 99,1,VoiceMailMain(${CALLERID(num)})
Tipp
Eine ausführliche Beschreibung zur Funktion ${CALLERID(num)}
finden Sie unter Abschnitt D.8, „
CALLERID()
“.