[gelöst] keine ankommenden Rufe über ISDN, VoIP raus geht auch nicht

ploieel

Aktives Mitglied
Mitglied seit
13 Mrz 2005
Beiträge
1,898
Punkte für Reaktionen
28
Punkte
48
Hallo, ich bitte um Hilfe bei folgendem Problem:

Ausgehend funktioniert mein Asterisk nur über ISDN, VoIP geht nicht. Und eingehend funktioniert ISDN nicht, VoIP eingehend noch nicht getestet. Ich denke, ich komme mit der neuen Syntax in der extensions.conf nicht klar.

Im folgenden Code sollte per ISDN ein Ruf eingehen, den ich vom Handy aus initiiert habe.
Ich poste hier die Fehleranzeige und bitte um Hinweise zur Behebung der Fehler.

Code:
Connected to Asterisk 1.2.4-BRIstuffed-0.3.0-PRE-1l currently running on fli4l (
pid = 3444)
Verbosity was 0 and is now 3
Core debug was 0 and is now 3
    -- Executing Dial("CAPI/ISDN1/3312-1", "ZAP/g1/25|45|r") in new stack
    -- Requested transfer capability: 0x00 - SPEECH
    -- Called g1/25
Apr  9 22:32:22 WARNING[5347]: channel.c:1591 ast_waitfor_nandfds: Thread 27665 Blocking 'CAPI/ISDN1/3312-1', already blocked by thread 0 in procedure (null)
    -- Channel 0/1, span 1 got hangup, cause 42
    -- Zap/1-1 is circuit-busy
    -- Hungup 'Zap/1-1'
  == Everyone is busy/congested at this time (1:0/1/0)
    -- Executing Hangup("CAPI/ISDN1/3312-1", "") in new stack

Wenn weitere Aussagen bzw. codes gebraucht werden, bitte hier reinschreiben. Vielen Dank für die Hilfe! :-)

EDIT:
Für ISDN eingehend habe ich die Syntax-Änderung selbst herausgefunden:
In die extensions.conf muss eine [globals] - SeKtion eingefügt werden mit dem Eintrag
CONSOLE=Zap/1
dann ändern:

alt:
exten => 1234567,1,Dial(ZAP/g1/25,45,r)

neu:
exten => 1234567,1,Dial(ZAP/1/25,45,r) also OHNE das kleine "g"

nur bei SIP rauswärts will mir das nicht gelingen. In der Beispiel-extensions.conf in der Package ist ein einziges Beispiel mit SIP aufgeführt.

;exten => _41X.,1,Dial(SIP/${EXTEN:2}@sipprovider,,r)


bei mir sieht es so aus:

exten => _*2.,1,Dial(SIP/0049${EXTEN:2}@voipbuster,60,Ttr)


sollte so funktionieren und hat auch alt so funktioniert, nur mit der neuen Version geht es nicht.
Kann mir bitte jemand helfen?
 
Zuletzt bearbeitet:
Hallo, habe selbst ein wenig herumprobiert, die 0049 aus der Dial-Zeile herausgenommen, funktioniert aber trotzdem nicht.

Code:
 -- Accepting overlap voice call from '25' to '<unspecified>' on channel 0/2,
 span 1
    -- Starting simple switch on 'Zap/2-1'
    -- Going to extension s|1 because of empty extension received on overlap call
Apr 10 18:43:05 ERROR[4120]: chan_zap.c:2689 zt_hangup: What is wrong with you? You cannot use cause 1 number when in state 1!
    -- Hungup 'Zap/2-1'
fli4l*CLI>

Wohin will mein Asterisk hin verzweigen, ich kann leider nur wenig oder fast kein englisch. Er will zur Extension s|1 und später fragt er mich dann:
"Was ist los mir Dir? Du kannst nicht benutzen .... und den Rest verstehe ich nicht.

Aber ich glaube doch, gemeinsam kriegen wir das schon noch hin. :-D
 
Hallo Günter,

der string sieht korrekt aus:

exten => _*2.,1,Dial(SIP/0049${EXTEN:2}@voipbuster,60,Ttr)

Ich denke aber dein Problem ist, er kommt da garnicht hin!
Soweit ich das sehe telefonierst du abgehend über isdn-Endgeräte die an einer hfc hängen - oder?

"-- Accepting overlap voice call from '25' to '<unspecified>' on channel 0/2,
span 1
-- Starting simple switch on 'Zap/2-1'
-- Going to extension s|1 because of empty extension received on overlap call"

Kann es sein, dass die fritz (chan_capi) auch auf die 25 reagiert weil sie zusammen mit der hfc am S0 hängt?
Du solltest in diesem Fall nicht incomingmsn=* schreiben (sondern alle Nummern auf die die fritz hören soll explizit erfassen)!

