Notrufnummern testen... Notrufnummer funktionieren nicht.

vwittich

Neuer User
Mitglied seit
31 Okt 2004
Beiträge
90
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen,

hab neulich festgestellt das meine Notrufnummer-Extension nicht funktioniert... bzw. da was generell in meinem Dailplan nicht in Ordnung zu sein scheint. Da ich selbst nicht auf den Fehler komme ohne herumprobieren, frage ich mal euch:

Code:
[default]

[globals]

; Rausgehend
[telefone]
include => vorwahl

; Intern
include => call_sips
include => call_isdns

; Extern
include => national

; Sonderrufnummern
include => sondernr

exten => i,1,NoOp(Undefinierte Nummer ${INVALID_EXTEN} wurde gewaehlt.)
exten => i,2,Answer()
exten => i,3,Playback(that-is-not-rec-phn-num)
exten => i,4,Hangup()

; Eigehend
[von_sipgate]

{...}

;
; INCLUDES
;

; Vorwahlregeln

[vorwahl]
exten => _ZXXX.,1,Goto(004969${EXTEN},1)        ; + regionale Vorwahl
exten => _0[2-9].,1,Goto(0049${EXTEN:1},1)      ; + nationale Vorwahl
exten => _01[5-7].,1,Goto(0049${EXTEN:1},1)     ; + nationale Vorwahl für Handy
exten => _[+].,1,Goto(00${EXTEN:1},1)           ; '+' ersetzten mit 00

; Notruf
exten => _11[02]/_1[014],1,set(CALLERID(num)=333333)
exten => _11[02]/_1[23],1,set(CALLERID(num)=6666666)
exten => _11[02]/2[12],1,set(CALLERID(num)=333333)
exten => _11[02],3,Dial(mISDN/g:AMT/${EXTEN})
exten => _11[02],n,Dial(SIP/${EXTEN}@sipgate)   ; Alternative falls das Festnetz gestört ist


; Sonder-Nummern
[sondernr]

{...}
Hab noch das speziell drinne das je nach dem von welcher Nebenstelle angerufen wird eine andere Amtsnummer als Absender erscheinen soll. Kann es sein das es nur auf die Reihenfolge ankommt in de ich die Extension schreibe? Und wie kann ich testen ob die Extension funktioniert... ohne zigmal die Polizei oder die Feuerwehr anzurufen?

Besten Gruß Valentin

PS: Das im Falle eines nicht funktionieren Festnetz der Notruf über VoIP abgesetzt wird müsste ich wohl auch sauberer implementieren, oder?
 
Hallo Valentin,

beim ersten Überfliegen ist mir aufgefallen, dass die Priorität 2 fehlt

exten => _11[02]/_1[014],1,set(CALLERID(num)=333333)
exten => _11[02]/_1[23],1,set(CALLERID(num)=6666666)
exten => _11[02]/_2[12],1,set(CALLERID(num)=333333)
exten => _11[02],3,Dial(mISDN/g:AMT/${EXTEN})
exten => _11[02],n,Dial(SIP/${EXTEN}@sipgate)

Bevor Du den Notruf erneut über SIP absetzt, solltest Du den ${DIALSTATUS} auf ANSWERED abfragen. Sonst rufst Du nach einem erfolgten Gespräch evtl. ein zweites Mal an, wenn Du nicht schnell genug auflegst.

Sind durch die AntiExGirlfriend Pattern alle Nebenstellen abgedeckt? Du solltest da lieber noch eine "normale" exten als default einbauen.

Zum Testen kannst Du einfach
exten => _11[02],3,Dial(mISDN/g:AMT/Deine-Handy-Nummer)
machen. Dann siehst Du zumindest, ob Asterisk die exten richtig aufruft.

Bei sipgate musst Du die Option für Notrufe ggf. noch aktivieren.

Mit Asterisk 1.6 spielt die Reihenfolge der extens keine Rolle, der geht nach Longest-Match. Asterisk 1.4 glaube ich auch schon, wir haben hier im Forum dieses Thema schon mal diskutiert, ich weiß aber das Ergebnis für 1.4 nicht mehr. Mit der Reihenfolge der includes solltest Du auf jeden Fall aufpassen.

Svenja
 
Zuletzt bearbeitet von einem Moderator:
Hallo Svenja (rentier-s),

