Erhalte keine ankommenden Rufe von TK-Anlage

TKI013

Neuer User
Mitglied seit
13 Apr 2005
Beiträge
52
Punkte für Reaktionen
0
Punkte
0
Hallo an Alle,

mein Asterisk hängt mit einer ISDN-KArte hinter einer TK-Anlage und mit der anderen Karte direkt an einem öffentlichen ISDN-Mehrgeräteanschluss. Die 4 Files zeigen eine funktionierende Lösung dafür:

Anrufe gehen über CAPI raus (über MSN 535 zu anderen internen Nebenstellen der Anlage, oder aber auch ganz raus über die 3012092)
und kommen rein über die selben MSN der beiden Controller und werden an Firefly signalisiert.

*********************** SIP.CONF *************************
[general]
port = 5060
bindaddr = 192.168.1.100

; *** Softphone: X-Lite ***
[510]
type=friend
context=X-Lite
host=dynamic
username=510
callerid="Odin"=<510>
qualify=200
secret=510

************************** IAX.CONF ***********************
[general]
bindport=4569
bindaddr=192.168.1.100
bandwidth=high

; *** Softphone: Firefly ***
[530]
type=friend
context=Firefly
username=530
host=dynamic
callerid="Thor"=<530>
secret=530
qualify=200

****************** EXTENSIONS.CONF ************************************
[general]
static=yes
writeprotect=no

; *************************************
; *** Waehlregeln fuer jeden Client ***

[X-Lite]
include => intern
include => capi-contr1
include => capi-contr2

[Firefly]
include => intern
include => capi-contr1
include => capi-contr2

[intern]
exten => _51X,1,Dial(SIP/${EXTEN})
exten => _53X,1,Dial(IAX2/${EXTEN})

; **************************************************
; *** Waehlregeln fuer die beiden Schnittstellen ***

[capi-contr1]
exten => _0XXX.,1,Dial(CAPI/@3012092:${EXTEN-1})
exten => _0XXX.,2,Congestion
exten => 3012092,1,Dial(IAX2/530)

[capi-contr2] ; Dekade: 53x
exten => _XX,1,Dial(CAPI/@535:${EXTEN})
exten => _XX,2,Congestion


********************** CAPI.CONF **********************************
[general]
nationalprefix=0
internationalprefix=00
rxgain=0.8
txgain=0.8

[interfaces]

; *** Controller 1 ****
msn=3012092 ; 510,511,512,513,514,515,516,517,518,519
incomingmsn=3012092 ; 510,511,512,513,514,515,516,517,518,519
accountcode=
context=capi-contr1
callergroup=1
controller=1
devices=2
softdtmf=1

; *** Controller 2 ***
msn=530,531,532,533,534,535,536,537,538,539
incomingmsn=* ; 530,531,532,533,534,535,536,537,538,539
accountcode=
context=capi-contr2
callergroup=1
controller=2
devices=2
softdtmf=1

So wie die Files jetzt sind, wird ein ankommender Ruf über die 3012092 am IAX2 Firefly Softphone signalisiert. Bedeutet also für mich: Config-Files sind OK. Aber: nun soll der öffentliche Anschluss auch an die Anlage.

Also es sollen beide Controller an 2 Ports der Anlage hängen: 51x und 53x. Es liegen also an beiden Ports je 10 MSN an und die sollen an die internen Asterisk-IP-Phones vergeben werden (weitere Clients folgen später). Ich versuche verzweifelt irgend einen Anruf in Asterisk reinzubekommen, aber es klappt einfach nicht. Wenn ich jetzt z.B. an den Port 51x gehe und * entsprechend konfiguriere, passiert folgendes:

Fall 1 mit folgenden Einträgen:
msn=510
incommingmsn=510
exten => 510,1,Dial(IAX2/530)
... es passiert absolut gar nichts.

Fall 2 mit folgenden Einträgen:
msn=510
incommingmsn=*
exten => 510,1,Dial(IAX2/530)
... Asterisk reagiert wenigstens, aber mit folgender Fehlermeldung:

Asterisk Ready.
-- creating pipe for PLCI=0x101 msn = *
sent ALERT_REQ PLCI = 0x101
-- started pbx on channel (callgroup=0)!
== Starting CAPI[contr1/s]/0 at capi-contr1,s,1 failed so falling back to exten 's'
== Starting CAPI[contr1/s]/0 at capi-contr1,s,1 still failed so falling back to context 'default'
Jun 1 19:12:27 WARNING[31160]: pbx.c:1889 ast_pbx_run: Channel 'CAPI[contr1/s]/0' sent into invalid extension 's' in context 'default', but no invalid handler
-- CAPI Hangingup
sent CONNECT_RESP for PLCI = 0x101
-- removed pipe for PLCI = 0x101

