In der Datei voicemail.conf
wird das
Voicemailsystem von Asterisk konfiguriert. Es besteht aus 3
Bereichen:
[general]
[zonemessages]
Im Bereich [general]
werden allgemeine
Konfigurationen des Voicemailsystems vorgenommen. Es stehen folgende
Optionen zur Verfügung:
attach = [yes|no]
Legt fest, ob an die Benachrichtigungs-E-Mails an die
Nutzer auch die Sprachnachricht als Sounddatei angehängt wird.
Default: yes
. Normalerweise wird das erste unter
format
eingestellte Format verwendet.
Beispiel:
attach = no
callback = [Context]
Legt einen Context fest, der für Rückrufe aus dem System benutzt wird. Ist dieser Wert nicht gesetzt, was per Default der Fall ist, dann kann der User keine Rückrufe aus dem Voicemailsystem machen.
Beispiel:
callback = intern
charset = [Zeichensatz]
Gibt den Zeichensatz (Charset) vor, in dem die E-Mails vom Voicemailsystem kodiert werden.
Beispiel:
charset = ISO-8859-1
delete = [yes|no]
Definiert, ob eine Sprachnachricht nach dem Versenden per E-Mail automatisch gelöscht werden soll. Dies spart Festplattenplatz auf dem Server, falls man Sprachnachrichten nur per E-Mail empfangen will.
Beispiel:
delete = yes
directoryintro = [Dateiname]
Definiert eine Sprachdatei innerhalb des
Default-Verzeichnisses
/var/lib/asterisk/sounds/
, die anstatt der
normalen Datei für das Dial-by-Name-System abgespielt wird (siehe
„Telefonbuch
(Dial-by-Name)“).
Beispiel:
directoryintro = intro-telefonbuch
emailsubject = [Text der Betreffzeile]
Definiert den Betreff (Subject) einer
Benachrichtigungs-E-Mail. Für Informationen über Variablen siehe
emailbody
.
Beispiel:
emailsubject = Neue Sprachnachricht von
${VM_CALLERID}
pbxskip = [yes|no]
Standardmäßig schreibt Asterisk am Anfang der
Betreffzeile der E-Mail-Benachrichtigung über eine Sprachnachricht
den Text [PBX]:
Dies kann mit yes
unterdrückt werden.
Beispiel:
pbxskip = yes
emailbody = [Text der Email]
Definiert den E-Mail-Body[52] einer Benachrichtigungs-E-Mail (maximal 512 Zeichen).
Im Betreff und im Body einer solchen E-Mail kann auf folgende Variablen zugegriffen werden:
Beispiel:
emailbody = Hallo ${VM_NAME},\n\nSie haben eine
neue Nachricht von ${VM_CALLERID} in Mailbox
${VM_MAILBOX}.
[53]
serveremail = [Absenderadresse]
E-Mail-Adresse, die als Absender der E-Mail vom Voicemailsystem an den User eingestellt wird.
Beispiel:
serveremail =
voicemail@apfelmus-gmbh.de
fromstring = [Absendername]
Definiert den Absender (From
-Header) in
E-Mails vom Voicemailsystem.
Beispiel:
fromstring = AB
mailcmd = [Shell-Befehl]
Definiert das Programm (mit absolutem Pfad und ggf.
Parametern), das zum Versenden von E-Mails benutzt werden soll.
Default: /usr/sbin/sendmail -t
Beispiele:
mailcmd = /usr/sbin/sendmail -t
mailcmd = /usr/exim/bin/exim -t
externnotify = [Shell-Befehl]
Definiert ein Programm (mit absolutem Pfad), das von Asterisk aufgerufen wird, wenn eine neue Sprachnachricht für einen User vorliegt.
Beispiel:
externnotify =
/usr/bin/local/mach-was.sh
externpass = [Shell-Befehl]
Definiert ein Programm (mit absolutem Pfad), das von Asterisk aufgerufen wird, wenn ein User sein Passwort geändert hat.
Beispiel:
externpass =
/usr/bin/local/mach-was.sh
forcegreetings = [yes|no]
Definiert, ob ein User vom System dazu gezwungen wird,
beim ersten Benutzen des Systems eine Begrüßungsnachricht
aufzunehmen. Default: no
Beispiel:
forcegreetings = no
forcename = [yes|no]
Definiert, ob der User vom System dazu gezwungen wird,
bei der ersten Nutzung seinen Namen aufzunehmen. Default:
no
Beispiel:
forcename = yes
format = [gsm|wav|wav49]
Listet die Codecs auf, mit denen eine Sprachnachricht abgespeichert werden soll. Werden mehrere Codecs aufgeführt, werden auch mehrere Dateien gespeichert. Das kann im Extremfall zu Platzproblemen auf der Festplatte führen. Der Vorteil liegt darin, dass bei einer Abfrage die Nachricht nicht noch einmal neu kodiert werden muss, falls der Abfragende mit einem anderen Codec abfragt, als mit dem, in dem die Nachricht bereits gespeichert wurde.
Bei aktiviertem attach
wird das erste Format
dieser Liste für E-Mail-Anhänge verwendet.
Beispiele:
format = gsm|wav
Jede Sprachnachricht wird im GSM- und im WAV-Format abgespeichert.
format = wav
Jede Sprachnachricht wird nur im WAV-Format abgespeichert.
Wird diese Einstellung im laufenden Betrieb verändert, müssen vorher vom System angelegte Sounddateien manuell gelöscht werden. |
searchcontexts = [yes|no]
Standardmäßig werden Voicemailboxen nur im angegebenen
Context gesucht. Mit diesem Schalter kann man das Suchverhalten
auf alle Contexte erweitern. Default: no
Beispiel:
searchcontexts = no
maxmsg = [Anzahl Nachrichten]
Definiert die maximale Anzahl an Sprachnachrichten in
einer Voicemailbox. Default: 100
. Danach können keine
neuen Nachrichten mehr aufgenommen werden, und der Anrufer hört
die Nachricht
/var/lib/asterisk/sounds/vm-mailboxfull.gsm
[54].
Beispiel:
maxmsg = 50
maxmessage = [Länge in Sekunden]
Definiert die maximale Länge einer Sprachnachricht in Sekunden. Default: unendlich
Beispiel:
maxmessage = 120
minmessage = [Länge in Sekunden]
Definiert die minimale Länge einer Sprachnachricht in
Sekunden. Default: 0
Beispiel:
minmessage = 5
maxgreet = [Länge in Sekunden]
Definiert die maximale Länge einer Begrüßungsnachricht in Sekunden. Default: unendlich
Beispiel:
maxgreet=240
maxsilence = [Länge in Sekunden]
Definiert die Anzahl der Sekunden an Stille, die das System wartet, bevor es davon ausgeht, dass die Nachricht zu Ende gesprochen wurde.
Beispiel:
maxsilence=10
silencethreshold = [Schwellenwert]
Definiert, was für Asterisk bei der Einstellung
maxsilence
Stille (also Silence) ist. Je niedriger
dieser Wert ist, desto höher ist die Empfindlichkeit. Default:
128
[55]
Beispiel:
silencethreshold = 50
maxlogins = [Anzahl]
Definiert die maximale Anzahl von fehlerhaften
Einlogversuchen (falsches Passwort durch den User), bevor Asterisk
auflegt. Default: 3
Beispiel:
maxlogins = 3
skipms = [Millisekunden]
Setzt die Anzahl an Millisekunden, um die während des
Abhörens einer Sprachnachricht mit den Tasten für weiter und
zurück in der Nachricht gesprungen wird. Default:
3000
Beispiel:
skipms = 6000
usedirectory = [yes|no]
Erlaubt es dem User von Voicemailboxen, die Einträge
eines Dial-by-Name-Systems zur Weiterleitung von Nachrichten zu
benutzen. Default: no
Beispiel:
usedirectory = yes
saycid = [yes|no]
Definiert, ob die Telefonnummer des Anrufers beim Abrufen
der Nachrichten angesagt werden soll. Default:
no
Beispiel:
saycid = yes
cidinternalcontexts = [context,context,...]
pagerfromstring = [Absendername]
Analog zu fromstring
für Nachrichten an
Pager.
Beispiel:
pagerfromstring = Apfelmus GmbH
pagersubject = [Betreff]
Analog zu emailsubject
für Nachrichten an
Pager.
Beispiel:
pagersubject = Neue Voicemail
pagerbody = [Absendername]
Analog zu emailbody
für Nachrichten an
Pager.
Beispiel:
pagerbody = Neue Voicemail in Mailbox ${VM_MAILBOX}
von ${VM_CALLERID}.
Neben den hier aufgeführten Parametern gibt es noch weitere,
die genannten sind jedoch die wichtigsten für gängige Konfigurationen.
Eine Auflistung aller verfügbaren Parameter findet sich in der Datei
voicemail.conf
. In der Grundinstallation sind dort
alle Parameter mit einer kurzen Beschreibung enthalten.
Da es vorkommt, dass sich die User eines Voicemailsystems in
unterschiedlichen Zeitzonen befinden, kann im Bereich
[zonemessages]
für jede Zeitzone ein unterschiedliches
Format definiert werden, mit dem dem User die Uhrzeit angesagt
wird.[56]
zonenname = timezone | format
zonenname
-
) und
Unterstrich (_
).timezone
In einem normalen Debian-Linux-System finden Sie im
Verzeichnis /usr/share/zoneinfo/
eine
Auflistung von verschiedenen Regionen. Jede Region wird mit
einem Unterverzeichnis dargestellt. In diesem Unterverzeichnis
stehen Städtenamen. Ein timezone
-Eintrag besteht
aus der Region und dem Städtenamen (getrennt durch ein
/
).
Beispiele:
Europe/Berlin
Australia/Sydney
format
Definiert das Format, in dem die Zeit angesagt wird. Es stehen folgende Variablen zur Verfügung:
A
|
Wochentag (Montag bis Sonntag) |
a
|
siehe A |
B
|
Monat (Januar bis Dezember) |
b
|
siehe B |
h
|
siehe B |
d
|
Tag des Monats (1. bis 31.) |
e
|
siehe d |
Y
|
Jahr (z.B. 2006) |
I
|
Stunde im amerikanischen 12-Stunden-Format |
l
|
siehe I |
H
|
Stunde im europäischen 24-Stunden-Format. Dabei wird beim englischen Sprachmenü einstelligen Uhrzeiten eine 0 (englische Aussprache „oh“) vorangestellt. |
k
|
Stunde im europäischen 24-Stunden-Format |
M
|
Minute |
P
|
AM oder PM |
p
|
siehe P |
Q
|
„heute“, „gestern“ oder
ABdY (Wochentag, Monat, Tag, Jahr) |
q
|
„ “ (also nichts, wenn es heute
ist), „gestern“ oder ABdY
(Wochentag, Monat, Tag, Jahr) |
R
|
Stunde:Minute:Sekunde |
Daneben gibt es noch die Sonderfälle
${
(Inhalt dieser
Variablen wird eingefügt) VAR
}und
'
. Dabei ist zu
beachten, dass 'sprachdatei
'sprachdatei
' ohne
„.gsm
“ ist. Dieser
Sprachbaustein aus dem Verzeichnis sounds/
wird dann abgespielt. Die einfachen Anführungszeichen sind
zwingend.
Beispiel:
[zonemessages] deutschland = Europe/Berlin | 'vm-received' Q 'digits/at' kM england = Europe/London | 'vm-received' Q 'digits/at' R military = Zulu | 'vm-received' q 'digits/at' H N 'hours' 'phonetic/z_p'
Genau wie in der extensions.conf
gibt es
auch in der voicemail.conf
die Möglichkeit, einen
Context zu definieren. Das ist praktisch, um zum Beispiel verschiedene
Firmenabteilungen separat zu behandeln. Dadurch können auch
unterschiedliche Adress- oder Telefonbücher definiert werden (siehe
„Telefonbuch
(Dial-by-Name)“).
In einem Context können beliebig viele Mailboxen definiert werden.
mailbox => passwort,name[,e-mail[,pager-e-mail[,optionen]]]
Beispiel:
202 => 1234,Peter Meier,peter@familie-meier.de,,attachfmt=wav|delete=yes
mailbox
passwort
e-mail
pager-e-mail
optionen
Unterschiedliche Optionen, die durch ein Pipe-Zeichen
(|
) voneinander getrennt aneinandergereiht werden.
Sie können hier die unter [general]
(siehe „[general]
“) global
festgelegten Einstellungen pro Mailbox verändern. Bitte beachten
Sie, dass zwischen Parametername, dem Gleich-Zeichen
(=
) und dem Wert keine Leerzeichen sein dürfen.
Dasselbe gilt für das Pipe-Zeichen (|
).
Die wichtigsten Optionen in diesem Zusammenhang sind:
tz=[Zeitzone]
Setzt die gewünschte Zeitzone aus dem vorher
definierten [zonemessages]
Context (siehe
„[zonemessages]
“).
Beispiel:
tz=deutschland
attach=[yes|no]
attachfmt=[gsm|wav|wav49]
[general]
mittels format
eingestellte Format fest, das für E-Mail-Anhänge verwendet
wird.saycid=[yes|no]
sayduration=[yes|no]
yes
saydurationm=[ab Dauer in Minuten]
0
dialout=[context]
Definiert den Context, der zum Rauswählen benutzt werden soll. Ohne diese Angabe kann man aus dem Voicemailsystem heraus keine Telefonate führen.
Beispiel:
dialout=intern
sendvoicemail=[yes|no]
callback=[context]
review=[yes|no]
no
operator=[yes|no]
0
(also Null auf dem Telefon drücken) zum
Operator durchgestellt wird. Operator ist immer die
Extension o
(kleiner Buchstabe o) im
aktuellen Context. Default: no
envelope=[yes|no]
no
gesetzt ist, dann werden
dadurch bestimmte andere Einstellungen (wie zum Beispiel
tz
) überstimmt. Default:
yes
delete=[yes|no]
no
nextaftercmd=[yes|no]
no
forcename=[yes|no]
no
forcegreetings=[yes|no]
no
hidefromdir=[yes|no]
no
[52] Textteil einer E-Mail
[53] Es muss alles in eine Zeile geschrieben werden. Durch
\n
wird in der E-Mail ein Zeilenumbruch
eingefügt.
[54] Pfad abhängig von der Installation, z.B. auch
/usr/share/asterisk/sounds/
[55] Es lässt sich selbst im Source-Code von Asterisk keine Information finden, in welchem Rahmen sich dieser Wert sinnvoll bewegen kann (es handelt sich um einen Int). Ggf. ist also Ausprobieren erforderlich.
[56] Beachten Sie, dass Sie eine wie hier beschrieben definierte Zeitzone noch für die User aktivieren müssen. Siehe „Mailbox-Definition“
[57] Bitte beachten Sie, dass diese Nachrichten ebenfalls E-Mails sind. Sollten Sie SMS-Nachrichten verschicken wollen, suchen Sie im Internet nach „sms gateway“ oder „asterisk sms gateway“.