Gewählte Rufnummern kommen nicht in Asterisk an

dirk01

Neuer User
Mitglied seit
20 Okt 2004
Beiträge
18
Punkte für Reaktionen
0
Punkte
1
Hallo,

ich habe ein Problem mit Asterisk 1.2.1 auf einer Suse 10 Kernel 2.6.9-15,
2 HFC ISDN Karten (1NT Mode , 1 TE Mode) und einem Gigaset SX 440 ISDN. Das ISDN Telefon ist über einem NTBA mit der HFC Karte (NT Mode) verbunden.Schaltung lt CT 12/05
Die 2 HFC Karte (TE) ist mit dem Telekom Telefonnetz über einen NTBA angeschlossen.Die Bristufftreiber sind auch geladen und eigentlich müßte alles wunderbar funktionieren.
Tut es aber nicht.
In der Extension.conf habe ich eine Regel die einen vom Amt ankommenden Ruf auf das ISDN Telefon (MSN 21) leitet. Das funktioniert auch wie es soll.
Nur das wählen funktioniert mit dem ISDN Telefon gar nicht.
Im CLI vom Asterisk erscheint die folgende Meldung:

Extension 's' in context 'pbx-trunk' from '21' does not exist. Rejecting call on channel 0/2 span 1.

Wähle ich jedoch über eine Fritz USB die am 2 Anschluß des modifizierten NTBA angeschlossen ist funktioniert das Wählen ohne Probleme.
Ich habe schon die Kabel und Anschlüße am NTBA der ISDN Karte und des Telefon getauscht.Das Telefon gibt die gewählte Nr nicht raus.
Das Telefon funktioniert am Amt NTBA und am internen S0 Bus einer Euracom 181 einwandfrei.
Was kann ich jetzt noch tun ?

Viele Grüße

Dirk


Hier die Zaptel.conf

#
# hfc-s pci a SPAN Definitionen
#
loadzone=nl
defaultzone=nl
span=1,1,3,ccs,ami
bchan=1-2
dchan=3
span=2,1,3,ccs,ami
bchan=4-5
dchan=6

zapata.conf
[channels]
;----------------------------------------------------------------------------
;NT-Karte fuer ISDN-Telefonanlage im Mehrgeraete-Anschluss
;----------------------------------------------------------------------------
switchtype = euroisdn
signalling = bri_net_ptmp
pridialplan = local
prilocaldialplan = local
echocancel = yes
overlapdial = no
echocancelwhenbridged=no
echotraining=no
immediate = no
usecallerid = yes
group = 1
context = pbx-trunk
channel => 1-2
usecallingpres=yes
nationalprefix = 0
internationalprefix = 00

;-----------------------------------------------------------------------------
;TE-Karte fuer Anschluss an NTBA/ISDN-Telefonnetz
;-----------------------------------------------------------------------------
switchtype = euroisdn
signalling = bri_cpe_ptmp
pridialplan = local
prilocaldialplan = local
echocancel = yes
echocancelwhenbridged=no
echotraining=no
usecallerid = yes
overlapdial = no
immediate = no
group = 2
context = tcom-trunk
channel => 4-5

extensions.conf
[general]
static=yes
writeprotect=no
[globals]
IAXINFO=guest ; IAXtel username/password
[default]
include => tcom-trunk
include => pbx-trunk

[tcom-trunk]
; Hereinkommende Anrufe werden auf interne MSN 3333 geleitet
exten => _X.,1,Dial(Zap/g2/3333,60)
exten => _X.,2,Hangup

[pbx-trunk]
; 8 vorwaehlen -> Ueber ISDN waehlen
; ${EXTEN:1} bedeutet, dass von der zu waehlenden Rufnummer eine
; Ziffer abgeschnitten wird, hier also die '8'.
exten => _8.,1,Dial(Zap/g1/${EXTEN:1}/,60)
exten => _8.,2,Congestion
exten => _8.,3,Busy
exten => _8.,4,Hangup
; 9 vorwaehlen -> Ueber SIP waehlen
exten => _9.,1,Dial(SIP/${EXTEN:1}@myqsc,60)
exten => _9.,2,Congestion
exten => _9.,3,Busy
exten => _9.,4,Hangup
 
