Internet-Telefonie (VoIP) mit Asterisk einrichten (Anleitung)
Aus Portunity Wiki
(Die Seite wurde neu angelegt: „Wie wird die Astersik an den SIP- und IAX-Port-Anschlüsse von Portunity angebunden ? Wie kann raustelefoniert werden ? Wie können eingehende Gespräch…“) |
|||
Zeile 85: | Zeile 85: | ||
*Nicht vergessen evt. Firewall Ports und IP-Adressen freizuschalten ! Im Zweifelsfall eine Firewall auch einfach mal ganz kurz für einen Test runterfahren - funktioniert es dann, liegt eine Firewall-Fehlkonfiguration vor, funktioniert es immer noch nicht, liegt der Fehler nicht an der Firewall. Auf keinen Fall aber vergessen, die Firewall anschließend wieder hochzufahren ... | *Nicht vergessen evt. Firewall Ports und IP-Adressen freizuschalten ! Im Zweifelsfall eine Firewall auch einfach mal ganz kurz für einen Test runterfahren - funktioniert es dann, liegt eine Firewall-Fehlkonfiguration vor, funktioniert es immer noch nicht, liegt der Fehler nicht an der Firewall. Auf keinen Fall aber vergessen, die Firewall anschließend wieder hochzufahren ... | ||
- | [[Category:Access]] [[Category:Access_Anleitungen]] | + | [[Category:Access]] [[Category:Access_Anleitungen]] [[Category:Asterisk]] |
Version vom 13:09, 7. Dez. 2010
Wie wird die Astersik an den SIP- und IAX-Port-Anschlüsse von Portunity angebunden ? Wie kann raustelefoniert werden ? Wie können eingehende Gespräche verarbeiten werden ? - Konfigurationshinweise und Tipps rund um Asterisk.
Inhaltsverzeichnis |
Ausgehende Gespräche Variante 1 (gut für erste Test's)
Um mit der Asterisk Gespräche mit dem IAX-Protokoll über den "IAX-VoIP-Server" von Portunity zu terminieren, ist im Dialplan einfach folgender Dial-Befehl zu verwenden:
exten => _0XXXXXX.,1,Dial(IAX2/iaxAAAAA:BBBB@iax.iaxport.de/${EXTEN})
Wobei iaxAAAAA der Loginname ist (iax plus eine Zahl !) und BBBB das dazu gehörige und selbst gewähltes Account-Kennwort. Mit iax.iaxport.de wird der Server von Portunity adressiert und Asterisk mitgeteilt, das Gespräch über diesen aufgebaut werden sollen. Anstelle des Hostnamen kann auch die IP-Adresse verwendet werden, wobei die Verwendung des Hostnames generrel sicherer ist falls sich die IP-Adresse mal ändern sollte. In der Variable ${EXTEN} steht die Zielrufnummer der aktuellen Asterisk-Extention.
Als Zielrufnummer kann eine ganz normale dt. Nummer verwendet werden (020269555888, wobei 0202 für wuppertal steht und die folgenden Ziffern eine Testnummer unserer TK-Anlage darstellen). Sofern eine führende Null zum Amt-holen im Dialplan der Asterisk definiert wurde, muß natürlich ${EXTEN:1} verwendet werden um die führende 0 der Amts-Holung nicht mit zu Portunity zu übertragen.
Ausgehende Gespräche Variante 2 (Empfohlen):
Um nicht die Zugangsdaten in jedem Dial-Befehl im Dialplan stehen zu haben, bietet sich folgende Variante an:
In der iax.conf-Konfigurationsdatei wird folgender Abschnitt definiert:
[iaxport-outbound] type=peer username=iaxAAAAA secret=BBBB host=iax.iaxport.de
Im Dialplan vereinfacht sich die Anwahl dann wie folgt:
exten => _0XXXXXX.,1,Dial(IAX2/iaxport-outbound/${EXTEN})
Der Vorteil ist, dass die Zugangsdaten an EINER zentralen Stelle und nicht mehr im Dialplan stehen.
Eingehende Gespräche: Variante 1: (alte Lösung)
Um auch auf dem VoIP-Server von Portunity eingehende Gespräche für die SIP- und IAX-Adresse zu einem eigenen Asterisk-Server zu "leiten", sind weitere Schritte nötig.
Die einfachste ist einfach bei Portunity im Webinterface eine "Weiterleitung" zu einer eigenen "lokalen" SIP- oder IAX-Adresse eines eigenen Asterisk-Gateways zu definieren. Dazu im Webinterface in das SIP- und IAX-Port-Paket wechseln (direkt nach dem Login im linken Frame) und dort den Konfigurationsdialog (1. Icon) aufrufen. Im Block "Anrufweiterleitungen" nun einen Eintrag wie folgt definieren:
- Priorität (Prio) = 1
- Anruf von: leer lassen (=default)
- Uhrzeit von / bis: 00:00 bis 23:59 (=default)
- Zielrufnummer: alle (=default)
- Aktion: Weiterleiten
- Weiterleitungsziel: sip:ihresip@ihredomain.de
Als Weiterleitungsziel können sowohl eine SIP- als auch eine IAX-Adresse als auch Festnetz- oder Handynummern angeben werden (bitte beachten, dass nicht-voip-Adressen an dieser Stelle von Portunity abgerechnet werden !). Dort also einfach die SIP- oder IAX-Adresse des eigenen Asterisk-Servers eintragen und eingehende Gespräche werden zu dem Server weitergeleitet.
Diese Lösung setzt allerdings voraus, dass der eigene Asterisk-Server unter einer "stabilen" Domain / Hostnamen erreichbar ist, d.h. über eine statische IP-Adresse verfügt (z.B. von einem der Portunity-DSL-Zugänge !).
Eingehende Gespräche: Variante 2:
In der iax.conf-Konfigurationsdatei in der [general]-Sektion folgende Zeile einfügen:
register => iaxAAAAA:BBBB@iax.iaxport.de
Wobei iaxAAAAA wieder der Loginname ist (iax plus eine Zahl !) und BBBB das dazu gehörige und selbst gewählte Account-Kennwort. Mit iax.iaxport.de wird wiederum der Server adressiert und Asterisk wird mit dieser Zeile mitgeteilt, sich an den Server mit diesen Zugangsdaten "einzubuchen".
Dies kann auf der Asterisk-Console anschließend mit dem Befehl "iax2 show registry" überprüft werden, der dann etwas wie folgt auswerfen müsste:
gate*CLI> iax2 show registry Host Username Perceived Refresh State 82.139.223.1:4569 iax12651 213.240.185.xxx:4569 60 Registered gate*CLI>
Der Status sollte "Registered" sein, ansonsten liegt ein Fehler vor. Die Zeile bewirkt außerdem, dass sich der Asterisk-Server regelmässig beim Portunity-Server meldet (eben alle 60 Sekunden wie unter Refresh in diesem Beispiel ersichtlich) - d.h. dieses Verfahren funktioniert dadurch auch mit einer dynamischen IP-Adresse und bei einem IP-Wechsel vergehen maximal bis zu 60 Sekunden bis die neue IP-Adresse "nachgeführt" ist.
Des weiteren in die iax.conf einfügen:
[iaxport] type=friend host=iax.iaxport.de username=iaxAAAAA secret=BBBBBB peercontext=iaxport context=from-iaxport notransfer=yes
und in der extensions.conf:
[from-iaxport] exten => s,1,Dial(wohinauchimmer)
Der [iaxport]-Abschnitt kann dann außerdem wie weiter oben beschrieben auch als Outbound-Konfiguration mitbenutzt werden.
Tipps:
- Nicht vergessen evt. Firewall Ports und IP-Adressen freizuschalten ! Im Zweifelsfall eine Firewall auch einfach mal ganz kurz für einen Test runterfahren - funktioniert es dann, liegt eine Firewall-Fehlkonfiguration vor, funktioniert es immer noch nicht, liegt der Fehler nicht an der Firewall. Auf keinen Fall aber vergessen, die Firewall anschließend wieder hochzufahren ...