Sipura 3000 mit analoger Verbindung nutzen

cmmehl

Aktives Mitglied
Mitglied seit
15 Jun 2004
Beiträge
812
Punkte für Reaktionen
1
Punkte
0
Ich lebe derzeit in einem Land, in dem DSL noch nicht vorhanden ist und andere Breitbandverbindungen unerschwinglich sind. Je nach Wetterlage (bei Regen saufen die Telefonlinien gerne ab und die Geschwindigkeit der Internetverbindung nimmt dramatisch ab) kann man aber trotzdem Internet-Telefonie betreiben, z.B. mit X-ten. Die breitbandigen codecs wie alaw und ulaw sind zwar zuviel für die schwachbrüstige analoge Verbindung, doch mit gsm und g729 kommen ganz passable Verbindungen zustande. Ilbc und speex klingen einfach schauderhaft. Aber wenn das mit der hiesigen Internetqualität klappt, sollte es in Deutschland überhaupt kein Problem sein!

Sipura in’s Internet
Natürlich könnte ich mich zum Voipen mit softphones begnügen, aber warum die schöne vorhandene VoIP Hardware im Schrank vergammeln lassen? Um das spa3k mit dem Internet zu verbinden, richte ich ICS (internet connection sharing) auf meinem Desktop ein. Dabei wird dem LAN-interface des Rechners von Windows die IP Adresse 192.168.0.1 verpasst, der Router (Asus WL-500G Deluxe) wird mit dem Rechner verkabelt. Im Asus wird die WAN-Verbindung auf DHCP gestellt, und schon verteilt er die Internetverbindung des Desktops ganz brav im Netzwerk. In den LAN-settings des Routers wird die IP auf (z.B.) 192.168.55.1 eingestellt, und damit kann ich nun auch vom Desktop per wireless auf die im Netzwerk angeschlossenen Geraete zugreifen. Das Sipura, per Kabel am Router angeschlossen, wird wie gewohnt per web-interface konfiguriert.

Das Sipura registriert sich nun mit VoIP-Providern (getestet: sipgate.de) und dank des eingebauten g729 sind Gespräche in annehmbarer Qualität möglich - gsm kann der spa3k leider nicht. Auch eine Verbindung zum vserver-asterisk, der eine g729 lizenz hat, klappt per g729 wunderbar und stellt mir die dort eingerichteten Provider zur Verfuegung. Im Prinzip könnte ich aber auch bis zu fünf VoIP-Provider im Sipura eintragen und per Sipura-dialplan zum raustelefonieren nutzen. Eingehende Anrufe interessieren mich in diesem Szenario ja nicht.

Nachteile: da sich das spa3k im Internet registriert, reagiert es ungehalten auf fehlende connectivity. Das fallback auf PSTN bei Registrierungsausfall, das wohl möglich sein müßte bei diesem Gerät, kriege ich partout nicht zum laufen. Außerdem müßte ich das spa3k entweder jedesmal „entsaften“ um es bei Neueinwahl in’s Internet zur Registrierung zu bewegen, oder aber per Browser resetten. Schließlich und endlich – ich geb’s gerne zu! – ist es mir ein Graus, im Sipura dialplans zu verfassen, das geht im asterisk wirklich einfacher.


Sipura mit lokalem asterisk
Wozu habe ich asterisk auf meinem Router laufen – kurzerhand eingerichtet und dort beide spa-linien registriert. (Die Verwaltung des asterisk erfolgt wie üblich mit den Tools Putty und WinSCP3).

Kurzer Exkurs - wie das Sipura einrichten, um auch Festnetzanrufe mit dem asterisk verwalten zu koennen (ist schon anderswo beschrieben im Forum, hier nur der Vollständigkeit wegen):
Code:
  [FONT=Arial][SIZE=1]der fxs-port (Line 1) wird in diesem Beispiel mit 61 und [/SIZE][/FONT][FONT=Arial][SIZE=1]SIP Port 5060, der fxo-port (PSTN Line) mit 63 und SIP Port 5061am asterisk angemeldet.

