[gelöst] FXO/FXS-Adapter als analoges Amt für Asterisk

Tippfehler

IPPF-Promi
Mitglied seit
14 Sep 2004
Beiträge
3,263
Punkte für Reaktionen
29
Punkte
48
Hallo,
kann mir Jemand einen Tipp geben, wie ich einen GS ATA 488 mit FXS und FXO in mein Asterisk einbinden kann?

Ich habe das Problem, dass eingehende Rufe vom Asterisk ignoriert werden.
Der 488 ist an Asterisk angemeldet:
FXS: Rufnummer 778
FXO: Rufnummer 779

Wenn ich von einem anderen SIP-Client aus die 779 anrufe, habe ich das analoge Amt.

In der extensions.conf gibt es z. B.
exten => sip778,1,Dial,SIP/771&SIP/772&SIP/773&CAPI/ISDN3/123|55|r

sip.conf schrieb:
[778]
callerid="TestSIP 778" <778>
host=dynamic
domain=192.168.178.1
;nat=yes
user=778
secret=778
;mailbox=774
;canreinvite=no
regexten=sip778
;username=xlite1
disallow=all
allow=alaw
allow=ulaw
allow=gsm
type=peer
fromdomain=192.168.178.3
context=ausgehend

[779]
context=sip779
callerid="TestSIP 779" <779>
host=dynamic
domain=192.168.178.1
;nat=yes
type=peer
user=779
secret=779
;mailbox=774
;canreinvite=no
regexten=sip779
;username=xlite1
disallow=all
allow=alaw
allow=ulaw
allow=gsm
context=ankommend
 
Zuletzt bearbeitet:
Probier's mal so (ohne das sip vor der 778 ):

exten => 778,1,Dial,SIP/771&SIP/772&SIP/773&CAPI/ISDN3/123|55|r

Ansonsten kann dir vielleicht dieser beitrag inspiration bringen.

Gruss
Chris
 
Zuletzt bearbeitet:
Danke,
das hilft mir weiter.
Diese Dinge, habe ich aber bei meinem HT488 noch nicht gefuden:
VoIP-To-PSTN Gateway Enable: yes
PSTN-To-VoIP Gateway Enable: yes
PSTN Ring Thru Line 1: no ; um es über den asterisk zu leiten
Off Hook While Calling VoIP: no
PSTN Caller Default DP: 8
Ich werde es mal probieren.
Anmelden geht,
wenn ich die Nummer der FXO-Ports (779) wähle, gibt es auch ein Freizeichen und ich kann weiterwählen.
Jetzt muß ich nur noch rausfinden, wie ich es in die Extensions.conf mit einbauen kann, damit bei bestimmer Nummer (0176... immer über der FXO-Port gewählt wird.)

Geht das so?
Code:
exten => _0176X.,1,Dial,SIP/779:${EXTEN}|55|Tt/bdr
 
Mit dem HT488 kenn ich mich leider nicht aus - vielleicht ist er nicht ganz so sophisticated wie ein spa3k ;-)

Hast du schon Betateilchens Asterisk Kurs durchgelesen? Da steht viel nuetzliches drin - fuer dein scenario insbesondre ueber dialplans und (wie ich vermute) kontexte. Ansonsten ist voip-info.org auch immer eine gute adresse fuer recherchen im asterisk bereich.

Viel erfolg!
Chris
 
Danke, den Kurs habe ich schon durch.
Leider bekomme ich bei dieser Zeile nur den Amtston. Der ATA 488 wählt einfach nicht.
 
Zeigt her eure fuesschen ... aeh, confs.

Echt, ohne diese verstehe ich ueberhaupt nicht, worauf du ueberhaupt hinaus willst. Und vermutlich auch sonst niemand.

In deiner zeile oben ist ein schreibfehler, ich dachte, bei lektuere von dem kurs wird's dir schon auffallen ... :hint: :hint: Man kann diesen kurs gar nicht oft genug lesen (und ich sag das aus erfahrung) :-D

Schoenen abend noch!
Chris
 
Ich finde den Schreibfehler leider nicht.

Was ich will:
Ich will einen analogen Amtszugang haben. Den soll der 488 zur Verfügung stellen. Der 488 hängt am Amt und daran ist kein Telefon angeschlossen.

Das heisst: Wähle ich mit einem am Asterisk angeschlossenen Gerät die 0176, soll der Anruf über den 488/Amt gehen. Ruft Jemand am Amt an, sollen auch die Asterisk-Telefone klingeln.

Hier sind meine Dateien.
Ich habe im Prinzip Deine übernommen:
sip.conf schrieb:
[778] ; fxs port (Line 1)
host=dynamic
username=778
secret=secret
type=friend
context=fxs
callerid=irgendwas <778>
nat=no ; dies natürlich nur bei lokalem asterisk, sonst yes
canreinvite=no
dtmfmode=rfc2833 ; das funktioniert beim spa Line 1 mit DTMF Tx Method: INFO
disallow=all
allow=ulaw
allow=g729
allow=gsm

[779] ; fxo-port (PSTN Line)
host=dynamic
username=779
secret=sectret
type=friend
context=ankommend
callerid=landline <779>
nat=no
canreinvite=yes
dtmfmode=rfc2833
disallow=all
allow=ulaw
allow=g729
allow=gsm
extensions.conf schrieb:
[festnetz_out]
exten => _0176X.,1,Dial,SIP/779:${EXTEN}|55|r
[ankommend]
exten => 778,1,Dial,SIP/771&SIP/772&SIP/773&CAPI/ISDN3/123|55|r
Wenn ich SIP/779 gegen CAPI/ISDNA/21 tausche, funktioniert das Ganze über die capi.
Weil ich mir nicht ganz sicher bin, ob ich jeweils SIP/778 oder SIP/779 nehmen muß, habe bisher beides ohne Erfolg probiert.

Mit meiner Konfiguration ist es so:
Wenn ich 01761234567 wähle, bekomme ich ein Freizeichen und muß noch einmal 01761234567 wählen, damit es bei 01261234567 klingelt.
 
Zuletzt bearbeitet:
Bin in eile und kann nicht alles ausfuhrlich begutachten. Stimmen die passwoerter in der sip.conf mit dem ueberein, was du im ATA hast? Auch die kontexte solltest du da mal ueberpruefen ...

Hinsichtlich extensions.conf, probier doch mal folgendes und melde zurueck:

Code:
[I][I][festnetz_out]
exten => _0176X.,1,Dial(SIP/${EXTEN}@779,55,r)

[ankommend]
exten => 778,1,Dial,SIP/771&SIP/772&SIP/773&CAPI/ISDN3/123|55|r[/I][/I]
Viel erfolg!
Chris
 
Danke nochmals, leider keine Änderung. Beide Varianten scheinen richtig zu sein.
Der 488 ist zwei mal bei Asterisk korrekt registriert. Es passiert ja auch etwas, wenn ich ihn über SIP anrufe.
Anrufe aus dem Festnetz lassn nur das evtl. angeschlossene Analogtelefon klingeln, sonst passier nichts, Asterisk merkt nichts von dem Anruf,
Übrigens macht es im Moment auch keinen Unterschied, ob ich Audio, SIP-INFO oder RFC2833 einschalte. Auch in der sip.conf habe ich schon alle Möglichkeiten durch.
Als Anlage schicke ich mal die Konfiguration des 488. Vermutlich ist hier eher der Fehler zu suchen.
P.S.
Bei Basic Settings habe ich die Anzahl der Rufe auf 100 gestellt, weil ansonsten der 488 den Ruf annimmt und dem Anrufer ein VOIP-Freizeichen gibt. Auch die Anrufweiterleitung funktioniert nicht, wenn ich dort etwas eintrage.
Vermutlich ist die 488-Firmware immer noch sehr fehlerhaft, obwohl es die neueste ist, die ich finden konnte. Einen Werksreset habe ich nach dem Aufspielen der Firmware durchgeführt.
 

Anhänge

  • GS_488.pdf
    220.3 KB · Aufrufe: 7
Zuletzt bearbeitet:
Hello again,

wie gesagt, mit deinem ATA kenn ich mich nicht so aus. Hast du schon mal im entsprechenden forum gegraben? Du bist doch sicher nicht der erste, der so etwas realisieren will.

