[Resolved] Extensions.conf Scripting question

Hi ,

I wanted to run this :

exten => CSPWWTDTW,1,GotoIf($["${ARG1}" = "4220"]?4)
exten => CSPWWTDTW,2,GotoIf($["${ARG1}" = "4225"]?4)
exten => CSPWWTDTW,3,Return
exten => CSPWWTDTW,4,Set(KFLAG="Y")

So when i dial exten 4220 or 4225 it will goto 4 but in the CLI i dont see it having the correct effect.


Executing [CSPWWTDTW@macro-stdexten:1] GotoIf("OSS/dsp", "0?4") in new stack
    -- Executing [CSPWWTDTW@macro-stdexten:2] GotoIf("OSS/dsp", "0?4") in new stack

Am i scripting something wrong here ?

[solution]

I got the script working eventually. Here it is (This needs to be placed in extensions.conf)


[macro-stdexten]
;
; Standard extension macro:
;   ${ARG1} - Extension  (we could have used ${MACRO_EXTEN} here as well
;   ${ARG2} - Device(s) to ring
;

exten => s,1,SET(DELAY=15)
exten => s,2,Gosub(CSPWWTDTW,1)
exten => s,3,GotoIf($[${DB(CFIM/${ARG1})}]?7)
exten => s,4,Dial(${ARG2}&SIP/x${ARG1},${DELAY})                   ; Ring the interface, 20 seconds maximum
exten => s,5,GotoIf($["${KFLAG}"="A"]?11)
exten => s,6,GotoIf($["${KFLAG}"="Y"]?10)
exten => s,7,Goto(s-${DIALSTATUS},1)            ; Jump based on status(NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
exten => s,8,Playback(pls-hold-while-try)
exten => s,9,Goto(default,${DB(CFIM/${ARG1})},1)
exten => s,10,Goto(THEWORLD,1)
exten => s,11,Goto(THEWORLD,5)
exten => s,12,Hangup()

exten => s-NOANSWER,1,SIPDTMFMode(inband)
exten => s-NOANSWER,2,Voicemail(${ARG1},u)      ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,3,Playback(sorry)         ; If they press #, return to start

exten => s-BUSY,1,SIPDTMFMode(inband)
exten => s-BUSY,2,Voicemail(${ARG1},b)          ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,3,Playback(sorry)             ;i If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1)              ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1})             ; If they press *, send the user into VoicemailMain

;Check special people who want things done their way

exten => CSPWWTDTW,1,GotoIf($["${ARG1}"="4910"]?5)
exten => CSPWWTDTW,2,GotoIf($["${ARG1}"="4910"]?5)
exten => CSPWWTDTW,3,GotoIf($["${ARG1}"="4941"]?8)
exten => CSPWWTDTW,4,Return
exten => CSPWWTDTW,5,Set(KFLAG="Y")
exten => CSPWWTDTW,6,Set(DELAY=10)
exten => CSPWWTDTW,7,Return
exten => CSPWWTDTW,8,Set(KFLAG="A")
exten => CSPWWTDTW,9,Return
exten => CSPWWTDTW,10,Set(DELAY=10)
exten => CSPWWTDTW,11,Return

exten => THEWORLD,1,NoOP(Macro Started !!)
exten => THEWORLD,2,background(pls-hold-while-try)
;exten => THEWORLD,3,Dial(Zap/g1/003XXXXXXX809,30)    ; 4903 directed to Steve Spain
;exten => THEWORLD,3,Dial(Zap/g1/003XXXXXX56,30)    ; 4903 directed to Steve Spain
;exten => THEWORLD,3,Dial(Zap/g1/00441XXXX8X067,30)    ; 4903 directed to Steve Spain
exten => THEWORLD,3,Dial(Zap/g1/085XXXX6,30)    ; Tommy
;exten => THEWORLD,3,Dial(Zap/g1/083XXXX229,30)    ; 4903 directed to Steve Ireland
exten => THEWORLD,4,Goto(6)
exten => THEWORLD,5,Dial(SIP/4940,20)
exten => THEWORLD,6,Voicemail(${ARG1})
exten => THEWORLD,7,Hangup

Hi

Shouldn’t that be ?

exten => CSPWWTDTW,1,GotoIf($[${ARG1}=“4220”]?CSPWWTDTW|4:CSPWWTDTW|3)
exten => CSPWWTDTW,2,GotoIf($[${ARG1} =“4225”]?CSPWWTDTW|4:CSPWWTDTW|3)
exten => CSPWWTDTW,3,Return
exten => CSPWWTDTW,4,Set(KFLAG=“Y”)

hth

Jeremy