;########################################################################### ;# 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)