GotoIf scheint immer WAHR zu sein

heinzelrumpel

Neuer User
Mitglied seit
4 Apr 2006
Beiträge
172
Punkte für Reaktionen
0
Punkte
0
Hi,

möchte gernen in einen Kontext ein Telefonnumer bei eingehenden Gesprächen in einen Kontext schicken, wenn diese Nummer meine Handynummer ist.

Code:
r27014*CLI> dialplan show ankommend_sipgate
[ Context 'ankommend_sipgate' created by 'pbx_config' ]
  '7282XXX' =>      1. Set(OWN = 12345)                 [pbx_config]
                    2. GotoIf([${CALLERID(num)} = ${OWN}]?ja:nein) [pbx_config]
     [ja]           3. Goto(disa|6666|1)                          [pbx_config]
     [nein]         4. Dial(SIP/30|35|r)                          [pbx_config]
                    5. Goto(r-${DIALSTATUS}|1)                    [pbx_config]
  'r-Busy' =>       1. voicemail(b30)                             [pbx_config]
                    2. Hangup()                                   [pbx_config]
  'r-CONGESTION' => 1. VoiceMail(u30)                             [pbx_config]
                    2. Hangup()                                   [pbx_config]
  'r-NOANSWER' =>   1. voicemail(u30)                             [pbx_config]
                    2. Hangup()                                   [pbx_config]

Das dumme ist nur, dass jeder, der im Kontext [ankommend_sipgate] landet, auch an disa|6666 gereicht wird. Das soll nicht sein.

Was ist denn ander GotoIf-Anweisung falsch, bzw. eignet sich dies nicht, für mein Vorhaben?

Gruß, Heinzelrumpel
 
Hallo Heinzelrumpel,

muss das nicht

GotoIf($[${CALLERID(num)} = ${OWN}]?ja:nein)

heißen?

Allerdings solltest Du lieber

GotoIf($["${CALLERID(num)}" = "${OWN}"]?ja:nein)

nehmen, damit es bei leerem Callerid keinen Fehler gibt.

Rentier
 
Zuletzt bearbeitet von einem Moderator:
@rentier-s

Danke für den Tipp. Leider ist es jetzt genau umgekehrt. Wenn ich von meinem Handy aus anrufe, dann klingelt das Sip-Endgerät und es wird nicht in den Kontext disa|6666|1 geleitet, obwohl ich mal mit NoOp geschaut habe, welche Nummer in Asterisk ankommt.

Code:
-- ast_get_srv: SRV lookup for '_sip._udp.sipgate.de' mapped to host sipgate.de, port 5060
    -- Executing [7282xxx@ankommend_sipgate:1] Set("SIP/sipgate.de-b712ca68", "OWN = 01769xxxxxx") in new stack
    -- Executing [7282xxx@ankommend_sipgate:2] NoOp("SIP/sipgate.de-b712ca68", "01769xxxxx") in new stack
    -- Executing [728xxx@ankommend_sipgate:3] GotoIf("SIP/sipgate.de-b712ca68", "0?ja:nein") in new stack
    -- Goto (ankommend_sipgate,728xxx,5)
    -- Executing [7282xxx@ankommend_sipgate:5] Dial("SIP/sipgate.de-b712ca68", "SIP/30|35|r") in new stack
    -- Called 30
    -- SIP/30-081ce7e0 is ringing
  == Spawn extension (ankommend_sipgate, 728xxx2, 5) exited non-zero on 'SIP/sipgate.de-b712ca68'

Verstehe ich nicht.


Gruß, Heinzelrumpel
 
Hallo Heinzelrumpel,

lass mal bei Set(OWN=12345) die Leerzeichen weg. Ansonsten kann ich keinen Fehler finden.

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