Zwei dinge sind mir aufgefallen bei lektuere deiner ATA konfiguration. Zunaechst mal beim rauswaehlen - da steht in deinem geraet, bestimmte vorwahlen ueber PSTN zu waehlen (Route Call to PSTN). Ich hab zwar keine ahnung, was das genau bewirkt, aber da du das ja eigentlich im asterisk bewerkstelligen willst, koennte ich mir vorstellen, dass du das dort besser wieder rausnimmst. Doppelt gemoppelt gibt oft murx.

Sodann habe ich gesehn, dass dein geraet PSTN to VOIP forwarden kann. Das koennte sich als nuetzlich erweisen fuer eingehende anrufe.

Funktionieren denn eingehende PSTN anrufe derzeit? Klingeln dann all deine aufgefuehrten geraete? Ich hab da ja so meine zweifel mit deiner linie aus der extensions.conf. Falls ja - umso besser. Falls nicht, erklaer ich dir jetzt, wie ich das mit meinem spa3k gebastelt hab:

Ich mache da naemlich ein forward des PSTN zu VOIP - das waren die angaben, die du in deinem geraet nicht gefunden hast - und zwar an die (fiktive) nummer "S0116613573" (ich hab der ein S an den anfang gesetzt um sicherzustellen, dass diese nummer nie unter andern umstaenden in den asterisk gelangt, d.h. um sie eindeutig als vom ATA kommend zu kennzeichnen. Vielleicht geht das bei deinem geraet aber nicht. Wichtig ist einfach, dass es eine eindeutige nummer ist, die du dann im asterisk verwursten kannst).

Im asterisk fange ich dann diese nummer so ab:
Code:
[ankommend]
exten => S0116613573,1,NoOp(Anruf vom Festnetz)
exten => S0116613573,2,Dial,SIP/61|30|r
exten => S0116613573,3,Goto,r-${DIALSTATUS}|1

exten => r-BUSY,1,voicemail,b61
exten => r-BUSY,2,Hangup

exten => r-NOANSWER,1,voicemail,u61
exten => r-NOANSWER,2,Hangup
Der asterisk waehlt also bei einem vom spa3k weitergeleiteten anruf die nummer 61, das ist bei mir im sipura am fxs-port angeschlossen (ich habe sonst kein sip-telefon). Bei dir waeren's dann wieder die ganze latte an geraeten, die du da eingetragen hast.

Also, probier's und viel erfolg!
Chris
 
Ich glaube das hier könnte mir weiter helfen:
Code:
Step 1:
Add a SIP trunk with these details:

Maximum Channels: 1

Trunk Name: HT-488
<or whatever device name you want, remember what you enter, it will be needed in Steps 2, 5 & 6>

PEER Details:
canreinvite=no
context=from-pstn
dtmfmode=rfc2833
host=dynamic
secret=<the password you want the HT-488 to use to authenticate to your Asterisk Server>
type=friend

Leave "USER Context", "USER Details", and "Register String" all blank

Step 2:
Add a CUSTOM Trunk with these details:

Maximum Channels: 1
Custom Dial String: SIP/HT-488,,D(w$OUTNUM$)
<replace 'HT-488' with device name you used in Step 1 if you changed device name in Step 1>

Step 3: <Fixes a bug in FreePBX, may not be necessary, test first without this step>
Modify your extensions.conf as follows:
In the macro-dialout-trunk section, look for the following lines:
exten => s,21,Dial(${pre_num:4}${the_num}${post_num})
exten => s,22,Goto(s-${DIALSTATUS},1)

Replace it with the following lines:
exten => s,21,Set(full_dialstring=${pre_num:4}${the_num}${post_num})
exten => s,22,Set(DialArg1=${CUT(full_dialstring,\,,1)})
exten => s,23,Set(DialArg2=${CUT(full_dialstring,\,,2)})
exten => s,24,Set(DialArg3=${CUT(full_dialstring,\,,3)})
exten => s,25,Dial(${DialArg1},${DialArg2},${DialArg3})
exten => s,26,Goto(s-${DIALSTATUS},1)

Step 4:
In your HT-488's web based configuration, go to the 'BASIC SETTINGS' Section
Set number of rings to answer PSTN line from '4' to '1'
Set "Forward to VoIP" to : s

Step 5:
In your HT-488's web based configuration, go to the 'FXO Port' Section
Enter the login details that you specified in 'PEER Details' in Step 1
Be sure to set your User ID and Auth ID to be 'HT-488'
<or device name you used in Step 1 if you changed device name in Step 1>

Step 6:
Use: "SIP/HT-488,,D(w$OUTNUM$)" as your trunk when setting up your outgoing routes.
<replace 'HT-488' with device name you used in Step 1 if you changed device name in Step 1>
Leider verstehe ich es nicht. Wo muß man z. B. einen CUSTOM Trunk anlegen? Ist das eine Trixbox-Besonderheit?
Kann mir das evtl. Jemand in leicht verständliches Deutsch übersetzen?
 
Das ist wirklich nur fuer trixbox brauchbar, vergiss es, in einem normalen asterisk funktionieren diese linien nicht. Ich hatte das auch schon mal fuer sipura und asterisk@home beschrieben (so hiess trixbox frueher).

Grundsaetzlich steht da aber auch bloss, was ich dir im vorigen beitrag geschrieben habe - mach ein forward von PSTN auf VOIP mit einer eindeutigen nummer (in deren beispiel s) und verabeite dann den anruf im asterisk.

das einzige zusaetzliche ist diese info:
Code:
Set number of rings to answer PSTN line from '4' to '1'
... und das wirst du ja wohl verstehen, oder? ;)

Hast du's schon probiert?
Chris
 
Gut, ankommende Rufe gehen jetzt, nachdem ich als Weiterleitungsnummer s eingetragen habe. Nachteil: Die Rufnummer wird nicht übermittelt. Es steht einfach nur landline auf dem Display.

Jetzt muß ich nur noch Rufe raus bekommen.
Dafür ist es nötig, dass eine Nachwahl der Rufnummer stattfindet, weil ich snst nur den Amtston bekomme und die Nummer noch einmal eintippen muß.
Gibt es eine Möglichkeit, die Töne als DTMF zu senden, wenn der Amtston da ist? Evtl. Playtones, oder so.
Oder kann man zwei Dialbefehle hintereinander ausführen?
Etwa so etwas?
exten => _010X.,1,Dial(SIP/779:1,,,,${EXTEN})/bo
Erst 1 wählen, dann abwarten, dann weiterwählen, ...
 
Bei mir wird die rufnummer auch nicht uebertragen - kann ich mit leben.

Von wo aus versuchst du per PSTN rauszuwaehlen? Was sagt der asterisk dazu? Kannst du das mal posten?

Hast du diese zeile so in deiner extensions.conf?
Code:
[I][I][I][I][festnetz_out]
exten => _0176X.,1,Dial(SIP/${EXTEN}@779,55,r)[/I][/I][/I][/I]

Hast du den eintrag des routings aus der ATA konfiguration rausgenommen?
Die idee, doppelt rauszuwaehlen, ist gelinde gesagt bescheuert. Das ist nicht noetig, wenn's mal richtig eingerichtet ist.

Chris
 
Routing ist was anderes:

Wenn man nichts einträgt, kann man per *00 rauswählen, ansonsten ist es, wie ein Wahlregel. Das ist aber bei Asterisk-Wahl nicht nötig.
 
Danke, das war es!
Zusammenfassung:
Ich habe diese Zeilen zum Rauswählen übers Festnetz bei Vorwahl 010 eingefügt:
Code:
[out-context]
exten => _010X.,1,SetGlobalVar(DIALEDNUMBER=${EXTEN})
exten => _010X.,2,Dial(SIP/779,,TM(MD2))
exten => _010X.,3,Hangup
[macro-MD2]
exten => s,1,SIPDtmfMode(info)
;exten => s,2,Wait(1)
exten => s,2,SendDTMF(${DIALEDNUMBER})
Eine Pause ist bei mir nicht nötig, das dauert immer noch sehr lange.
Für ankommende Gespräche habe ich diese Zeilen eingefügt:
Code:
[ankommend]
exten => s,1,Dial,SIP/771&SIP/772&SIP/773&CAPI/ISDN3/12345|55|r
exten => s,2,Hangup
Dazu passend den HT488 programmiert:
Code:
Basic Settings:
Forward to VoIP:     s
 

Zurzeit aktive Besucher

Neueste Beiträge

Statistik des Forums

Themen
244,872
Beiträge
2,219,909
Mitglieder
371,594
Neuestes Mitglied
AA-Idealbau
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.