VOIP + ISDN = ISDN Backup Leitung

Quickly01

Neuer User
Mitglied seit
2 Mrz 2012
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Hallo.
Ich habe gerade mit Asterisk angefangen und habe mir einige Konfigurationen zusammengelesen und mir auch schon mal Hilfe geholt.
Ich bitte um Hilfe:

Frage/Info:
Wir haben häufiger mal DSL Totalausfall. Dann würde ich telefonsich nicht erreichbar sein und auch raus telefonieren. Deswegen habe ich noch eine ISDN Karte drin.
Ich möchte, dass Asterisk "normal" per SIP raus wählt.
Wenn aber der DSLAnschluss wieder mal Offline ist ODER die SIP-Leitungen voll sind, dann soll Asterisk den ISDN-Kanal nutzen.
Was geht nicht:
Wenn DSL offline (habe Asterisk im Firewall alle Rechte gekappt und auch schon mal Firewall einfach aus gemacht) dann soll Asterisk per ISDN wählen.

Hier der Auszug aus der extensions.conf:

Code:
; Ausgehende per SIP/IP wenn Leitung frei, sonst ISDN
[default]
; Gespraeche nach Extern
; Erst SIP, dann ISDN
exten => _XX,1,Dial(SIP/${EXTEN},55)
exten => _XXX.,1,Macro(localsip,${EXTEN})

[macro-localsip]
exten => s,1,Dial(SIP/${ARG1}@sipgate.de,20,trg)
exten => s,2,Goto(s-${DIALSTATUS},1)
exten => s-BUSY,1,Dial(DAHDI/G0/${ARG1})
exten => s-BUSY,2,Hangup
exten => s,105,Hangup

Und was sagt Asterisk (ich verstehe es nicht):

Code:
[Mar  8 13:49:02] NOTICE[2046]: chan_sip.c:11696 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #50)
       > doing dnsmgr_lookup for 'sipgate.de'
       > ast_get_srv: SRV lookup for '_sip._UDP.sipgate.de' mapped to host sipgate.de, port 5060
  == Using SIP RTP CoS mark 5
    -- Executing [017612345678@default:1] Macro("SIP/21-00000050", "localsip,017612345678") in new stack
    -- Executing [s@macro-localsip:1] Dial("SIP/21-00000050", "SIP/[email protected],20,trg") in new stack
  == Extension Changed 21[interne-benutzer] new state InUse for Notify User 21
  == Using SIP RTP CoS mark 5
    -- Called [email protected]
[Mar  8 13:49:22] NOTICE[2046]: chan_sip.c:11696 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #51)
       > doing dnsmgr_lookup for 'sipgate.de'
       > ast_get_srv: SRV lookup for '_sip._UDP.sipgate.de' mapped to host sipgate.de, port 5060
    -- Nobody picked up in 20000 ms
    -- Executing [s@macro-localsip:2] Goto("SIP/21-00000050", "s-NOANSWER,1") in new stack
    -- Goto (macro-localsip,s-NOANSWER,1)
    -- Auto fallthrough, channel 'SIP/21-00000050' status is 'NOANSWER'
  == Extension Changed 21[interne-benutzer] new state Idle for Notify User 21

Kann mir da jemand helfen, bitte.

Ach ja...es kommt ein Freizeichen...nach x-Mal Kingeln kommt dann das Besetztzeichen...Ende.

THX

Quickly01
 
Ok. Erledigt:

extensions.conf:

Code:
; Ausgehende per SIP/IP wenn Leitung frei, sonst ISDN
[default]
; Gespraeche nach Extern
; Erst SIP, dann ISDN
exten => _XX,1,Dial(SIP/${EXTEN},55)
exten => _XXX.,1,Macro(localsip,${EXTEN})