danke für's überfliegen der Extensions. Deine Hinweise scheinen echt Sinn zu machen. Ich werde die Korrekturen mal später einbauen, sowie den ${DIALSTATUS} überprüfen. Der Tipp nur eine Default-Extension einzubauen macht irgendwo Sinn, zumal es sich um eine physische Adresse handelt von der Telefonier wird. Auf die Idee die Notruf-Nummer so zu testen bin ich auch nicht selbst gekommen, obgleich es so einfach geht... ;)

Mit Asterisk 1.6 spielt die Reihenfolge der extens keine Rolle, der geht nach Longest-Match. Asterisk 1.4 glaube ich auch schon, wir haben hier im Forum dieses Thema schon mal diskutiert, ich weiß aber das Ergebnis für 1.4 nicht mehr. Mit der Reihenfolge der includes solltest Du auf jeden Fall aufpassen.

Das mit dem Longest-Match hatte ich auch so in Erinnerung (* läuft noch auf 1.4); Ich werde mir aber noch einmal anschauen, ob nicht die includes schuld am Missachten des Notruf-Dailplans sind.

Soweit vorerst, melde mich wenn ich zum testen gekommen bin...

Gruß Valentin
 
So hab jetzt eine Default-Extension für den Notruf eingestellt und es funktioniert:

Code:
[b]; Notruf[/b]
exten => _11[02],1,NoOp("Notruf!")
exten => _11[02],n,set(CALLERID(num)=333333)
exten => _11[02],n,Dial(mISDN/g:AMT/${EXTEN})
exten => _11[02],n,NoOP(${DIALSTATUS})        ; Ausgabe: NoOp("SIP/13-cf8", "CHANUNAVAIL")
exten => _11[02],n,Dial(SIP/${EXTEN}@sipgate)
exten => _11[02],n,Hangup()

Im Falle das beide Amtsleitungen belegt sind springt er so automatisch auf Sipgate um... hab allerdings nicht verstanden wie ich den ${DIALSTATUS} sinnvoll einbaue, zumal es auch so funktioniert. Wenn die beiden ISDN-Leitungen belegt sind ist nach dem Dial-Kommando der Dialstatus = CHANUNAVAIL (Der Channel ist nicht verfügbar).

Vermute übrigens das das eigentlich Problem am setzten des CallerID(num) lag... dadruch das dieser auf 333333 gesetzt wird hätte ich dann den nachfolgende Exten-Eintrag anpassen müssen. Zu mindesten hatte ich ein ähnlichen Problem mit den Sondernummern dort habe ich dies folgender maßen gelöst:
Code:
[b]; nur Nebenstelle 13 darf 0900 anrufen[/b]
exten => _0049900./13,1,set(CALLERID(num)=333333)
exten => _0049900./333333,n,Dial(mISDN/g:AMT/0${EXTEN:4) ; [color=red]Entscheidend ist das ab hier 333333 statt 13 steht...[/color]
exten => _0049900./333333,n,Hangup()

Soweit für heute Abend.
Gruß Valentin
 
Den Dialstatus kannst Du mit allem möglichen If, GotoIf oder ExecIf, oder auch nur mit Goto und entsprechend erweiterten extens auswerten. Beispiele dazu findest Du im Asterisk-Buch.

Das eigentliche Problem lag, wie ich Dir schon geschrieben hatte, im Fehlen der Priorität 2.

Zusammen mit Deinem Vorhaben, die CallerID nebenstellenabhängig zu setzen, würde ich das so machen:

Code:
exten => _11[02]/_1[014],1,Set(CALLERID(num)=333333)
exten => _11[02]/_1[23],1,Set(CALLERID(num)=6666666)
exten => _11[02]/_2[12],1,Set(CALLERID(num)=333333)
exten => _11[02],1,Set(CALLERID(num)=<<Standard-MSN>>)
exten => _11[02],2,Dial(mISDN/g:AMT/${EXTEN})
exten => _11[02],n,GotoIf($["${DIALSTATUS}"="ANSWERED"]?ok)
exten => _11[02],n,Dial(SIP/${EXTEN}@sipgate)
exten => _11[02],n(ok),Hangup()

Bei Deinem Beispiel mit der 0900 hast Du Recht, da musst Du nach dem setzen der CallerID auch die AntiExGirlfriend mit der neuen CallerID schreiben. Bei den Notrufen ist ab der Priorität 2 alles für alle erlaubt, daher tritt das Problem hier nicht auf.

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