dirk01 schrieb:
[pbx-trunk]
; 8 vorwaehlen -> Ueber ISDN waehlen
; ${EXTEN:1} bedeutet, dass von der zu waehlenden Rufnummer eine
; Ziffer abgeschnitten wird, hier also die '8'.
exten => _8.,1,Dial(Zap/g1/${EXTEN:1}/,60)

Mit diesem Wählbefehl rufst du von deinem internen ISDN-Telefon aus einen Teilnehmer deines internen S0-Buses an.

Mach mal aus dem g1 ein g2

In diesem Context wird verarbeitet, was du mit deinem ISDN-Telefon wählst. Das bedeutet, wenn du ein anderes Telefon an deinem internen S0 rufen willst, ist dieser Wahlbefehl richtig. Wenn du aber ins Festnetz rufen willst heisst das g2, weil in der zapata.conf hast du für die Karte im TE-Modus g2 festgelegt.
Ausserdem hat deine zapata.conf noch einen Fehler:
Der Eintrag channel => für die erste Karte muss ans Ende von den Eintragungen für die NT-Karte. channel => beendet die Übernahme von Parameterwerten für diese Karte.
 
kombjuder schrieb:
Mit diesem Wählbefehl rufst du von deinem internen ISDN-Telefon aus einen Teilnehmer deines internen S0-Buses an.

Mach mal aus dem g1 ein g2

In diesem Context wird verarbeitet, was du mit deinem ISDN-Telefon wählst. Das bedeutet, wenn du ein anderes Telefon an deinem internen S0 rufen willst, ist dieser Wahlbefehl richtig. Wenn du aber ins Festnetz rufen willst heisst das g2, weil in der zapata.conf hast du für die Karte im TE-Modus g2 festgelegt.

Danke für den Hinweis.
Die Zapata.conf habe ich geändert, aber die gewählte Rufnummer landet auch so nicht im Asterisk.
Kann es etwas mit dem ISDN Takt zu tun haben das die Nummer nicht durchgeleitet wird ?
Ich habe leider kein anderes Gigaset zum testen.
 
dirk01 schrieb:
Die Zapata.conf habe ich geändert, aber die gewählte Rufnummer landet auch so nicht im Asterisk.

Doch, der call landet im Asterisk. Der mault nämlich laut deiner Aussage. Nur kann er nichts mit deinen Anweisungen anfangen.

Mach mal den / nach der } weg:

exten => _8.,1,Dial(Zap/g1/${EXTEN:1}/,60), also

exten => _8.,1,Dial(Zap/g2/${EXTEN:1},60)
 
kombjuder schrieb:
Doch, der call landet im Asterisk. Der mault nämlich laut

Ja , der Call landet zwar im Asterisk, aber ohne auswertbare extension.
Mein Problem ist, das das Gigaset keine vernünftige extension produziert.
Die Fritzcard am selben Bus schon.Ein anderes ISDN Telefon funktioniert auch problemlos.
Ich könnte zwar eine Regel für die Extension 's' erstellen, da mir aber die Rufnummer über den S0 Bus nicht übergeben wird
bringt mir das in diesem Fall nichts.
Fritzcard, normales ISDN Telefon erzeugen die gewählte Nummer als Extension,
Gigaset SX440 ISDN erzeugt nur extension 's'
 
Zuletzt bearbeitet:
dirk01 schrieb:
Gigaset SX440 ISDN erzeugt nur extension 's'

Dann ist dein SX440 kaputt.

Ändere deine Wahlzeile von

exten => _8.,1,Dial(Zap/g2/${EXTEN:1},60) in
exten => _X.,1,Dial(Zap/g2/${EXTEN},60)

und schau mal ob das geht. Wenn nicht doch s-Extension und schauen was deine SX da abliefert.
Er bringt anscheinend die 8 nicht als erstes Zeichen.
Wählt das SX uU automatisch eine 0 vor?
 
