All pastes #1266 Raw Edit

AlexBUK Macro Var Scope Problems

public text v1 · immutable
#1266 ·published 2004-10-05 12:41 UTC
rendered paste body
SCRIPT::::::::::::::::::::

[default]
exten => 6101,1,Macro(stdexten,6101,${PINGTEL1})
exten => 6102,1,Macro(stdexten,6102,${PINGTEL2})
exten => 6103,1,Macro(stdexten,6103,${JOHN})
exten => 6104,1,Macro(stdexten,6104,${GRAND1})
exten => 6105,1,Macro(stdexten,6105,${ALEX})
exten => 6106,1,Macro(stdexten,6106,${OPTI1})
exten => 6107,1,Macro(stdexten,6107,${SNOM})

;-----------------------------------------------------------------------------
[macro-stdexten]
;
; Standard extension macro:
;   ${ARG1} - Extension  (we could have used ${MACRO_EXTEN} here as well
;   ${ARG2} - Device(s) to ring
;
exten => s,1,Answer
exten => s,2,Playback(transfer)                 ;play transfer (please hold whilst i try to conenct you)
;exten => s,3,Macro(record-start)
;exten => s,4,Dial(${ARG2},10,tTM(record-start,testarg))
exten => s,3,SetVar(CALLFILENAME=/tmp/call_logs/${ARG1}/${TIMESTAMP}-${CALLERID})
exten => s,4,Macro(printvars)
exten => s,5,Dial(${ARG2},10,tTM(printvars))
exten => s,6,Goto(s-${DIALSTATUS},1)            ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-ANSWER,1,Hangup                      ; If call had been answered then ensure that caller is hungup

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

exten => s-BUSY,1,Voicemail(b${ARG1})           ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1)             ; 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

[macro-printvars]
exten => s,1,NoOp(CALLFILENAME: ${CALLFILENAME})
exten => s,2,NoOp(Arg1: ${ARG1})
exten => s,3,NoOp(Exten: ${EXTEN})
exten => s,4,NoOp(Context: ${CONTEXT})
exten => s,5,NoOp(UniqueID: ${UNIQUEID})
exten => s,6,NoOp(CallID: ${SIPCALLID})
exten => s,7,NoOp(CallerID: ${CALLERID})
exten => s,8,NoOp(Channel: ${CHANNEL})
exten => s,9,NoOp(Macro-Exten: ${MACRO_EXTEN})
exten => s,10,NoOp(Macro-Context: ${MACRO_CONTEXT})



Example Output:::::::::::::::::::::::;;;

    -- Executing Macro("SIP/pingtel-c08c", "stdexten|6107|SIP/snom") in new stack
    -- Executing Answer("SIP/pingtel-c08c", "") in new stack
    -- Executing Playback("SIP/pingtel-c08c", "transfer") in new stack
    -- Playing 'transfer' (language 'en')
    -- Executing SetVar("SIP/pingtel-c08c", "CALLFILENAME=/tmp/call_logs/6107/20041005-132746-6101") in new stack
    -- Executing Macro("SIP/pingtel-c08c", "printvars") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "CALLFILENAME: /tmp/call_logs/6107/20041005-132746-6101") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "Arg1: 6107") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "Exten: s") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "Context: macro-printvars") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "UniqueID: 1096982864.21") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "CallID: call-1096979962-28@193.195.52.81") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "CallerID: 6101") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "Channel: SIP/pingtel-c08c") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "Macro-Exten: s") in new stack
    -- Executing NoOp("SIP/pingtel-c08c", "Macro-Context: macro-stdexten") in new stack
    -- Executing Dial("SIP/pingtel-c08c", "SIP/snom|10|tTM(printvars)") in new stack
    -- Called snom
    -- SIP/snom-59ed is ringing
Oct  5 13:27:46 WARNING[262161]: chan_sip.c:681 retrans_pkt: Maximum retries exceeded on call 29a3eb0505feeb2c1b8afeaa562e1c2b@172.16.0.217 for seqno 102 (Non-critical Request)
    -- SIP/snom-59ed is ringing
    -- SIP/snom-59ed answered SIP/pingtel-c08c
    -- Executing NoOp("SIP/snom-59ed", "CALLFILENAME: """) in new stack
    -- Executing NoOp("SIP/snom-59ed", "Arg1: ") in new stack
    -- Executing NoOp("SIP/snom-59ed", "Exten: s") in new stack
    -- Executing NoOp("SIP/snom-59ed", "Context: macro-printvars") in new stack
    -- Executing NoOp("SIP/snom-59ed", "UniqueID: 1096982866.22") in new stack
    -- Executing NoOp("SIP/snom-59ed", "CallID: 1ad3295a04f225e1133217165ed03f4e@172.16.0.217") in new stack
    -- Executing NoOp("SIP/snom-59ed", "CallerID: 6101") in new stack
    -- Executing NoOp("SIP/snom-59ed", "Channel: SIP/snom-59ed") in new stack
    -- Executing NoOp("SIP/snom-59ed", "Macro-Exten: ") in new stack
    -- Executing NoOp("SIP/snom-59ed", "Macro-Context: default") in new stack
    -- Attempting native bridge of SIP/pingtel-c08c and SIP/snom-59ed