-- Executing Macro("SIP/102-006dcad0", "page|SIP/101&SIP/102&SIP/103") in new stack
-- Executing NoOp("SIP/102-006dcad0", "SIP/101&SIP/102&SIP/103") in new stack
-- Executing Set("SIP/102-006dcad0", "CHANLIST=SIP/101&SIP/102&SIP/103") in new stack
-- Executing While("SIP/102-006dcad0", "SIP/101&SIP/102&SIP/103!=""") in new stack
-- Executing NoOp("SIP/102-006dcad0", "SIP/101&SIP/102&SIP/103") in new stack
-- Executing Set("SIP/102-006dcad0", "TESTCHAN=SIP/101") in new stack
-- Executing ChanIsAvail("SIP/102-006dcad0", "SIP/101|s") in new stack
-- Executing NoOp("SIP/102-006dcad0", "SIP/101-006c1a80") in new stack
-- Executing Set("SIP/102-006dcad0", "PAGE=&SIP/101") in new stack
-- Executing Set("SIP/102-006dcad0", "CHANLIST=SIP/102&SIP/103") in new stack
-- Executing EndWhile("SIP/102-006dcad0", "") in new stack
-- Executing While("SIP/102-006dcad0", "SIP/102&SIP/103!=""") in new stack
-- Executing NoOp("SIP/102-006dcad0", "SIP/102&SIP/103") in new stack
-- Executing Set("SIP/102-006dcad0", "TESTCHAN=SIP/102") in new stack
-- Executing ChanIsAvail("SIP/102-006dcad0", "SIP/102|s") in new stack
exten => s,1,NoOp(${ARG1}) ;tells us where we started
exten => s,2,Set(CHANLIST=${ARG1}) ;stores the macro ARG to a variable
exten => s,3,While(${CHANLIST}!="") ;loops the variable until it is null
exten => s,4,NoOp(${CHANLIST}) ;prints the variable
exten => s,5,Set(TESTCHAN=${CHANLIST:0:7}) ;stores a chunk of the variable to $TESTCHAN for testing
exten => s,6,ChanIsAvail(${TESTCHAN}|s) ;checks $TESTCHAN for availability
exten => s,7,NoOp(${AVAILCHAN}) ;prints $TESTCHAN's Availability
exten => s,8,Set(PAGE=${PAGE}&${AVAILCHAN:0:7}) ;Adds the extension to $PAGE, nulls are basically ignored
exten => s,9,Set(CHANLIST=${CHANLIST:8}) ;removes the increment from $CHANLIST BUMP!
;exten => s,10,Set(AVAILCHAN="") ;clears $AVAILCHAN
exten => s,10,EndWhile