rendered paste body;###########################################################################
;# Standard Dial Macro
;# Arg1: technology (SIP, IAX2)
;# Arg2: extension
;# Arg3: timeout
;# Arg4: voice mailbox
;# Arg5: presentation
;###########################################################################
[macro-std-dial]
exten => s,1,NoOp(RDNIS=${RDNIS}, DNIS=${DNID}, EXTEN=${EXTEN}, ANI=${CALLERANI})
exten => s,n,Set(VMBOX=${ARG4})
exten => s,n,GotoIf($["${VMBOX}" != ""]?s,gotvm)
exten => s,n,Set(VMBOX=${ARG2})
exten => s,n(gotvm),Dial(${ARG1}/${ARG2},${ARG3},g)
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,Voicemail(u${VMBOX})
exten => s-NOANSWER,n,Hangup
exten => s-BUSY,1,Voicemail(b${VMBOX})
exten => s-BUSY,n,Hangup
exten => s-CONGESTION,1,Goto(s-NOANSWER,1)
exten => s-CHANUNAVAIL,1,Goto(s-NOANSWER,1)
exten => s-ANSWER,1,Macro(handle-hangup)
exten => s-.,1,Goto(s-NOANSWER,1)
exten => a,1,VoicemailMain(${VMBOX})
enten => a,n,Hangup
;###########################################################################
;# Standard PRI Macro
;# Arg1: trunk
;# Arg2: extension
;# Arg3: accountcode
;# Arg4: presentation
;###########################################################################
[macro-pri-dial]
exten => s,1,GotoIf($[$ACCOUNTCODE != ""]?s,gotac)
exten => s,n,Set(ACCOUNTCODE=${ARG3})
exten => s,n,GotoIf($[${ARG3} != ""]?s,gotac)
exten => s,n,Set(ACCOUNTCODE=7052232000)
exten => s,n(gotac),Set(ACCOUNTCODE=${ACCOUNTCODE})
exten => s,n,Set(CALLERID(name)="")
exten => s,n,Dial(${ARG1}/${ARG2},,g)
exten => s,n,Macro(handle-hangup)