anrufe von asterisk zu ISDN Telefon an Fritzbox

masteriq

Neuer User
Mitglied seit
11 Sep 2007
Beiträge
26
Punkte für Reaktionen
0
Punkte
0
ich würde gerne von meinen SIP telefonen am asterisk zu den isdn telefonen an der fritzbox 7170 durchstellen können (und andersherum natürlich auch)

prinzipiell kann man bei der fritzbox ja mit **51,**52 etc. die angeschlossenen telefone erreichen. wenn ich jetzt aber asterisk über capi/isdn1/$Outnum$ z.B. **52 wählen lasse klappt das nicht.

Code:
Executing Dial("SIP/21-087e95e0", "CAPI/ISDN1/**52|300|" in stack
Called ISDN1/**52
>ISDN1#02: CAPI INFO 0x34e4: Invalid Information element contents
== ISDN1#02 CAPI Hangingup for PLCI=0x1401 in state 4
...

irgendeine Idee wie man das richtig macht?
Danke
 
Hallo masteriq,

du hast also einen Asterisk server hinter einer fritzbox am laufen. also nicht die asterisk auf der fritzbox? Welches ist direkt am NTBA angeschlossen?
Aber die Fritzbox ist nicht als SIP-client an der Asterisk verbunden, sondern nur über CAPI?

Prinzipiell ist ja die "features.conf" für den tastencode des transfers zuständig. Bei mir wäre fürn blindtranser die #1.
Also bei der Wahl von #123 wird der Call dann ohne Nachfrage an den Teilnehmer 23 übergeben.

Gleichzeitig gilt:
http://www.das-asterisk-buch.de/stable/transfer.html
Transfer von Gesprächen
Wer die Applikation Dial() ohne weitere Optionen (bzw. Flags) benutzt, kann bestehende Gespräche nicht zu einem anderen Telefon transferieren. Dieses Feature muss explizit bei der Dial()-Applikation mit der Option t, T oder tT aktiviert werden. Wie das genau geht, wird in „Dial()“ beschrieben. Wer sowohl dem Anrufer wie auch dem Angerufenen das Transferieren von Gesprächen erlauben will, muss die Optionen tT benutzen.
Beispiel:
exten => _2XXX,1,Dial(SIP/${EXTEN},tT)

Ob das allerdings außerhalb der Asterisk geht kann ich Dir gerade nicht sagen.
Aber ich würde erst mal die Dialanweisung dementsprechend anpassen und dann solltest du bedenken, dass das feature **ISDN-Nummer ein AVM Feature ist und das der Asterisk egal sein dürfte.
Wenn du also via CAPI von deinen SIP-telefonen die an der FB angeschlossenen internen ISDN-Teilnehmer erreichst, dann kannst du das mal mit dem Transfer probieren.

vg
waldoo
 
hallo waldoo,

wie du schon richtig erkannt hast, habe ich meinen asterisk nicht auf der fritzbox, sondern per rcapi über tcp damit verbunden. raustelefonieren klappt super, und auch alle ankommenden anrufe von ausserhalb auf beliebige msn werden korrekt am asterisk signalisiert.

Problem: ich will jetzt von meinen SIP telefonen am asterisk ein ISDN telefon an der fritzbox anrufen. wie du ja auch schon geschrieben hast, ist das natürlich die grundvorraussetzung für einen transfer.

transfere klappen übrigens (bei mir mit ##) generell auch.

ich muss also die internen nummern von den isdn telefonen rauskriegen, die ja an der fritzbox hängen und nicht am asterisk. wie mache ich das an der fritzbox oder am telefon?

vielen dank
 
ich hab jetzt an einem telefon eine interne msn eingerichtet, jetzt muss ich die noch irgendwie in der fritzbox einrichten, vielleicht klappt es ja dann.

aber wie klappt es anderesherum? d.h. wie gebe ich dem asterisk eine interne rufnummer (er hört ja jetzt eigentlich schon auf alle msns ...)
na ich werds mal probieren
 
jetzt weiss ich auch wieder woher wir uns kennen "rcapi" :)
okay sorry vergesse mein #2.

Ich bin gerade am überlegen, ob das überhaupt gehen wird. Die rcapi wird nur über extern wählen, nicht aber nach intern.
Meine Begründung stütze ich darauf, dass das nicht der AVM-Dienst ist, der mit der **intern-ISDN-nummer etwas anfangen kann.

Hm, ich schaue mir das daheim mal an.

vg
waldoo
 
Die Fritzbox stellt 5 capi controller zu Verfügung
Controller 3 ist der interne S0 im NT.Mode.

CLI> capi info
Common ISDN API Driver ($Revision: 528 $) www.chan-capi.org
Contr1: 2 B channels total, 2 B channels free.
Contr2: 2 B channels total, 2 B channels free.
Contr3: 2 B channels total, 2 B channels free.
Contr4: 1 B channels total, 1 B channels free.
Contr5: 3 B channels total, 3 B channels free.

Nr. 4 ist Analog Amt
Nr.5 sind die Analog Nebenstellen

Es muss also heissen:
dial(CAPI/ISDN3/"Nr. Telefon"|300|....)


Gruß
 
danke karl, das werde ich morgen gleich mal ausprobieren.

im augenblick habe ich mit dem rcapi aber immer nur einen controller zur auswahl. man kann zwar die controller 1-5 auswählen (mit "cfg_rcapid start 1" oder "cfg_rcapid 2" etc.), aber man hat halt so immer nur einen zur verfügung. ich bräuchte ja dann einen (z.B. 1) zum raustelefonieren und einen (den 3.) für interne telefonate. wie mache ich das?

ich benutze das rcapi skript von http://spblinux.de/fbox/cfg_rcapid
 
Sobald eine Capi Verbindung zur Fritzbox
existiert gibts es über Rcapi die fünf Controller.
Diese stehen parallel zur Verfügung. Wenn nicht
check deine Konfiguration. Welchen Weg der
Asterisk routet ist dann nur eine Frage der
extensions.conf.

dial(CAPI/ISDN[12345]/"Nr. Telefon"|300|....)

Also ich starte auf meiner Fritzbox die folgende Scripte von spblinux
in meiner debug.cfg auf der Fritzbox:

wget -qO /var/rcapid_ins.sh http://192.168.2.1/fbox/rcapid_ins.sh
chmod 755 /var/rcapid_ins.sh
/var/rcapid_ins.sh
/var/rcapid_run.sh

Auf meinen Server, auf dem der Asterisk läuft benutze ich die libcap20-cm von
hier :

ftp://ftp.chan-capi.org/capi-utils/libcapi20-3-cm.tar.gz

und die capiinfo von hier:

ftp://ftp.chan-capi.org/capi-utils/capiinfo-cm.tar.gz


und die chan_capi von hier:

ftp://ftp.chan-capi.org/chan-capi/chan_capi-HEAD.tgz

funktioniert einwandfrei.
 
Super Vielen Dank Karl23.
Also ich hab jetzt auch alle 5 capi controller, nachdem ich was in der inetd.conf von spblinux geändert habe. die version von rcapid_ins.sh skript von hier aus dem forum hatte ich auch shcon mal probiert, das funktionierte aber mit meiner fritzbox 7170 nicht.

aber jetzt kann ich über capi/isdn3/ auch an die internen isdn geräte der fritzbox telefonieren. nächstes problem:
andersherum funktioniert es noch nicht, d.h. die ISDN Telefone können meine SIP Telefone noch nicht anrufen, obwohl ich alle MSN catche (mit any DID/CID).

Ich sehe den Anruf auf der Konsole im CLI, aber Asterisk nimmt Sie nicht an. Ich sehe jetzt sogar alle anrufe, auch die nach ausserhalb, die nicht der asterisk sondern die FBF vermittelt. Wie nehme ich jetzt die (und am Besten nur die) an, die z.B an 21,22 etc. gehen?
 
in capi.conf:
[ISDN3]
ntmode=yes
ISDNmode=DID
context=int-so
.
.

in extensions.conf:
[int-so]
exten => _2[12],1,dial(sip/{$EXTEN},40,tT)
exten => _2[12],2,hangup()
exten => 33,1,dial(IAX2/33,26,rT)
exten => 33,2,hangup
 
super! das funktioniert einwandfrei.
jetzt bin ich ja echt zufrieden mit dem asterisk, denn er fügt sich so wirklich nahtlos in die vorhandene telefoninfrastruktur ein.

vielen dank nochmal für eure hilfe.

und falls sonst nochmal jemand über den Thread stolpert: in Karl23's letztem post sollte es natürlich ${EXTEN} anstatt {$EXTEN} heißen, sonst geht garnix.
 
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.