Und die s1 wird angesteuert da die extension ${EXTEN} leer ist.

Du müsstest mal aufschreiben wie du die beiden isdn-Karte angeschlossen hast und wie du sie benutzen möchtest (wo hängen die Telefone dran, die Tk-Anlage, der NTBA).

Gruss

Holger
 
Hallo Netview;
ich denke, alles wird gut! Danke für Deine Nachricht. :-)

Ich will kurz beschreiben, wie bei mir hier der Ruf über VoIP rausgehen soll:

analoges Telefon --> analoge Telefonanlage --> ISDN-Telefonanlage --> Asterisk-Rechner (Fli4L mit Asterisk), dort geht der Ruf auf einem internen S0-Bus an eine HFC-Karte --> Asterisk soll dann routen, ob der Ruf an die Capi-karte und damit raus zum ISDN ODER über eine Netzwerkkarte zum DSL-Modem und damit ins Internet gehen soll. Die Capi-Karte hängt zusammen mit einem ISDN-Telefon am externen S0-Bus; dabei soll dieses ISDN-Telefon lediglich eine Notlösung sein, falls der Asterisk einmal nicht funktionieren sollte.

Wie gesagt: raus ins ISDN geht alles, vom ISDN ankommend funktioniert der Asterisk jetzt auch, nur über VoIP ins Internet rauswärts, da klemmts noch.

Ich freue mich sehr auf Deine Antwort und auf eventuell weitere Fragen! :-D
 
dann starte mal die Konsole mit 'asterisk -dddvvvr' und initiiere mal einen ausgehenden Ruf über voipbuster!

Vorher kannst du noch einen 'sip debug peer voipbuster' eingeben.

Bist du laut 'sip show registry' und 'sip show peers' angemeldet?
 
Ich nehme mal hier sipdiscount:

extensions.conf (Schnipsel)

Code:
[external-sipdiscount_ausgehend]
exten => _*1.,1,Dial(SIP/0049${EXTEN:2}@sipdiscount,60,Ttr)
exten => _*1.,2,Congestion
exten => _*1.,3,Busy
exten => _*1.,4,Hangup

damit einen Ruf auf Opileins Podcast initiiert; man hört aber nach den Tonrufzeichen nur wieder das Freizeichen vom Asterisk, nach ca 1-2 Sekunden dann ein besetzt.

Code:
fli4l 3.0.1 # asterisk -dddvvvr
Parsing /etc/asterisk/asterisk.conf
Parsing /etc/asterisk/extconfig.conf
Asterisk 1.2.4-BRIstuffed-0.3.0-PRE-1l, Copyright (C) 1999 - 2006 Digium, Inc. a
nd others.
Created by Mark Spencer <[email protected]>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'show license' for details.
=========================================================================
Connected to Asterisk 1.2.4-BRIstuffed-0.3.0-PRE-1l currently running on fli4l (
pid = 3571)
Verbosity is at least 3
fli4l*CLI> sip debug peer sipdiscount
SIP Debugging Enabled for IP: 194.221.62.206:5060
    -- Starting simple switch on 'Zap/2-1'
    -- Accepting overlap voice call from '25' to '<unspecified>' on channel 0/2, span 1
    -- Going to extension s|1 because of empty extension received on overlap call
Apr 10 20:55:21 ERROR[6171]: chan_zap.c:2689 zt_hangup: What is wrong with you? You cannot use cause 1 number when in state 1!
    -- Hungup 'Zap/2-1'
fli4l*CLI>

Im meinem "alten" Asterisk (wie in meiner sig) hat das alles so funktioniert, ich bin echt ratlos...
 
Eins ist klar - es ist kein SIP-Problem!

"empty extension ${EXTEN}" Deshalb gibt es keinen match im dialplan und er wählt nicht und versucht stattdessen s,1,... als fallback!

Irgendeine Einstellung für die hfc stimmt noch nicht :-(
 
Kann oder soll ich noch Files posten? Jetzt sind wir doch schon soweit gekommen, dass ISDN ein- sowie auch ausgehend funktioniert, nun sollten wir doch den "Rest" auch noch schaffen! :-)
 
Hallo, ich nochmal.

Ich glaube, wenn ich einen Ruf über VoIP initiiere, dann entsteht eine Schleife in meinem Asterisk. Sozusagen ist er der Meinung, ich wolle mich selbst anrufen.

Code:
 ERROR[4013]: chan_zap.c:2689 zt_hangup: What is wrong with you? You cannot use cause 1 number when in state 1!
    -- Hungup 'Zap/2-1'
fli4l*CLI>

