Vermittlungsabfall bei ungültiger DW klappt nicht

atopo

Neuer User
Mitglied seit
16 Feb 2005
Beiträge
45
Punkte für Reaktionen
0
Punkte
0
Sorry falls das Thema schon mal durchgekaut wurde...

Ich hab' hier eine Bristuffed Asterisk 1.2.17, mit einer Junghanns 4fach Hfc Karte drin. Das Ganze hängt an der österr. Telekom mit Durchwahlen und ptp.

Mein Problem ist das üngültige Durchwahlen nicht von der s-Extension abgefangen werden, sondern abgelehnt werden:

-------
Extension '53' in context 'Extern_Junghanns' from '..........' does not exist. Rejecting call on channel 0/1, span 2
------

Nummern ohne DW landen ja brav bei der Vermittlung, die durchgewählte Null kann ich abfangen, aber die ungültigen Durchwahlen sind recht unangenehm, weil die Telekom da gleich eine ANsage mit "ungültiger Nummer" bringt.

In meinem Dialplan siehts so aus:

[Office-Vermittlung]
; Vermittlung
exten => _0,1,Dial(SIP/11,30)
exten => _0,2,Dial(SIP/12,30)

exten => _i,1,Dial(SIP/11,30)
exten => _i,2,Dial(SIP/12,30)

exten => _s,1,Dial(SIP/11,30)
exten => _s,2,Dial(SIP/12,30)

der Context [Office-Vermittlung] ist natürlich in dem Context inkludiert, in dem der Ruf landet
die s-extension hab' ich auch schon ohne "_" probiert.

Guten Rutsch und danke für Ideen.
 
Du brauchst keine s-Extension, sondern eine Extension, die auf die ungültigen Durchwahlen passt. Wie wäre es mit so etwas wie _Z.?
 
eine Extension, die auf die ungültigen Durchwahlen passt.

stimmt...

Wie wäre es mit so etwas wie _Z.?

Käse...

Eine Extension, die auf ungültige Durchwahlen paßt, ist die "invalid" Extension, die man einfach mit "i" angibt.

Das Hauptproblem im vorliegenden Dialplan ist, daß die Spezial-Extensions "s" und "i" niemals gematcht werden dürfen, weil sie sonst nicht erkannt werden. Man darf also nie
Code:
exten => _i
schreiben, sondern man muß die extension direkt angeben
Code:
exten => i

Das gleiche gilt natürlich auch für alle anderen "special extensions"
 
:p Danke für den "Käse". Ich bin ja mal gespannt, wessen Vorschlag besser funktioniert.

1. Die Invalid-Extension "i" funktioniert nicht immer in der gewünschten Weise. Wenn einfach eine ungültige Extension gewählt worden ist, springt Asterisk nicht automatisch zur Extension "i".

2. Auch die Standard-Extensions "s", "i" usw. können "gematcht" werden, d.h. die Angabe als Muster exten => _s oder exten => _i funktioniert durchaus. Ob man sie als Namen (d.h. direkt) angibt oder als Muster, hat eigentlich nur Auswirkungen auf die Reihenfolge, in der die Extensions geprüft werden.
 
Ich probier das gerade nochmal aus, in einer Anlage die nur Transit machen soll (weil da eine ISDN-Karte drin steckt)

Der Wählplan ist daher ziemlich simpel gestrickt:

Code:
[default]
exten => 10,1,Dial(IAX2/old_compaq:[email protected]/${EXTEN})
exten => i,1,Dial(IAX2/old_compaq:[email protected]/10)
exten => s,1,Dial(IAX2/old_compaq:[email protected]/10)

das Ergebnis ist allerdings weniger toll, DW10 sowie keine DW werden werden an den IAX-Trunk weitergereicht, alles andere abgelehnt:

Code:
P[ 0]  --> * NEW CHANNEL dad:0 oad:6641234

Jan  5 19:28:02 WARNING[12637]: chan_misdn.c:4443 chan_misdn_log: Extension can never match, so disconnecting
...
P[ 1] * RELEASING CHANNEL pid:0 ctx:default dad:0 oad:006641234 state: EXTCANTMATCH

Die * ist eine Asterisk 1.2.21.1-BRIstuffed-0.3.0-PRE-1y-h, misdn ist Version 1.1.7. Mit "_i" gehts übrigens auch nicht...

lg
Alexander

NACHTRAG:
unter misdn muß always_immediate=yes gesetzt sein, um in die "s"-extension zu kommen. Wurde hier glaub ich schon mal diskutiert ...
Insofern ist das Thema mal unter misdn gelöst...
 
Zuletzt bearbeitet:
Es geht weder mit i noch mit _i, weil die i-Extension in diesem Fall eben nicht automatisch einspringt.

Ansatz 1: Du definierst eine Extension, die auf alle undefinierten Extensions passt, die in Frage kommen:

Code:
[default]
exten => 10,1,Dial(IAX2/old_compaq:[email protected]/${EXTEN})
[COLOR="Navy"]exten => [B]_X.[/B],1,Dial(IAX2/old_compaq:[email protected]/10)[/COLOR]
exten => s,1,Dial(IAX2/old_compaq:[email protected]/10)

Ansatz 2: Du schaltest einen Goto-Sprung dazwischen; dann funktioniert die i-Extension:

Code:
[default]
exten => _.,1,Goto(default-extensions,${EXTEN},1)

[default-extensions]
exten => 10,1,Dial(IAX2/old_compaq:[email protected]/${EXTEN})
exten => i,1,Dial(IAX2/old_compaq:[email protected]/10)
exten => s,1,Dial(IAX2/old_compaq:[email protected]/10)
 
Weitergebastelt:

Die s-extension greift zwar bei always_immediate=yes, nur funktioniert das weitergeben an die nächste Anlage mit

Code:
exten => s,n,Dial(IAX2/old_compaq:[email protected]/${EXTEN})

nicht mehr, weil ${exten} an der Stelle leider den Wert s hat. Nur der Vollständigkeit halber.
 
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.