[/SIZE][/FONT][FONT=Arial][SIZE=1]Die wichtigen Einstellungen im [B]Sipura[/B], [U]PSTN Line[/U]:[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]VoIP-To-PSTN Gateway Enable: yes[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]PSTN-To-VoIP Gateway Enable: yes[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]PSTN Ring Thru Line 1: no ; [I]um es über den asterisk zu leiten[/I][/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]Off Hook While Calling VoIP: no[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]PSTN Caller Default DP: 8[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]Dial Plan 8: (S0<:6781234>) ; [I]irgendeine Nummer, die in der extensions.conf noch nicht vorkommt[/I][/SIZE][/FONT][SIZE=1]
  
  [/SIZE][FONT=Arial][SIZE=1]Im [B]asterisk[/B], [U]extensions.conf[/U]:[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]exten => 6781234,1, Dial,SIP/61|30|r  [/SIZE][/FONT][SIZE=1]
  [I][FONT=Arial]damit werden eingehende PSTN Anrufe direkt auf den fxs-port zum Läuten weitergeleitet. Man kann natürlich noch andere Aktionen einbauen.[/FONT][/I]
  
  [/SIZE][FONT=Arial][SIZE=1]aus der [U]sip.conf[/U]:[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1][61] ; [I]fxs port (Line 1)[/I][/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]host=dynamic[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]username=61[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]secret=secret[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]type=friend[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]context=passender Kontext[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]callerid=irgendwas <61>[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]nat=no ; [I]dies natürlich nur bei lokalem asterisk, sonst yes[/I][/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]canreinvite=no[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]dtmfmode=rfc2833 ; [I]das funktioniert beim spa Line 1 mit DTMF Tx Method: INFO[/I][/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]disallow=all[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]allow=ulaw[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]allow=g729[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]allow=gsm[/SIZE][/FONT][SIZE=1]
  
  [/SIZE][FONT=Arial][SIZE=1][63] ; [I]fxo-port (PSTN Line)[/I][/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]host=dynamic[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]username=63[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]secret=secret[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]type=friend[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]context=ankommend[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]callerid=landline <63>[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]nat=no[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]canreinvite=yes[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]dtmfmode=rfc2833[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]disallow=all[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]allow=ulaw[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]allow=g729[/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1]allow=gsm[/SIZE][/FONT]
Vorteile: das Sipura bleibt jetzt immer angemeldet und ist stets einsatzbereit. Die Verbindung zwischen Sipura und asterisk kann über alaw/ulaw erfolgen. Außerdem kann ich jetzt im asterisk die PSTN Line auch für ausgehende Anrufe verwalten, und z.B. Ferngespräche von der Eingabe eines Paßworts abhängig machen:
Code:
[SIZE=1][FONT=Arial][U]Extensions.conf[/U][/FONT][/SIZE]
  [FONT=Arial][SIZE=1][FONT=Arial]exten => _0Z.,1,NoOp(nichtlokaler Call ins Festnetz)[/FONT][/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1][FONT=Arial]exten => _0Z.,2,NoCDR()[/FONT][/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1][FONT=Arial]exten => _0Z.,3,Authenticate(1234)[/FONT][/SIZE][/FONT][SIZE=1]
  [/SIZE][FONT=Arial][SIZE=1][FONT=Arial]exten => _0Z.,4,Dial(SIP/${EXTEN}@63,90,r)[/FONT][/SIZE][/FONT]
Nachteile: der asterisk auf dem OpenWRT Router hat schon gewisse Einschränkungen, u.a. wegen begrenztem Speicher. So sind z.B. Set und CDR nicht möglich, und auch die Einrichtung von voicemail muß hier entfallen. Zudem kann man auf dem OpenWRT asterisk keinen g729 registrieren, die Anrufe gehen also per gsm raus. Und auch hier wieder: sobald die Internetverbindung weg ist, wird die CLI mit Meldungen über vergebliche Versuche der Registrierung bei den verschiedenen VoIP-Providern überschwemmt. Das fällt allerdings außerhalb der CLI nicht auf, und bei bestehender Verbindung werden die accounts auch sehr schnell registriert.


