exten => s,1,GotoIf($[${LEN(${PARKRETURNTO})} > 0]?backtosender) exten => s,n,GotoIf($[${LEN(${BLINDTRANSFER})} > 0 | ${LEN(${ATTENDEDTRANSFER})} > 0]?attemptpark) exten => s,n,GotoIf($["${ARG1}" = "" | ${DIALPLAN_EXISTS(${IF($["${ARG2}" = "default"]?parkedcalls:${ARG2})},${ARG1},1)} = 1]?pcall) exten => s,n,ResetCDR() exten => s,n,NoCDR() exten => s,n,Wait(1) exten => s,n,Playback(pbx-invalidpark) exten => s,n,Wait(1) exten => s,n,Hangup exten => s,n(pcall),Noop(User: ${CALLERID(all)} attempting to pick up Parked Call Slot ${ARG1}) exten => s,n,ParkedCall(${ARG2},${ARG1}) exten => s,n(attemptpark),Noop(User: ${CALLERID(all)} attempting to Park into slot ${ARG1}) exten => s,n,Set(PARKINGEXTEN=${ARG1}) exten => s,n,ExecIf($[${LEN(${BLINDTRANSFER})} > 0]?Set(PARKRETURNTO=${CUT(BLINDTRANSFER,-,1)}):Set(PARKRETURNTO=${CUT(ATTENDEDTRANSFER,-,1)})) exten => s,n,Park(${ARG2},sc(${CONTEXT},s,200)) ;this ends up returning to 1, instead of 200 exten => s,1+199(backtosender),Noop(Doing important stuff) exten => s,n,Set(PARKCALLBACK=${PARKRETURNTO}) exten => s,n,Set(PARKRETURNTO=) exten => s,n,Dial(${PARKCALLBACK},15,tr) exten => s,n,Goto(park-return-routing,${ARG1},1)