Fall 3 mit folgenden Einträgen:
msn=50
incommingmsn=*
exten => s,1,Dial(IAX2/530)
... Jetzt klingelt endlich die 530. Dummerweise sofort, wenn irgendein Setup auf dem Bus passiert. Ich kann also keine einzige MSN ganz sauber einem speziellen Tln an Asterisk zuordnen :(

Wenn also 10 Rufnummern an diesem Port anliegen, dann kann ich damit nicht arbeiten :(( Nun wollte ich diese Dekaden-Geschichte 51x mal aussen vor lassen und hab den zweiten Anschluss von Asterisk mal an beliebigen anderen internen S0-Ports der Anlage ausprobiert (Port von ganz normalen ISDN-Telefonen oder auch mal Port eines G4-Fax-Gerätes), aber immer mit dem selben negativen Ergebnis. Wenn ich statt dem ISDN-Telefon an Port 33, oder statt dem Fax-Gerät an Port 55, wo also wirklich nur die eine Nummer anliegt, den Asterisk anschließe, krieg ich nie nen anständigen Ruf über die anliegende MSN rein.

Hab schon mit den Parametern accountcode und nationalpraefix usw. rumexperimentiert, aber das hilft alles nichts. Irgendwelche Einstellungen von Asterisk vertragen sich nicht mit der Anlage, wie es scheint.....
Intern und nach aussen geht absolut alles sauber, auch über capi. Nur rein will nichts ordentlich, sodass ich meine späteren (10) Tln direkt addresieren kann.

Weißt irgendjemand Rat ????????
Komme sonst hier echt nicht weiter :((

Viele Grüße und schonmal Danke
Ronny
 
In der sip.conf fehlt unter [general] ein context= (default ist default)!
Daher sucht er bei eingehenden Gesprächen eine s-Extension im context=default.
 
OK, ist gemerkt fürs nächste mal und gelobe Besserung!

- meiner Meinung nach liest sich der Quellcode so besser, wenn er im ganzen dargestellt wird
- wußte halt nicht genau, in welchem Topic ich die Anfrage stellen sollte, SORRY.

Trotz alledem besteht mein Problem weiterhin: ich komme weder über den einen Controller über die 52 rein, noch über den anderen Controller über 53x.

Ich kann zwar exten=>s.1.Dial(IAX2/530) schreiben, dann kommt ja quasi jeder Ruf zu diesem Telefon mit der Nummer 530 rein. Aber dann kann ich doch die ganzen anderen IP-Phones nicht gezielt ansprechen. :(
Und darum gehts doch.

Das ganze soll später mal ungefähr so aussehen, wie ich es in der Extensions.conf bereits auskommentiert dargestellt habe.

IAX.CONF
Code:
[general]
bindport=4569
bindaddr=192.168.1.100
bandwidth=high
context=default

; ******************* Softphone: Firefly *************
[530]
type = friend
context = Firefly
username = 530
host = dynamic
callerid = "Thor" = <530>
secret = 530
qualify = 200

SIP.CONF
Code:
[general]
port = 5060
bindaddr = 192.168.1.100
context=default

; ************ Softphone: X-Lite ************
[52]
type = friend
context = 52
host = dynamic
username = 52
callerid = "Odin" = <52>
qualify = 200
secret = 52

CAPI.CONF
Code:
[general]
nationalprefix=0
internationalprefix=00
rxgain=0.8
txgain=0.8

[interfaces]

; *** Controller 1 **** 
msn=52			; 510,511,512,513,514,515,516,517,518,519
incomingmsn=*		; 510,511,512,513,514,515,516,517,518,519
accountcode=
context=default
callergroup=1
controller=1
devices=2
softdtmf=1

; *** Controller 2 *** 
msn=530,531,532,533,534,535,536,537,538,539
incomingmsn=*
accountcode=
context=default
callergroup=1
controller=2
devices=2
softdtmf=1

EXTENSIONS.CONF
Code:
[general]
static=yes
writeprotect=no

[default]

; für ankommende Rufe
exten => 52,1,Dial(SIP/52)
exten => 530,1,Dial(IAX2/530)

; exten => 531,1,Dial(SIP/531)
; exten => 532,1,Dial(IAX2/532)
; exten => 533,1,Dial(MGCP/533)
; ..... usw. ................

; für abgehende Rufe
exten => _0XXX.,1,Dial(CAPI/${CALLERIDNUM:0:3}:${EXTEN})
exten => _XX,1,Dial(CAPI/${CALLERIDNUM:0:3}:${EXTEN})

[52]
include => default
include => intern

[Firefly]
include => default
include => intern

[intern]
exten => _51X,1,Dial(SIP/${EXTEN})
exten => _53X,1,Dial(IAX2/${EXTEN})

Woran kann's denn nun noch liegen ???
Ronny
 
Anrufe gehen über CAPI raus (über MSN 535 zu anderen internen Nebenstellen der Anlage, oder aber auch ganz raus über die 3012092)

Ich kann Dir vielleicht helfen:
Deine capi.conf passt nicht. Wenn Du über die 3012092 ins PSTN telefonieren willst, wo steht die Nummer dann in der capi.conf? Controller 2 soll wohl am öffentlichen Netz hängen, oder? Wie wilst Du dann von der 525 (was wohl schon deine deiner externen MSNs ist) eine interne Nummer anrufen? Die Tk-Anlage (an der die Telefon hängen) hängt doch an einem ganz anderen Kabel, oder (Kontroller1), oder?
Im übrigen ist es immer ein guter Rat, eingehende und abgehende Anrufe in der extensions.conf zu trennen (bzw. zwei controller, die nicht auf die gleichen MSNs reagieren). So kann man überlappungen und verwechslungen besser verhindern.
 
Sorry,sorry,sorry.
ich danke erstmal für die Antworten.


Nochmal zum Verständnis:

Hab in den letzten Tagen nur getreu dem motto: trial and error experimentiert. hab die confs ständig geändert und die anschlüsse: mal intern mal extern usw.

Fazit:

Die Konfiguration ganz obern in diesem Thread: Asterisk an folgenden 2 Anschlüssen (53x an HiCom und 3012092 direkt am NTBA) funktioniert tadelos (intern, rein(nur über 3012092) und raus) => das beweist mir nur, dass alles richtig eingebunden und konfiguriert ist, sodass wenigstens über den externen Anschluss (3012092) ein Ruf zu Asterisk reinkommen kann, so wie er soll: exten=>3012092,1,Dial(.....). Dieses Szenario war ein Test.

Aber:

Asterisk soll nun aber an 2 Ports der HiCom ran (Port 53x, also 530...539 und Port 52 z.B.) So wie die 4 Configs meines letzten Beitrages (grüner Code) sind, war mein letzter Versuch, den ich gemacht habe.

Egal an welchem Port der HiCom ich Asterisk anschließe, ich bekomme keinen zielgerichteten Ruf rein, raus und intern geht alles.

Es geht: msn=52
incommingmsn=*
exten=>s,1,Dial(SIP/52)
=> somit reagiert der auf alles was reinkommt immer auf dem selben Telefon.

Es geht aber nicht, was ich brauche:
msn=52
incommingmsn=52
exten=>52,1,Dial(SIP/52)

=> denn das soll dann später so aussehen:
msn=530,531,532,533......
incommingmsn=530,531,532,533........
exten=>530,1,Dial(SIP/530)
exten=>531,1,Dial(IAX2/531)
exten=>532,1,Dial(MGCP/532)
usw....
Nur so kann jeder Client auf seine eigene Rufnummer hören.

(Aber mit dem externen ISDN-Anschluss 3012092, also ohne über die HiCom zu gehen, kommt der Ruf ordentlich rein)

Und in den Beispielen die ich gelesen habe, machen die anderen das auch nicht anders wie ich, oder? Und zum Thema Übersichtlichkeit: bin ich auch dafür und dachte, dass ich das im obersten Conf-Bsp. ganz gut hinbekommen habe. Aber jetzt hab ich alles wieder über den Haufen geworfen, weil ich dachte das Problem liegt irgendwo bei einer falschen context-Zuweisung.

Ich weiß nicht ob das an der HiCom liegt (aber andere ISDN-Geräte können auch über die MSN 52 am Port 52 erreicht werden), ob das an irgendwelchen kleinen scheinbar unbedeutenden Parametern von Asterisk liegt, ob sonst noch irgendwo im Linux-System ein Eintrag für die ISDN-Controller gemacht werden muss, oder ob ich meine Configs falsch habe ??????????????

Ich nehm jetzt gleich den Protokollanalyzer Argus 44 und vergleiche einen reinkommenden Ruf von der externen MSN 3012092 mit einem reinkommenden internen Ruf (z.B. von der HiCom-Nebenstelle 44).

So verzweifelt bin ich schon. Irgendwo muss doch da noch ein Unterschied sein. Vielleicht schickt die HiCom bei einem Anruf, der von ihr intern kommt oder der über sie reinkommt, andere Parameter oder Optionen mit, als das bei einem externen Anschluss mit Euro-ISDN der Fall ist ???

Ronny
 
Leider kenne ich mich mit der HiCom ISDN-Anlage nicht aus. Aber so selten ist die auch nicht. Benutz einfach mal die Suchfunktion des Forums. Gib als suchwort "Hicom" ein, und als Suchbereich (unten links) Asterisk (bzw Asterisk mit CAPI). Da dürften einige Beiträge kommen. UNd wenn Du da keine Lösung findest, dann könntest Du ja mal einzelne User anmailen, die auch ne Hicom haben, und da mal höflich anfragen, wie die es gemacht haben...
 
OK, so werd ichs wohl machen müssen.

Scheint tatsächlich auch ein Problem in der Konfiguration der HiCom für Mehrgeräteanschlüsse zu sein.
Denn jetzt hab ich den Asterisk mit seinen 2 ISDN-Karten mal an 2 andere Ports der HiCom angeschlossen, die als Analoganschlüsse konfiguriert sind (6x und 7x).
Und siehe da, da läuft alles so wie es soll: intern, abgehende Rufe und jetzt auch gezielte ankommende Rufe. Wenn ich jetzt also die 77 oder die 65 anrufe, dann klingeln auch die entsprechenden IP-Telefone hinter Asterisk.

Trotzdem vielen Dank.
Ronny
 
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.