kombjuder schrieb:
Dann ist dein SX440 kaputt.

Ändere deine Wahlzeile von

exten => _8.,1,Dial(Zap/g2/${EXTEN:1},60) in
exten => _X.,1,Dial(Zap/g2/${EXTEN},60)

und schau mal ob das geht. Wenn nicht doch s-Extension und schauen was deine SX da abliefert.
Er bringt anscheinend die 8 nicht als erstes Zeichen.
Wählt das SX uU automatisch eine 0 vor?
Das SX 440 bringt gar keine Zeichen. Der Asterisk zeigt mir ja mit der ISDN Karte und dem anderen ISDN Telefon die extension, die den gewählten Nummern entsprechen, an. Mit der s Extension kommt auch keine Nummer in den Asterisk.
Habs mal probiert:
-- Accepting voice call from '21' to 's' on channel 0/2, span 1
-- Executing Dial("Zap/2-1", "Zap/g1/s|60") in new stack
-- Requested transfer capability: 0x00 - SPEECH
-- Called g1/s
== Primary D-Channel on span 1 up for TEI 67
-- Channel 0/2, span 1 got hangup request
-- Hungup 'Zap/1-1'
Ich würde ja auch denken das das Telefon kaputt ist, aber es funktioniert ja am internen S0 Bus der Euracom und am Amt NTBA einwandfrei.
Dort kann ich anrufen und angerufen werden.
Nur an der HFC Karte gehts nicht.Das SX440 von einem anderen Telefon anrufen ist kein Problem.
 
dirk01 schrieb:
Das SX440 von einem anderen Telefon anrufen ist kein Problem.

Dann mhast du ein Timingproblem.

Dein Asterisk nimmt die Leitung auf, bevor die Rufnummer fertig (in deinem Fall noch gar nicht) übertragen ist.

Entweder du bringst deinem SX bei sofort zu wählen oder sagst dem Asterisk er soll auf die Nummer warten.

Da gibts was für die zapata.conf, den Befehl kenne ich aber nicht.
 
kombjuder schrieb:
Da gibts was für die zapata.conf, den Befehl kenne ich aber nicht.

Vielen Dank für Deine Hilfe.
Dann werd ich mich mal auf die Suche machen den passenden Parameter
zu finden.
Am Telefon läßt sich leider zum Wahlverhalten nichts einstellen.
 
In der Zapata.conf kann man es anscheinend nicht einstellen.Ich habe mal alle dafür in Frage kommenden Parameter ausprobiert. Aber es ändert sich nix.
Evtl muß da auf Treiber Ebene etwas gemacht werden ?
 
Das Telefon ist nicht kaputt, auch ein neues SX440 ISDN zeigt dieses merkwürdige Verhalten.
 
Also ich denke mal der Fehler wir mit dieser Meldung doch schon recht gut erklärt:

Extension 's' in context 'pbx-trunk' from '21' does not exist. Rejecting call on channel 0/2 span 1.

Ich sags ganz ehrlich ich hab das noch nicht probiert, aber versuch es doch mal so. Ich vermute einfach mal das ein Telefon am NT als externes Telefon behandelt wird und nicht wie ein Internes SIP. Sprich Asterisk sieht das Telefon am NT so wie ein ankommender anruf übers PSTN.

[pbx-trunk]
; 8 vorwaehlen -> Ueber ISDN waehlen
; ${EXTEN:1} bedeutet, dass von der zu waehlenden Rufnummer eine
; Ziffer abgeschnitten wird, hier also die '8'.
exten => s,1,Dial(Zap/g1/${EXTEN}/,60)
exten => s,2,Congestion
exten => s,3,Busy
exten => s,4,Hangup
 
kombjuder schrieb:
Dann ist dein SX440 kaputt.

Ändere deine Wahlzeile von

exten => _8.,1,Dial(Zap/g2/${EXTEN:1},60) in
exten => _X.,1,Dial(Zap/g2/${EXTEN},60)

und schau mal ob das geht. Wenn nicht doch s-Extension und schauen was deine SX da abliefert.
Er bringt anscheinend die 8 nicht als erstes Zeichen.
Wählt das SX uU automatisch eine 0 vor?