Wo kann ich den Fehler suchen? Ein Ruf geht in den Asterisk über die HFC-Karte rein (mit der internen MSN 25), und soll dort über die Netzwerk-Karte ins Internet geroutet werden. Stattdessen kommt der Ruf aber zurück; kann aber nicht rein, weil --- naja, von dort aus schon gerufen wird.

Habe ich das richtig verstanden? Wenn ja --- in welchem File muss ich den Fehler suchen? Irgendwo muss doch die interne MSN festgelegt worden sein...
Es hat doch auch in meinem alten Asterisk funktioniert, was ist bei dem Neuen so anders? Hat noch jemand bitte einen Hinweis? :-)
 
probier mal dies:

[external-sipdiscount_ausgehend]

exten => _*1.,1,Dial(SIP/phone${EXTEN:2}@sipdiscount,60,Ttr)
exten => _*1.,2,Congestion
exten => _*1.,3,Busy
exten => _*1.,4,Hangup
 
kein Unterschied, genau derselbe Fehler:

Code:
Connected to Asterisk 1.2.4-BRIstuffed-0.3.0-PRE-1l currently running on fli4l (pid = 3444)
Verbosity was 0 and is now 3
    -- Starting simple switch on 'Zap/2-1'
    -- Accepting overlap voice call from '25' to '<unspecified>' on channel 0/2, span 1
    -- Going to extension s|1 because of empty extension received on overlap call
Apr 10 23:11:46 ERROR[4039]: chan_zap.c:2689 zt_hangup: What is wrong with you? You cannot use cause 1 number when in state 1!
    -- Hungup 'Zap/2-1'
fli4l*CLI>

der Schnipsel aus der extensions.conf sieht jetzt so aus:
Code:
[external-sipdiscount_ausgehend]
exten => _*1.,1,Dial(SIP/phone${EXTEN:2}@sipdiscount,60,Ttr)
exten => _*1.,2,Congestion
exten => _*1.,3,Busy
exten => _*1.,4,Hangup

hat also auch nichts gebracht.

Läufts denn bei Henning, und wie hat er das zustande gebracht? Klar ist er neben Dir ein Linux-Experte, aber der Dialplan muss doch auch so stimmen... :-)

Bei mir kehrt der Frust zurück..... wäre ich doch bei 2.1.9 Fli geblieben, dann hätte ich den ganzen Ärger nicht.....> aber eben auch keinen neuen Asterisk mit seinen ganzen Vorzügen!!

Hast Du noch einen Tipp?
[code)
 
Hier sind mal einige Original-samples aus dem aktuellen bristuff:

Code:
extensions.conf:

; incoming ISDN BRI calls arrive in this context
; we need an extension for every DID/MSN or a pattern that will match all

[isdn-incoming]
exten => _X.,1,Dial(SIP/phone${EXTEN},60)
exten => _X.,2,Hangup

; in sip.conf you put context=sip-phones so the phones can dial out
; using zaptel group 1 (which includes all BRI ports, see zapata.conf)
[sip-phones]
exten => _X.,1,Dial(ZAP/g1/${EXTEN},60)
exten => _X.,2,Hangup

; if the called party is busy
exten => _X.,102,Playtones(busy)
exten => _X.,103,Wait(10)
exten => _X.,104,Hangup

; if all zaptel channels in that group are in use
; or the D channels are down
exten => _X.,202,Playtones(congestion)
exten => _X.,203,Wait(10)
exten => _X.,204,Hangup

zapata.conf:

[channels]

switchtype = euroisdn

pridialplan = dynamic
prilocaldialplan = local
nationalprefix = 0
internationalprefix = 00
usecallingpres=yes

echocancel = yes
echocancelwhenbridged = yes
echotraining = 100

;-------------------------------------------------------------------
; p2p TE mode (for connecting ISDN lines in point-to-point mode)
signalling = bri_cpe

context=isdn-incoming
group = 1
...
 
Hallo,
habe viel herumprobiert, hat aber alles nicht genützt. "Die Katze beisst sich in den Schwanz."

Nach wie vor der selbe Fehler:

Code:
fli4l 3.0.1 # asterisk -dddvvvr
Parsing /etc/asterisk/asterisk.conf
Parsing /etc/asterisk/extconfig.conf
Asterisk 1.2.6-BRIstuffed-0.3.0-PRE-1n, Copyright (C) 1999 - 2006 Digium, Inc. and others.
Created by Mark Spencer <[email protected]>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'show license' for details.
=========================================================================
Connected to Asterisk 1.2.6-BRIstuffed-0.3.0-PRE-1n currently running on fli4l (pid = 3449)
Verbosity was 0 and is now 3
Core debug was 0 and is now 3
    -- Accepting overlap voice call from '25' to '<unspecified>' on channel 0/2, span 1
    -- Starting simple switch on 'Zap/2-1'
    -- Going to extension s|1 because of empty extension received on overlap call