[macro-localsip]
exten => s,1,Dial(SIP/${ARG1}@sipgate.de,20,trg)
exten => s,2,Goto(s-${DIALSTATUS},1)
exten => s-BUSY,1,Dial(DAHDI/G0/${ARG1})
exten => s-BUSY,2,Hangup
[B]exten => s-NOANSWER,1,Dial(DAHDI/G0/${ARG1})
exten => s-NOANSWER,2,Hangup[/B]
exten => s,105,Hangup

THX!
 
Wenn der Channel nicht verfügbar ist, wird eigentlich CONGESTION oder CHANUNAVAIL ausgeworfen, siehe hier. NOANSWER bedeutet eine Überschreitung des Timeouts im Dial-Kommando, dh. wenn in den angegebenen 20 Sek. niemand dran gegangen ist rufst Du über ISDN gleich nochmal an.
 
Hallo.
Erst mal THX für die Antwort! Sehr schöner Link!

Aber leider...:mad:...bekomme ich es nicht hin.

"BUSY" ist falsch >
Sagt > Wenn angerufene Nummer besetzt, dann wähle noch mal per ISDN
So habe ich es verstanden (bitte korrigiert mich, wenn ich das falsch verstanden habe.

"NOANSWER" ist auch falsch >
Sagt > wenn an die angerufene Nummer keiner ran geht, dann wähle noch mal per ISDN.
So habe ich es verstanden (bitte korrigiert mich, wenn ich das falsch verstanden habe.

Also ist richtig ist "CHANUNAVAIL" doch richtig?!?
Unten mein neuer Code aus der extemsions.conf

Was passiert:
Wählen, bekomme Freizeichen, dann kommen die Wahlversuche, vermute 20 Stk.
CLI meldet auch "now anwer" von sipgate.de
Und dann legt er auf. Ich komme nicht raus.

Ich habe mir den Link angesehen. Habe die Beschreibung der Variablen auch verstanden.
Dann hört es aber bei mir auf. Sorry. So weit bin ich noch nicht.
Kann mir bitte, bitte jemand den Code da unten bearbeiten und vielleicht...wenn Zeit ist...kurz erklären.
Es muss ja die Variable "CHANUNAVAIL" sein...denke ich. Aber klappt nicht.

Ich vermute...entweder kommt der Status von Sipgate.de nicht richtig an, bzw. ich schaffe es nicht den richtig zu verwenden. Oder die 20 sind irgendwie falsch?!?!?!?

Code:
[macro-localsip]
exten => s,1,Dial(SIP/${ARG1}@sipgate.de,20,trg)
exten => s,2,Goto(s-${DIALSTATUS},1)
exten => s-CHANUNAVAIL,1,Dial(DAHDI/G0/${ARG1})
exten => s-CHANUNAVAIL,2,Hangup
;exten => s-BUSY,1,Dial(DAHDI/G0/${ARG1})
;exten => s-BUSY,2,Hangup
;exten => s-NOANSWER,1,Dial(DAHDI/G0/${ARG1})
;exten => s-NOANSWER,2,Hangup
exten => s,105,Hangup

Vielen Dank

Quickly01
 
Zuletzt bearbeitet:
entweder kommt der Status von Sipgate.de nicht richtig an

Wir reden von Fallback bei DSL-Ausfall, da kann von sipgate gar nichts zurückkommen. Asterisk versucht, sipgate.de zu erreichen, da das nicht klappt meldet er CONGESTION oder CHANUNAVAIL. Zieh mal wirklich den DSL Stecker und schau, was dann passiert.

Oder die 20 sind irgendwie falsch?

Das sind keine 20 Versuche, sondern 20 Sekunden die Asterisk es läuten lässt, bevor er NOANSWER ausgibt. Das kannst Du auch gut weglassen.

Btw, das Flag r würde ich aus dem Dial raus nehmen. Sonst bekommst Du ggf. Ansagen von sipgate nicht.
 
wieso nutzt du eigentlich nicht das "Offline-Feature" von sipgate?

dann wird von sipgate automatisch auf eine beliebige andere Rufnummer umgeleitet, sollte dein Internetanschluss mal gestoert sein. Fertig.

- sparkie
 
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.