Springe zu: Hauptnavigation, Themennavigation, Seiteninhalt, Spezielle Seiten

Einen Anrufbeantworter bereitstellen

In diesem Artikel werden wir einen Anrufbeantworter für die SIP-Telefone einrichten. Da es sich bei unserem Anrufbeantworter um keinen echten Hardware-Anrufbeantworter handelt, nennt man einen virtuellen Anrufbeantworter auch Voicemail-System. Das Voicemail-System bietet Funktionen, die man aus dem Mobilfunkbereich kennt, wie das Archivieren abgehörter Nachrichten.

Allgemeine Einstellungen vornehmen

Im Verzeichnis /etc/asterisk liegt die Datei voicemail.conf, die neu erstellt wird und vorher in das Sicherungsverzeichnis verschoben wird:

debian:~# cd /etc/asterisk
debian:/etc/asterisk# mv voicemail.conf /backup/asterisk/etc/asterisk/
debian:/etc/asterisk#

Die Datei besteht aus mehreren Abschnitten. Im Abschnitt [general] werden globale Einstellungen vorgenommen. Der Abschnitt [zonemessages] definiert, wie Datum und Uhrzeit für erhaltene Nachrichten vorgelesen werden sollen. In Deutschland bevorzugt man die Ansage im 24-Stunden-Format, während zum Beispiel in England das 12-Stunden-Format verwendet wird. Danach folgt mindestens ein Context, der die Mailboxen der SIP-Telefone enthält. Wir verwenden hier den Context [default], da dies die Nutzung des Voicemail-Systems aus dem dialplan erleichtert.

Eine minimale aber ausreichende Datei sieht zum Beispiel so aus:

[general]
format=wav
tz=germany

[zonemessages]
germany=Europe/Berlin|'vm-received' Q 'digits/at' kM

[default]
7424 => 25299,Simon Bienlein

Die nachrichten werden im WAV-Format gespeichert. Für die Ansage von Datum und Uhrzeit wird die Zeitzone germany verwendet, die im Abschnitt [zonemessages] genauer definiert wird.

Dabei hat eine Zeile folgende Syntax:
<Zonename>=<Region>/<Stadt>|<Format>

Die spitzen Klammern sind durch die tatsächlichen Angaben zu ersetzen. Der Zonename sollte nur aus Ziffern, Buchstaben, dem Bindestrich (-) oder Unterstrich (_) bestehen. Infos über verfügbare Region- und Städtenamen sind im Verzeichnis /usr/share/zoneinfo an der Verzeichnis- und Dateistruktur zu erkennen. Das Format legt fest, welche Dateien abgespielt und wie Datum- und Uhrzeit vorgelesen werden sollen.

Im Abschnitt [default] wird die Mailbox mit der Nummer 7424 definiert und die Mailbox-PIN 25299 festgelegt. Da keine Mails verschickt werden, wäre der Name des Mailboxinhabers nicht unbedingt erforderlich. Die mailboxnummer (im Beispiel 7424) muss auch nicht zwingend zur Extension des IP-Telefons passen. In meinem Beispiel ist es aber praktisch, da so eine Rufnummer zum Abrufen der mailbox eingerichtet werden kann und die Nummer des Anrufers zur automatischen Wahl der abzuhörenden Mailbox verwendet wird.

Anrufer zum Anrufbeantworter leiten

Nun müssen wir im Dialplan dafür sorgen, dass bei einem Anruf auf den Anrufbeantworter weitergeleitet wird, wenn das SIP-Telefon nach 20 Sekunden nicht abgenommen wird oder gar nicht angemeldet ist. Dazu erweitern wir den Aufruf der Dial-Applikation um die Klingelzeit und fügen der Extension den aufruf der Applikation VoiceMail() hinzu. Die angepasste Extension sieht nun so aus:

_ZZZZ => {
    Dial(SIP/${EXTEN},20);
    VoiceMail(${EXTEN},us);
}

Die Parameter us müssen getrennt betrachtet werden. u sagt, dass die Nachricht für den Nichterreichbar-Status (unavailable) abgespielt werden soll. Das s legt fest, dass keine Hinweise zum Hinterlassen einer nachricht abgespielt werden. Der signalton ertönt direkt nach der persönlichen Nachricht, die über das gleich eingerichtete Voicemail-Menü aufgenommen werden kann.

Den Anrufbeantworter abhören

Zum Abhören der Voicemailbox soll von einem SIP-Telefon die 9999 angerufen werden. Die Nummer der abzuhörenden Mailbox wird durch die Nummer des Anrufers ermittelt. Diese kann im Dialplan mit der Variable ${CALLERID(num)} abgefragt werden. Die neue Extension schaut also so aus:

9999 => {
    Answer();
    VoiceMailMain(${CALLERID(num)});
    Hangup();
}

Der Anrufer wird zur Eingabe der persönlichen PIN aufgefordert. Wer diese Abfrage deaktivieren möchte, ändert den Aufruf der VoiceMailMain-Aplikation wie folgt ab:
VoiceMailMain(${CALLERID(num)},s);

Die Option s deaktiviert die PIN-Abfrage.

Datum der Veröffentlichung: Dienstag, 10.11.2009

Nach oben

Diese Seite drucken