Auch das habe ich schon probiert. Es wird ein leerer Wählstringübergeben.
Die angerufene Nummer bleibt,evtl auf Treiberebene, hängen.Die MSN
des wählenden Telefons landet merkwürdigerweise im Asterisk.
Wenn ich mit BRI INTENSE DEBUG SPAN 1 einschalte wird nirgendwo die gewählte Nummer protokolliert.


1 terisk1*CLI>
< [ 00 81 7f ]
1
< Unnumbered frame:
1 < SAPI: 00 C/R: 0 EA: 0
< TEI: 064 EA: 1
1 < M3: 3 P/F: 1 M2: 3 11: 3 [ SABME (set asynchronous balanced mode extended) ]
< 0 bytes of data
1 -- Got SABME from cpe peer.
1 Sending Unnumbered Acknowledgement
1 terisk1*CLI>
> [ 00 81 73 ]
1 terisk1*CLI>
> Unnumbered frame:
1 > SAPI: 00 C/R: 0 EA: 0
> TEI: 064 EA: 1
1 > M3: 3 P/F: 1 M2: 0 11: 3 [ UA (unnumbered acknowledgement) ]
> 0 bytes of data
1 -- Restarting T203 counter
== Primary D-Channel on span 1 up for TEI 64
1 terisk1*CLI>
< [ 00 81 00 00 08 01 01 05 04 03 80 90 a3 6c 04 01 80 32 31 7d 02 91 81 ]
1
< Informational frame:
1 < SAPI: 00 C/R: 0 EA: 0
< TEI: 064 EA: 1
1 < N(S): 000 0: 0
< N(R): 000 P: 0
< 19 bytes of data
1 -- ACKing all packets from 0 to (but not including) 0
1 -- Since there was nothing left, stopping T200 counter
1 -- Stopping T203 counter since we got an ACK
1 -- Nothing left, starting T203 counter
1 < Protocol Discriminator: Q.931 (8) len=19
1 < Call Ref: len= 1 (reference 1/0x1) (Originator)
1 < Message type: SETUP (5)
1 < [1 041 031 801 901 a31 ]
1 < Bearer Capability (len= 5) [ Ext: 1 Q.931 Std: 0 Info transfer capability: Speech (0)
1 < Ext: 1 Trans mode/rate: 64kbps, circuit-mode (16)
1 < Ext: 1 User information layer 1: A-Law (35)
1 < [1 6c1 041 011 801 321 311 ]
1 < Calling Number (len= 6) [ Ext: 0 TON: Unknown Number Type (0) NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1)
1 < Presentation: Presentation permitted, user number not screened (0) '21' ]
1 < [1 7d1 021 911 811 ]
1 < High-layer compatibilty (len= 4) [ 1 0x91 1 0x81 1 ]
1 Sending Receiver Ready (1)
1
> [ 00 81 01 02 ]
1
> Supervisory frame:
1 > SAPI: 00 C/R: 0 EA: 0
> TEI: 064 EA: 1
1 > Zero: 0 S: 0 01: 1 [ RR (receive ready) ]
> N(R): 001 P/F: 0
> 0 bytes of data
1 -- Restarting T203 counter
1 -- Restarting T203 counter
-- Extension 's' in context 'pbx-trunk' from '21' does not exist. Rejecting call on channel 0/2, span 1
1
> [ 02 81 00 02 08 01 81 5a 08 02 81 81 ]
1
> Informational frame:
1 > SAPI: 00 C/R: 1 EA: 0
> TEI: 064 EA: 1
1 > N(S): 000 0: 0
> N(R): 001 P: 0
> 8 bytes of data
1 -- Restarting T203 counter
1 Stopping T_203 timer
1 Starting T_200 timer
1 > Protocol Discriminator: Q.931 (8) len=8
1 > Call Ref: len= 1 (reference 129/0x81) (Terminator)
1 > Message type: RELEASE COMPLETE (90)
1 > [1 081 021 811 811 ]
1 > Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) 0: 0 Location: Private network serving the local user (1)
1 > Ext: 1 Cause: Unallocated (unassigned) number (1), class = Normal Event (0) ]
1 terisk1*CLI>
< [ 02 81 01 02 ]
1
< Supervisory frame:
1 < SAPI: 00 C/R: 1 EA: 0
< TEI: 064 EA: 1
1 < Zero: 0 S: 0 01: 1 [ RR (receive ready) ]
< N(R): 001 P/F: 0
< 0 bytes of data
1 -- ACKing all packets from 0 to (but not including) 1
1 -- ACKing packet 0, new txqueue is -1 (-1 means empty)
1 -- Since there was nothing left, stopping T200 counter
1 -- Nothing left, starting T203 counter
1 -- Restarting T203 counter
1 terisk1*CLI>
< [ 00 81 01 03 ]
1
< Supervisory frame:
1 < SAPI: 00 C/R: 0 EA: 0
< TEI: 064 EA: 1
1 < Zero: 0 S: 0 01: 1 [ RR (receive ready) ]
< N(R): 001 P/F: 1
< 0 bytes of data
1 -- ACKing all packets from 0 to (but not including) 1
1 -- Since there was nothing left, stopping T200 counter
1 -- Stopping T203 counter since we got an ACK
1 -- Nothing left, starting T203 counter
1 -- Unsolicited RR with P/F bit, responding
1 Sending Receiver Ready (1)
1
> [ 00 81 01 03 ]
1
> Supervisory frame:
1 > SAPI: 00 C/R: 0 EA: 0
> TEI: 064 EA: 1
1 > Zero: 0 S: 0 01: 1 [ RR (receive ready) ]
> N(R): 001 P/F: 1
> 0 bytes of data
1 -- Restarting T203 counter
1 -- Restarting T203 counter
1 terisk1*CLI>
< [ 00 81 53 ]
1
< Unnumbered frame:
1 < SAPI: 00 C/R: 0 EA: 0
< TEI: 064 EA: 1
1 < M3: 2 P/F: 1 M2: 0 11: 3 [ DISC (disconnect) ]
< 0 bytes of data
1 -- Got Disconnect from peer.
1 Sending Unnumbered Acknowledgement
1
> [ 00 81 73 ]
1
> Unnumbered frame:
1 > SAPI: 00 C/R: 0 EA: 0
> TEI: 064 EA: 1
1 > M3: 3 P/F: 1 M2: 0 11: 3 [ UA (unnumbered acknowledgement) ]
> 0 bytes of data
1 -- Restarting T203 counter
1 Stopping T_203 timer for TEI 64
== Primary D-Channel on span 1 down for TEI 64
asterisk1*CLI>
 
