-- Executing Macro("SIP/jonoffice-08230d00", "elephantqueueexten|3149|elephant-3149") in new stack -- Executing Answer("SIP/jonoffice-08230d00", "") in new stack -- Executing Set("SIP/jonoffice-08230d00", "SPYGROUP=2000") in new stack -- Executing Queue("SIP/jonoffice-08230d00", "elephant-3149|nr|||20") in new stack -- Called SIP/chrisoffice -- Got SIP response 486 "Busy Here" back from XXX.XXX.XXX.XXX -- SIP/chrisoffice-0829c1d0 is busy -- Exiting on time-out cycle -- Executing Goto("SIP/jonoffice-08230d00", "s-TIMEOUT|1") in new stack -- Goto (macro-elephantqueueexten,s-TIMEOUT,1) extensions.conf [macro-elephantqueueexten] ; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well ; ${ARG2} - Queue to join ; exten => s,1,Answer() exten => s,n,Set(SPYGROUP=2000) ; Listen to incoming calls exten => s,n,Queue(${ARG2}|nr|||20) ; Ring the interface, 20 seconds maximum exten => s,n,Goto(s-${QUEUESTATUS},1) ; Jump based on status (TIMEOUT,FULL,JOINEMPTY,LEAVEEMPTY,JOINUNAVAIL,LEAVEUNAVAIL) exten => s-TIMEOUT,1,Voicemail(u${ARG1}) ; If unavailable, send to voicemail w/ unavail announce exten => s-JOINUNAVAIL,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce exten => s-LEAVEUNAVAIL,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce exten => _s-.,1,Goto(s-TIMEOUT,1) ; Treat anything else as timeout exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain