Zurück zum Portal
http://portunity.net / Support und Service / FAQ / Internet-Telefonie (VoIP): SIP- & IAX-Port

Asterisk

Asterisk: Wie binde ich die Astersik an den SIP- und IAX-Port-Anschluss an ? Wie kann ich raustelefonieren ? Wie kann ich eingehende Gespräche verarbeiten ? - Konfigurationshinweise und Tipps rund um Asterisk.

Ausgehende Gespräche Variante 1 (gut für erste Test's):

Um mit der Asterisk Gespräche mit dem IAX-Protokoll über unseren "IAX-VoIP-Server" zu terminieren, ist im Dialplan einfach folgender Dial-Befehl zu verwenden:

exten => _0XXXXXX.,1,Dial(IAX2/iaxAAAAA:BBBB@iax.iaxport.de/${EXTEN})

Wobei iaxAAAAA Ihr Loginname ist (iax plus eine Zahl !) und BBBB ihr dazu gehöriges und selbst gewähltes Account-Kennwort. Mit iax.iaxport.de addressieren Sie unseren Server und teilen Asterisk mit, das Gespräch über diesen aufzubauen. 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 Sie eine führende Null zum Amt-holen im Asterisk im Dialplan definiert haben, müssen Sie natürlich ${EXTEN:1} verwenden um die führende 0 Ihrer Amts-Holung nicht mit zu uns 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 Ihrer iax.conf-Konfigurationsdatei definieren Sie folgenden Abschnitt:

------------------- snip ---
[iaxport-outbound]
type=peer
username=iaxAAAAA
secret=BBBB
host=iax.iaxport.de
------------------- snip ---

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 unserem VoIP-Server eingehende Gespräche für Ihre SIP- und IAX-Adresse zu einem eigenen Asterisk-Server zu "leiten", sind weitere Schritte nötig.

Die einfachste ist einfach bei uns im Webinterface eine "Weiterleitung" zu einer eigenen "lokalen" SIP- oder IAX-Adresse Ihres eigenen Asterisk-Gateways zu definieren. Gehen Sie dazu im Webinterface in Ihr SIP- und IAX-Port-Paket (direkt nach dem Login im linken Frame) und rufen Sie dort den Konfigurationsdialog (1. Icon) auf. Im Block "Anrufweiterleitungen" definieren Sie nun einen Eintrag wie folgt:
- 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 Sie sowohl SIP- als auch eine IAX-Adresse als auch Festnetz- oder Handynummern angeben (bitte beachten Sie, dass nicht-voip-Adressen an dieser Stelle abgerechnet werden !). Tragen Sie dort also einfach die SIP- oder IAX-Adresse Ihres eigenen Asterisk-Servers ein und eingehende Gespräche werden zu Ihrem Server weitergeleitet.

Diese Lösung setzt allerdings voraus, dass Ihr Asterisk-Server unter einer "stabilen" Domain / Hostnamen erreichbar ist, d.h. über eine statische IP-Adresse verfügt (z.B. von einem unserer 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 Ihr Loginname ist (iax plus eine Zahl !) und BBBB ihr dazu gehöriges und selbst gewähltes Account-Kennwort. Mit iax.iaxport.de addressieren wir wiederrum unseren Server und teilen Asterisk mit dieser Zeile mit, sich an unserem Server mit diesen Zugangsdaten "einzubuchen".

Sie können dies auf der Asterisk-Console anschließend überprüfen mit dem Befehl "iax2 show registry", der dann etwas wie folgt auswerfen müsste:

------------------- snip ---
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>
------------------- snip ---

Der Status sollte "Registered" sein, ansonsten liegt ein Fehler vor. Die Zeile bewirkt ausserdem, dass sich Ihr Asterisk-Server regelmässig bei unserem 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 fügen Sie in die iax.conf ein:
------------------- snip ---
[iaxport]
type=friend
host=iax.iaxport.de
username=iaxAAAAA
secret=BBBBBB
peercontext=iaxport
context=from-iaxport
notransfer=yes
------------------- snip ---

und in der extensions.conf:
------------------- snip ---
[from-iaxport]
exten => s,1,Dial(wohinauchimmer)
------------------- snip ---

Der [iaxport]-Abschnitt kann dann außerdem wie weiter oben beschrieben auch als Outbound-Konfiguration mitbenutzt werden.

Tipps:

- Vergessen Sie nicht, evt. in Ihrer 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 ...