Hier die Debug Ausgabe eines funktionierenden ISDN Telefons an der Karte.


1 terisk1*CLI>
< [ 00 83 7f ]
1
< Unnumbered frame:
1 < SAPI: 00 C/R: 0 EA: 0
< TEI: 065 EA: 1
1 < M3: 3 P/F: 1 M2: 3 11: 3 [ SABME (set asynchronous balanced mode extended) ]
< 0 bytes of data
1 -- Got SABME from cpe peer.
1 Sending Unnumbered Acknowledgement
1
> [ 00 83 73 ]
1
> Unnumbered frame:
1 > SAPI: 00 C/R: 0 EA: 0
> TEI: 065 EA: 1
1 > M3: 3 P/F: 1 M2: 0 11: 3 [ UA (unnumbered acknowledgement) ]
> 0 bytes of data
1 -- Restarting T203 counter
== Primary D-Channel on span 1 up for TEI 65
1 terisk1*CLI>
< [ 00 83 00 00 08 01 01 05 04 03 80 90 a3 70 0a 81 31 32 33 34 35 36 37 38 39 7d 02 91 81 7e 01 04 ]
1
< Informational frame:
1 < SAPI: 00 C/R: 0 EA: 0
< TEI: 065 EA: 1
1 < N(S): 000 0: 0
< N(R): 000 P: 0
< 28 bytes of data
1 -- ACKing all packets from 0 to (but not including) 0
1 -- Since there was nothing left, stopping T200 counter
1 -- Stopping T203 counter since we got an ACK
1 -- Nothing left, starting T203 counter
1 < Protocol Discriminator: Q.931 (8) len=28
1 < Call Ref: len= 1 (reference 1/0x1) (Originator)
1 < Message type: SETUP (5)
1 < [1 041 031 801 901 a31 ]
1 < Bearer Capability (len= 5) [ Ext: 1 Q.931 Std: 0 Info transfer capability: Speech (0)
1 < Ext: 1 Trans mode/rate: 64kbps, circuit-mode (16)
1 < Ext: 1 User information layer 1: A-Law (35)
1 < [1 701 0a1 811 311 321 331 341 351 361 371 381 391 ]
1 < Called Number (len=12) [ Ext: 1 TON: Unknown Number Type (0) NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1) '123456789' ]
1 < [1 7d1 021 911 811 ]
1 < High-layer compatibilty (len= 4) [ 1 0x91 1 0x81 1 ]
1 < [1 7e1 011 041 ]
1 < User-User Information (len= 3) [1 041 ]
1 Sending Receiver Ready (1)
1
> [ 00 83 01 02 ]
1
> Supervisory frame:
1 > SAPI: 00 C/R: 0 EA: 0
> TEI: 065 EA: 1
1 > Zero: 0 S: 0 01: 1 [ RR (receive ready) ]
> N(R): 001 P/F: 0
> 0 bytes of data
1 -- Restarting T203 counter
1 -- Restarting T203 counter
-- Extension '123456789' in context 'pbx-trunk' from '' does not exist. Rejecting call on channel 0/2, span 1
1
> [ 02 83 00 02 08 01 81 5a 08 02 81 81 ]
1
> Informational frame:
1 > SAPI: 00 C/R: 1 EA: 0
> TEI: 065 EA: 1
1 > N(S): 000 0: 0
> N(R): 001 P: 0
> 8 bytes of data
1 -- Restarting T203 counter
1 Stopping T_203 timer
1 Starting T_200 timer
1 > Protocol Discriminator: Q.931 (8) len=8
1 > Call Ref: len= 1 (reference 129/0x81) (Terminator)
1 > Message type: RELEASE COMPLETE (90)
1 > [1 081 021 811 811 ]
1 > Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) 0: 0 Location: Private network serving the local user (1)
1 > Ext: 1 Cause: Unallocated (unassigned) number (1), class = Normal Event (0) ]
1 terisk1*CLI>
< [ 02 83 01 02 ]
1
< Supervisory frame:
1 < SAPI: 00 C/R: 1 EA: 0
< TEI: 065 EA: 1
1 < Zero: 0 S: 0 01: 1 [ RR (receive ready) ]
< N(R): 001 P/F: 0
< 0 bytes of data
1 -- ACKing all packets from 0 to (but not including) 1
1 -- ACKing packet 0, new txqueue is -1 (-1 means empty)
1 -- Since there was nothing left, stopping T200 counter
1 -- Nothing left, starting T203 counter
1 -- Restarting T203 counter
asterisk1*CLI>
 
Hallo,

ich habe das gleiche Problem, mit einer Sitecom ISDN Karte und einem Sinus 702S Funktelefon.

Hat vielleicht schon jemand eine Lösung für dieses Problem gefunden?

Da ich das ganze auf einem IPCop installiert habe, benutze ich ein älteres Release von Asterisk (Asterisk 1.0.10-BRIstuffed-0.2.0-RC8q).

MFG
MrTrouble
 
Hallo,

also ich konnte dieses Problem nun lösen, in dem ich ein:
exten => s,1,Wait(2)
in meiner extensions.conf eingetragen habe.
Nun kommen alle Telefonnummern in der Telefonanlage an und können über den normalen Weg wie beispielsweise:
exten => _0X.,1,Dial(CAPI/XXXX:${EXTEN:1},30)
weiterverarbeitet werden.

MFG
MrTrouble
 
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.