Sipura -> lokaler asterisk -> vserver asterisk
Nutzen wir also die Vorteile des IAX-Protokolls, das keine Registrierung verlangt. Ich weise den lokalen asterisk an, alle anrufe an den vserver asterisk weiterzureichen:
Code:
[FONT=Arial][SIZE=1][FONT=Arial]exten => _**.,1,NoCDR() ; [I]ich habe beschlossen, VoIP Anrufe über ** zu starten[/I][/FONT][/SIZE][/FONT]
[FONT=Arial][SIZE=1][FONT=Arial]exten => _**.,2,Dial(IAX2/user:[email protected]/${EXTEN},60,Ttr)[/FONT][/SIZE][/FONT]
Dort tritt dann der im vserver eingerichtete dialplan in Aktion, die Verbindung zwischen den beiden asterisken erfolgt über gsm. Nicht schlecht – die CLI im lokalen asterisk bleibt auch offline mäuschenstill, und ich kann nach der Interneteinwahl sofort lostelefonieren, ohne auf Registrierungen zu warten. Und die lokale Verwaltung der PSTN Linie habe ich trotzdem noch. Aber g729 klingt einfach besser als gsm ...


Sipura -> lokaler asterisk und vserver asterisk
Um doch per g729 rauswählen zu können, überwinde ich mich, den Sipura dialplan anzupassen, und verlege Wahlen, die mit ** beginnen, auf das Gateway 1:
Code:
[FONT=Arial][SIZE=2][FONT=Arial]([0-9]x.|<#9,:>x.<:@gw0>|**xxxx.<:@gw1>)[/FONT][/SIZE][/FONT]
Im Gateway 1 gebe ich die Daten des vserver asterisk ein (mit GW1 NAT Mapping Enable: yes) und schon gehen meine VoIP Gespräche am lokalen asterisk vorbei direkt an den vserver-asterisk. Wenn dort in der sip.conf für das angemeldete Gerät (Line 1) nur g729 zugelassen wird, telefoniere ich wunschgemäß über diesen codec.



Fazit
Auch mit analoger Verbindung kann man mit dem Sipura viel erreichen. Spa3k Enthusiasten können per dialplan sicherlich vieles auch ohne asterisk verwirklichen, aber mit asterisk macht es einfach mehr Spaß :). Außerdem kann man per asterisk eben auch pure IAX-Provider wie z.B. voipjet (super Qualität und astreine Preise) nutzen, das geht mit dem Sipura alleine nicht.

Ich hoffe, diese Beschreibung mag den Benachteiligten der Welt (jene ohne Breitbandverbindung) zur Nutzung von echtem VoIP anregen (und nicht bloß Skype). Mein aufrichtiger Dank an Betateilchen, ohne dessen geduldige Hilfe mir all diese Installationen kaum möglich gewesen wären.

Chris
 
Zuletzt bearbeitet:
Kleiner Nachtrag aus der erfahrung, fuer einen bekannten ein aehnliches set-up einzurichten, mit einem spa3102 und ohne lokalen asterisk.

Es sieht echt so aus, als koenne das sipura ueberhaupt nicht mit fehlender internet-verbindung umgehen. Es ist mir bisher noch nie gelungen, ein fallback bei fehlender connectivity (genauer: erfolgloser registrierung wg fehlender connectivity) einzurichten, und das macht dann den gebrauch des angeschlossenen telefons fuer lokale anrufe - sowohl einkommende als auch ausgehende - leider unmoeglich.

Zugegeben, das geraet ist ist fuer permanente connectivity konzipiert, aber selbst stolze DSL nutzer haben ja gelegentlich mal einen ausfall und wuerden sich dann sicher freuen, wenigstens ihre landline nutzen zu koennen ...
Hat jemand eine loesung fuer dieses problem?

Fuer das o/a set-up wurden dann halt auf einem befreundeten asterisk die betreffenden accounts registriert (es ging um betamaxe, die eine registrierung verlangen) und dann - wie im ersten beitrag beschrieben - das waehlen ueber spezifische dialplans realisiert. Das spa bleibt dabei fuer beide linien unregistriert. Bei providern, die keine registrierung verlangen, kann man auf diesen umweg wohl verzichten.

Viele gruesse
Chris
 
Zuletzt bearbeitet:
Vielen Dank Chris für das HowTo zum Einrichten des SPA für PSTN via Asterisk. Nach vielen erfolglosen Versuchen bin ich erst spät auf Deinen Beitrag hingewiesen worden. Nach den ersten Versuchen scheint es für meinen SPA 3102 und den Asterisk auf externen vServer auf Anhieb geklappt zu haben. Muss jetzt noch sehen wie sich alles im "Normalbetrieb" bewährt. Nochmals vielen Dank! :groesste:
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.