====== Asterisk-Konfigurationsdateien ====== //<- zurück zu [[software:asterisk]]// Die Konfiguration des Asterisk-Servers teilt sich in mehrere Konfigurationsdateien auf welche unter den Verzeichnis ''/etc/asterisk/'' liegen. In diesem Artikel werden lediglich die folgende Konfigurationsdateien behandelt: * ''asterisk.conf'' * ''extensions.conf'' * ''sip.conf'' ===== asterisk.conf ===== Allgemeine Konfigurationsdatei von Asterisk. Hier sind Pfade zu Asterisk Bibliotheksdaten, Externe Scripte, Logdatein und weiteres angegeben. Nach der Installtion hat sie [[http://www.cadvision.com/blanchas/Asterisk/asterisk.conf|diesen]] Aufbau. ===== sip.conf ===== Enthält Einträge von SIP-Nebenstellen und Trunk-Verbindungen zu anderen SIP-Servern. Der Grundaufbau sieht wie folgt aus: [nebenstelle] variable=wert ;kommentar Über ''nebenstelle'' wird eine neue Nebenstelle erstellt. Ein SIP-Telefon kann sich dann mit dem Benutzernamen "nebenstelle" am Asterisk-Server anmelden. Unterhalb dieser Zeile können einige Einstellungen dieser Nebenstelle gesetzt werden. So kann z.B. über ''secret=password'' ein Passwort gesetzt werden. Eine weitere wichtige Eigenschaft ist die ''context=from-internal-sip'', die angibt bei welchem Wählplan eingestigen wird, wenn das angemeldete SIP-Telefon rausruft. Hier ein Beispiel einer vollständig konfigurierten Nebenstelle:((http://www.voip-info.org/wiki/view/Asterisk+config+sip.conf)) [tammari] type=friend callerid="Tuomas Tammisalo" <1000> username=tammari host=dynamic secret=******** regcontext=tammari-internal regexten=1005 dtmfmode=rfc2833 insecure=invite,port canreinvite=yes nat=yes qualify=yes context=merus-sipphone pickupgroup=1 callgroup=1 mailbox=1000@default ===== extensions.conf ===== In der extensions.conf sind Wählpläne (eng. Dialplans) definiert, die angeben, was bei einem Anruf gemacht werden sollen. Der Grundaufbau sieht so aus, dass die extensions.conf in einzelne Abschnitte geteilt ist. Ein abschnitt wird mit [context] eingeleitet. Innerhalb dieses eingeleiteten Abschnittes kann nach belieben verzweigt und agiert werden. Der Aufbau einer Anweisung sieht wie folgt aus: exten => [Nummer],[Priorität],[Befehl] === Nummer === Über die [Nummer] wird angegeben, wann diese Anweisung zutrifft. Wenn in [Nummer] die 50 steht, dann wird diese Anweisung nur ausgeführt, wenn der Anrufer die Nummer 50 gewählt hat. Hier können auch andere Angaben statt Nummern gemacht werden: | s | Wird bein Beginn (start) eines Rufes ausgeführt | | # | Wird bein Ende eines Rufes ausgeführt | | i | Wird ausgeführt, wenn der Ruf einen Fehler läuft (illegal) | | t | Wird verzweigt, wenn es zu einem Timeout des Rufes kommt | | h | Hierher wird nach Auflegen des Rufes verzweigt | | a | Wird verzweigt, wenn am Telefon die Taste '*' gedrückt wurde | Daneben existieren auch noch Texbasierte Spezialnummern: | failed | Wird eingesetzt, wenn ein automatischer Wählversuch gescheitert ist | | fax | Hier kommen Anrufe an, wenn in einem ZAP-Kanal eine Fax-Mitteilung enteckt wurde | | talk | Mit dieser Nummer werden Anrufe behandelt, wenn jemand auf eine Ansage spricht | Außerdem kann nach Nummern mit Patterns gefiltert werden: Dies wird mit einem '_' eingeleitet. Danach kann folgendes folgen: | 0..9 | Es muss an dieser Stelle genau die angegebene Ziffer stehen | | X | Pattern für Ziffern 0 bis 9 | | Z | Pattern für Ziffern 1 bis 9 | | N | Pattern für Ziffern 2 bis 9 | | [] | Es muss an dieser Stelle eine der Ziffern in den Klammern stehen, wobei bereiche erlaubt sind: \\ [123] Erlaubt sind 1, 2 und 3 \\ [15-7] Erlaubt sind 1, 5, 6 und 7 | | . | Es darf jede beliebige folgen von Ziffern folgen, allerdings muss es mindestens eine sein | | ! | Es dürfen beliebige Ziffern folgen, der Vergleichsprozess bricht ab, sobalt eine Einduetigkeit besteht | Beispiele | _01[67]. | passt u allem Mobilfunknummern | | _00. | passt zu allen Auslandsvorwahlen | |_09281. | filtert alle Anrufe in das Ortsnetz Hof | === Priorität === Über die Priorität kann die reihenfolge der Abarbeitung der Anweisungen strukturiert werden. Die Reihenfolgen beginnt bei 1 und wird dann der Reihe nach abgearbeitet. Prioritäten dürfen nicht doppelt vorkommen. Wenn eine direkt Nachfolgende Priorität nicht vorhanden ist, stoppt Asterisk das ausführen des Scripts. Seit Release 1.2 können hier aus sysmbole eingesetzt werden. Das Symbol 'n' (next) setzt die nachfolgende Nummer ein. Hier zählt Asterisk selbst um 1 hoch. Mann kann die Priorität auch als Summe von 2 Werten schreiben (3+100) oder (s+10) wobei das Symbol 's' (same) für die Priorität in der Zeile darüber steht. Selbst wenn man mit Symbolen arbeitet muss jedoch die Erste Anweisung zwingend mit einer 1 Anfangen. === Befehl === In Befehl können je nach Belieben Kommandos aufgerufen werden über die ein Anruf dann abgearbeitet werden kann. Eine Vollstängife Befehlsreferent ist [[http://www.voip-info.org/wiki/view/Asterisk+-+documentation+of+application+commands|hier]] finden. Außerdem können noch [[http://www.voip-info.org/wiki/view/Asterisk+variables|Variablen]] gesetzt werden. {{tag>asterisk}}