Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| voip:asterisk18:dialplan1 [02.12.2010 16:10. ] – [4. Anwendung interne Erreichbarkeit um IAX erweitert] django | voip:asterisk18:dialplan1 [20.04.2018 08:59. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Asterisk erster Wählplan ====== | ||
| + | |||
| + | {{voip: | ||
| + | \\ | ||
| + | Über den Asterisk-Rufnummernplan kann definiert werden, wie: | ||
| + | * einzelne Nebenstellen erreichbar sein sollen | ||
| + | * welche Applikationen eingebundenwerden sollen | ||
| + | * wie Amtsgespräche über den oder die Netzbetreiber geführt werden sollen | ||
| + | * wie Konferenzen und | ||
| + | * wie der Voicemailserver reagieren soll | ||
| + | * wann Nebenstellen erreichbar sein sollen | ||
| + | * und noch einge Punkte mehr. | ||
| + | Beim Dialplan werden wir uns im ersten Schritt der Konfiguarationsdatei // | ||
| + | ===== Vorbereitungen ===== | ||
| + | Zu eine der wenigen Konfigurationsdateien, | ||
| + | \\ | ||
| + | Wir sichern also im ersten Schritt die mitgelieferte **extensions.conf** und **extensions.ael**, | ||
| + | # mv / | ||
| + | # mv / | ||
| + | ===== 1. Anwendung " | ||
| + | Als erstes legen wir uns nun unsere erste **extensions.conf** an. | ||
| + | # vim / | ||
| + | < | ||
| + | static=yes | ||
| + | writeprotect=no</ | ||
| + | Mit **static** und **writeprotect** legen wir fest, ob der Dialplan über die Asterisk-Konsole aus, manipuliert werden können soll. Somit beschränken wir uns darauf den Wählplan ausschliesslich über die Konfigurationsdatei **extension.conf** zu pflegen und nach Änderungen dieser Date den Wählplan neu zu laden. Dies geschieht über einen Aufruf von // | ||
| + | \\ | ||
| + | Für den Echotest erweitern wir nun unsere Konfigurationsdatei wie folgt: | ||
| + | < | ||
| + | static=yes | ||
| + | writeprotect=no | ||
| + | |||
| + | [ansagen-demo] | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | |||
| + | [default] | ||
| + | include => ansagen-demo</ | ||
| + | Für die einzelnen Beispiele definieren wir einzelne // | ||
| + | \\ | ||
| + | Nach dem Abspeichern unserer Änderungen, | ||
| + | # asterisk -r | ||
| + | |||
| + | Verbosity is at least 3 | ||
| + | < | ||
| + | Dialplan reloaded. | ||
| + | == Parsing '/ | ||
| + | -- Registered extension context ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Registered extension context ' | ||
| + | -- Including context ' | ||
| + | == Parsing '/ | ||
| + | -- Registered extension context ' | ||
| + | -- merging incls/ | ||
| + | -- Added extension ' | ||
| + | -- Registered extension context ' | ||
| + | -- merging incls/ | ||
| + | -- Added extension ' | ||
| + | -- Registered extension context ' | ||
| + | -- merging incls/ | ||
| + | -- Added extension ' | ||
| + | -- Time to scan old dialplan and merge leftovers back into the new: 0.000149 sec | ||
| + | -- Time to restore hints and swap in new dialplan: 0.000001 sec | ||
| + | -- Time to delete the old dialplan: 0.000019 sec | ||
| + | -- Total time merge_contexts_delete: | ||
| + | Mit dem Befehl // | ||
| + | |||
| + | < | ||
| + | [ Context ' | ||
| + | ' | ||
| + | |||
| + | [ Context ' | ||
| + | ' | ||
| + | |||
| + | [ Context ' | ||
| + | ' | ||
| + | |||
| + | [ Context ' | ||
| + | Include => ' | ||
| + | |||
| + | [ Context ' | ||
| + | ' | ||
| + | 2. Playback(tt-monkeysintro) | ||
| + | 3. Playback(tt-monkeys) | ||
| + | |||
| + | -= 4 extensions (6 priorities) in 5 contexts. =-</ | ||
| + | Wählen wir nun von einem angemeldeten SIP-Apparat die Rufnummer 601 wird als erstes ein Hinweis und anschließend das Affengeschrei am Endgerät wiedergegeben. Auf der Asterisk-Konsole können wir den Ablauf verfolgen. | ||
| + | < | ||
| + | [Nov 28 20:33:49] ERROR[18353]: | ||
| + | -- Executing [601@default: | ||
| + | -- Executing [601@default: | ||
| + | -- < | ||
| + | [Nov 28 20:33:49] NOTICE[26631]: | ||
| + | -- Executing [601@default: | ||
| + | -- < | ||
| + | == Spawn extension (default, 601, 3) exited non-zero on ' | ||
| + | ===== 2. Anwendung " | ||
| + | Im nächsten Schritt ergänzen wir nun unseren Dialplan mit folgenden Zeilen: | ||
| + | # vim / | ||
| + | < | ||
| + | static=yes | ||
| + | writeprotect=no | ||
| + | |||
| + | [ansagen-demo] | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | |||
| + | [echotest] | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | exten => 602,n,echo | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | |||
| + | [default] | ||
| + | include => ansagen-demo | ||
| + | include => echotest</ | ||
| + | In Summe erhalten wir also nachfolgenden Dialplan, en wir auf der Asterisk-Konsole wieder mit dem Aufruf von **dialplan reload** laden. | ||
| + | < | ||
| + | Dialplan reloaded. | ||
| + | == Parsing '/ | ||
| + | -- Registered extension context ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Registered extension context ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Added extension ' | ||
| + | -- Registered extension context ' | ||
| + | -- Including context ' | ||
| + | -- Including context ' | ||
| + | == Parsing '/ | ||
| + | -- Registered extension context ' | ||
| + | -- merging incls/ | ||
| + | -- Added extension ' | ||
| + | -- Registered extension context ' | ||
| + | -- merging incls/ | ||
| + | -- Added extension ' | ||
| + | -- Registered extension context ' | ||
| + | -- merging incls/ | ||
| + | -- Added extension ' | ||
| + | -- Time to scan old dialplan and merge leftovers back into the new: 0.000164 sec | ||
| + | -- Time to restore hints and swap in new dialplan: 0.000000 sec | ||
| + | -- Time to delete the old dialplan: 0.000020 sec | ||
| + | -- Total time merge_contexts_delete: | ||
| + | Bei Anwahl der Rufnummer **602** wird nun die Anwendung // | ||
| + | Auf der Asterisk-Konsole können wir den Ablauf verfolgen. | ||
| + | < | ||
| + | [Nov 28 20:47:30] ERROR[18353]: | ||
| + | -- Executing [602@default: | ||
| + | -- Executing [602@default: | ||
| + | [Nov 28 20:47:31] NOTICE[26657]: | ||
| + | -- Executing [602@default: | ||
| + | -- < | ||
| + | -- Executing [602@default: | ||
| + | -- Executing [602@default: | ||
| + | -- < | ||
| + | -- Executing [602@default: | ||
| + | == Spawn extension (default, 602, 6) exited non-zero on ' | ||
| + | ===== 3. Anwendung " | ||
| + | Im nächsten Schritt ergänzen wir nun unseren Dialplan mit folgenden Zeilen: | ||
| + | # vim / | ||
| + | < | ||
| + | [asterisk-demo] | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | |||
| + | [default] | ||
| + | include => asterisk-demo</ | ||
| + | In Summe erhalten wir also nachfolgenden Dialplan, den wir auf der Asterisk-Konsole wieder mit dem Aufruf von // | ||
| + | < | ||
| + | static=yes | ||
| + | writeprotect=no | ||
| + | |||
| + | [ansagen-demo] | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | |||
| + | [echotest] | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | exten => 602,n,echo | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | |||
| + | [asterisk-demo] | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | |||
| + | [default] | ||
| + | include => ansagen-demo | ||
| + | include => echotest | ||
| + | include => asterisk-demo</ | ||
| + | Nun haben wir unsere erste // | ||
| + | < | ||
| + | [Nov 28 21:35:54] ERROR[18353]: | ||
| + | -- Executing [603@default: | ||
| + | -- Executing [603@default: | ||
| + | [Nov 28 21:35:55] NOTICE[26752]: | ||
| + | -- Executing [603@default: | ||
| + | -- < | ||
| + | -- Executing [603@default: | ||
| + | -- Called guest@misery.digium.com/ | ||
| + | -- Call accepted by 216.207.245.8 (format gsm) | ||
| + | -- Format for call is gsm | ||
| + | -- IAX2/ | ||
| + | -- Hungup ' | ||
| + | == Spawn extension (default, 603, 4) exited non-zero on ' | ||
| + | ===== 4. Anwendung " | ||
| + | ==== SIP Teilnehmer ==== | ||
| + | Zur Erreichbarkeit unserer definierten Nebenstellen aus der / | ||
| + | # vim / | ||
| + | < | ||
| + | ; interne Erreichbarkeit der Nebenstellen 11-99 untereinander herstellen | ||
| + | exten => _XX, | ||
| + | |||
| + | [default] | ||
| + | include => intern</ | ||
| + | Somit haben wir nun nach den ersten Konfigurationsbeispielen in Summe folgenden Dialplan, den wir auf der Asterisk-Konsole wieder mit dem Aufruf von **// | ||
| + | < | ||
| + | static=yes | ||
| + | writeprotect=no | ||
| + | |||
| + | [intern] | ||
| + | ; interne Erreichbarkeit der Nebenstellen 11-99 untereinander herstellen | ||
| + | exten => _XX, | ||
| + | |||
| + | [ansagen-demo] | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | |||
| + | [echotest] | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | exten => 602,n,echo | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | |||
| + | [asterisk-demo] | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | |||
| + | [default] | ||
| + | include => intern | ||
| + | include => ansagen-demo | ||
| + | include => echotest | ||
| + | include => asterisk-demo</ | ||
| + | Nunmehr haben wir auch die interne Erreichbarkeit unserer Nebenstellen sichergestellt. Im nachfolgenden Beispielt wird von der Nebenstelle **14** die Nebenstelle **13**. | ||
| + | < | ||
| + | [Nov 28 22:03:45] ERROR[18353]: | ||
| + | -- Executing [13@default: | ||
| + | == Using SIP RTP CoS mark 5 | ||
| + | -- Called 13 | ||
| + | -- SIP/ | ||
| + | -- SIP/ | ||
| + | -- SIP/ | ||
| + | -- SIP/ | ||
| + | -- SIP/ | ||
| + | -- SIP/ | ||
| + | == Spawn extension (default, 13, 1) exited non-zero on ' | ||
| + | ==== IAX2 Teilnehmer ==== | ||
| + | Zur Erreichbarkeit unserer definierten Nebenstellen aus der / | ||
| + | # vim / | ||
| + | < | ||
| + | ; interne Erreichbarkeit der Nebenstellen 11-99 untereinander herstellen | ||
| + | exten => _XX, | ||
| + | ; interne Erreichbarkeit des IAX-Tielnehmers mit der Rufnummer 33 ermöglichen | ||
| + | exten => 33, | ||
| + | |||
| + | [default] | ||
| + | include => intern</ | ||
| + | Unseren Dialplan laden wir auf der Asterisk-Konsole wieder mit dem Aufruf von **// | ||
| + | < | ||
| + | static=yes | ||
| + | writeprotect=no | ||
| + | |||
| + | [intern] | ||
| + | ; interne Erreichbarkeit der Nebenstellen 11-99 untereinander herstellen | ||
| + | exten => _XX, | ||
| + | ; interne Erreichbarkeit des IAX-Tielnehmers mit der Rufnummer 33 ermöglichen | ||
| + | exten => 33, | ||
| + | |||
| + | [ansagen-demo] | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | exten => 601, | ||
| + | |||
| + | [echotest] | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | exten => 602,n,echo | ||
| + | exten => 602, | ||
| + | exten => 602, | ||
| + | |||
| + | [asterisk-demo] | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | exten => 603, | ||
| + | |||
| + | [default] | ||
| + | include => intern | ||
| + | include => ansagen-demo | ||
| + | include => echotest | ||
| + | include => asterisk-demo</ | ||
| + | Rufen wir nun von unserem Testteilnehmer **14** unser IAX2-Softphone mit der Nummer **33**, so wird uns dies auf dem Asterisk-CLI entsprechend angezeigt. | ||
| + | < | ||
| + | == Using SIP RTP CoS mark 5 | ||
| + | [Dec 2 16:56:02] ERROR[27402]: | ||
| + | -- Executing [33@default: | ||
| + | -- Called 33 | ||
| + | -- Call accepted by 192.168.10.40 (format gsm) | ||
| + | -- Format for call is gsm | ||
| + | -- IAX2/ | ||
| + | -- IAX2/ | ||
| + | -- Hungup ' | ||
| + | == Spawn extension (default, 33, 1) exited non-zero on ' | ||
| + | asterisk*CLI></ | ||
| + | |||