.titleBar { margin-bottom: 5px!important; }

Problem mit Pattern-Einrichtung

Dieses Thema im Forum "Asterisk Rufnummernplan" wurde erstellt von Dwayne, 2 Feb. 2006.

  1. Dwayne

    Dwayne Neuer User

    Registriert seit:
    8 Juli 2005
    Beiträge:
    99
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Ich habe mir ein Callback-System mit Asterisk nach dieser Methode eingerichtet und möchte es nun so abändern, daß nur Gespräche ins dt. Festnetz erlaubt sind.

    Dazu habe ich die extensions.conf (Ausschnitt siehe unten) bearbeitet und...

    Code:
    [callback-go]
    exten => s,1,Set(LANGUAGE()=de)
    exten => s,2,Wait,1
    
    ; Soll ein Passwort abgefragt werden?
    exten => s,3,GotoIf($[${ask4pass} = true]?4:7)
    
    ; Erstmal Passwort ueberpruefen
    exten => s,4,DigitTimeout(5)
    exten => s,5,Set(TIMEOUT(response)=10)
    exten => s,6,Authenticate(${password})
    
    ; EingabeSchleife zur Zieleingabe
    exten => s,7,Set(NR=)
    exten => s,8,Background(vm-enter-num-to-call)
    exten => s,9,Set(TIMEOUT(response)=10)
    exten => s,10,WaitExten
    [B]exten => _X,1,Set(NR=${NR}${EXTEN})
    exten => _X,2,Goto(s,9)
    [/B]
    ; Zuruecksetzen
    exten => *,1,Goto(s,7)
    
    ; Nummer uebergeben
    exten => #,1,Dial(SIP/${NR}@1und1_callback,,)
    exten => #,2,Goto(#-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
    
    ; DialingStates
    exten => #-NOANSWER,1,Playback(vm-nobodyavail)
    exten => #-NOANSWER,2,Goto(s,7)
    
    exten => #-BUSY,1,Playback(tt-allbusy)
    exten => #-BUSY,2,Goto(#,1)
    
    exten => #-CHANUNAVAIL,1,Playback(tt-somethingwrong)
    exten => #-CHANUNAVAIL,2,Goto(t,1)
    
    exten => #-CONGESTION,1,Playback(vm-nobodyavail)
    exten => #-CONGESTION,2,Goto(s,7)
    
    exten => _#-.,1,Goto(t,1)
    
    ; Handling fuer Timeout & bye
    exten => t,1,Playback(vm-goodbye)
    exten => t,2,HangUp
    ...die fetten Zeilen in

    exten => _0N.,1,Set(NR=${NR}${EXTEN})
    exten => _0N.,2,Goto(s,9)

    geändert.

    Nach einem Neustart von Asterisk wird nach der Eingabe der zu wählenden Telefonnummer einige Zeit gewartet und dann mit einem Timeout abgebrochen. Entferne ich den Punkt hinter dem N, bricht Asterisk mit der Meldung "__ast_pbx_run: Invalid extension '1', but no rule 'i' in context 'callback-go'" nach der Eingabe der dritten Zahl (hier=1) ab.

    Warum ist das so und wie bringe ich Asterisk dazu, nur Gespräche ins dt. Festnetz durchzustellen?

    Vielen Dank!
     
  2. betateilchen

    betateilchen Grandstream-Guru

    Registriert seit:
    30 Juni 2004
    Beiträge:
    12,882
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    am Letzenberg
    Das Pattern _0N (ohne Punkt bedeutet, daß Du genau eine 2-stellige Zahl eingeben kannst und diese dazu noch mit einer Null anfangen muß, damit sie gültig ist.

    Und in Deinem Dialplan gibt es keine Logik die eine extension "1" behandelt.
     
  3. Dwayne

    Dwayne Neuer User

    Registriert seit:
    8 Juli 2005
    Beiträge:
    99
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Dann sollte aber doch _0N., also mit Punkt, funktionieren, oder nicht?

    PS: Ich nutze übrigens Asterisk 1.2.4.