Apr 12 21:22:42 ERROR[4045]: chan_zap.c:2732 zt_hangup: What is wrong with you? You cannot use cause 1 number when in state 1!
    -- Hungup 'Zap/2-1'
fli4l*CLI>

Ich kriege hier die Krise; so blöd kann ich doch gar nicht sein! ;-)

WARUM bekomme ich über SIP keinen Ruf raus?
Es muss an meiner extensions.conf liegen... anders KANN es doch gar nicht sein. Bitte gebt mir noch mal eine Chance mit Euren Hinweisen.
ISDN geht ja auch rein- sowie rauswärts... und ich brauche lediglich VoiP nur rauswärts... :-)
 
klappt sowas:

[external-sipdiscount_ausgehend]
exten => _*1.,1,Dial(SIP/0049${EXTEN:2}@sipdiscount,60,Ttr)
exten => _*1.,2,Macro(cbh)

exten => h,1,Hangup

[macro-cbh]
exten => s,1,GotoIf($["${DIALSTATUS}" = "CONGESTION"]?3:2)
exten => s,2,GotoIf($["${DIALSTATUS}" = "BUSY"]?4:5)
exten => s,3,Congestion
exten => s,4,Busy
exten => s,5,Hangup
 
Dieser Fehler tritt bei mir auf, wenn ich das ISDN-Telefon abhebe und dann keine Nummer wähle
 
Ausserdem kann die hfc defekt sein - hast du diese mal mit deinem produktiven System getauscht?

was zeigt ein:

fli4l 3.0.1 # cat proc/interrupts

bei dir an?
 
Hmmm...
bei mir nach wie vor kein Erfolg mit dem neuen Asterisk. Auch mit dem macro nicht. Der Fehler ist immer wieder der Gleiche.
Das alte Asterisk funktioniert einwandfrei, es kann also nicht an der Karte liegen. Gibt es noch Hinweise? (Hoffentlich nerve ich nicht zu sehr.)
 
Hihohi, alle hier!!
Ich bin sehr froh, dass es Euch gibt!! :-D

Am meisten aber habe ich mich über Henning gefreut, der mir mit seinem Tipp auf die Sprünge geholfen hat:

Asterisk will im meiner extensions.conf das _*1... nicht nehmen! Weder den * noch die 1 !! Ich habe nun stattdessen die 9 genommen und das über SIP raustelefonieren funktioniert!! :-D

Leider dabei ein kleiner Wehrmutstropfen: das ISDN rauswärts geht dafür wieder nicht. :-( Jetzt kämpfe ich damit.

Code:
Connected to Asterisk 1.2.6-BRIstuffed-0.3.0-PRE-1n currently running on fli4l (
pid = 3523)
Verbosity is at least 3
    -- Starting simple switch on 'Zap/2-1'
    -- Accepting overlap voice call from '25' to '<unspecified>' on channel 0/2, span 1
    -- Executing Dial("Zap/2-1", "Capi/contr1/||Ttr") in new stack
Apr 14 21:15:38 ERROR[7870]: chan_capi.c:1174 capi_call: No destination or dialtone requested in 'contr1/'
  == Everyone is busy/congested at this time (0:0/0/0)
    -- Executing Congestion("Zap/2-1", "") in new stack
    -- Channel 0/2, span 1 got hangup request
    -- Hungup 'Zap/2-1'
fli4l*CLI>

Der Schnipsel aus meiner extensions.conf sieht derzeit so aus:

Code:
[external-ISDN_ausgehend]
;exten => _X.,1,Answer
exten => _0.,1,Dial(Capi/contr1/${EXTEN1},,Ttr)
exten => _0.,2,Congestion
exten => _0.,3,Hangup

Woran dass nun wieder liegt ----- Kopfschüttel.

Naja; gut dass es diese hilfsbereite Community hier gibt! Ihr wisst ganz sicher Rat! :-)
 
Zuletzt bearbeitet:
Welchen context= hast du denn in der capi.conf angegeben?

probier mal dies:
[external-ISDN_ausgehend]
;exten => _X.,1,Answer
exten => _0X.,1,Dial(Capi/contr1/${EXTEN:1}/Bo,,Ttr)
exten => _0X.,2,Congestion
exten => _0X.,3,Hangup
 
HeiHooo Netview; Frohe Ostern! :-)

capi.conf: context: external-ISDN_eingehend

Ich probiere jetzt mal den Code von Dir... dauert bitte mal 5 Minuten...
 
Kostenlos!

Statistik des Forums

Themen
248,917
Beiträge
2,305,009
Mitglieder
378,632
Neuestes Mitglied
Plan B