; ; Macro para discar para um ramal interno ; [macro-dialin] exten => s,1,SetGroup(${ARG1}) exten => s,2,NoOp(XXXXXXXXXXX SETGROUP: ${ARG1}) exten => s,3,GetGroupCount() exten => s,4,Gotoif($["${GROUPCOUNT}" >= "2"]?7:5) exten => s,5,Dial(${ARG2},30,wth) exten => s,6,Goto(s-${DIALSTATUS},1) exten => s,7,Goto(s-BUSY,1) exten => s-NOANSWER,1,MailboxExists(${ARG1}) exten => s-NOANSWER,n,PlayTones(busy) exten => s-NOANSWER,n,Busy(60) exten => s-NOANSWER,102,Voicemail(u${ARG1}) exten => s-NOANSWER,n,Hangup exten => s-BUSY,1,MailboxExists(${ARG1}) exten => s-BUSY,n,PlayTones(busy) exten => s-BUSY,n,Busy(60) exten => s-BUSY,102,Voicemail(b${ARG1}) exten => s-BUSY,n,Hangup exten => _s-.,1,Goto(s-NOANSWER,1) include => telefonista ; ; Macro para discar de um ramal interno para outro interno ; [macro-dialramal] exten => s,1,SetGroup(${ARG1}) exten => s,n,Set(OPT=${DB(OPT/${ARG1})}) exten => s,n,GetGroupCount() exten => s,n,Gotoif($[${GROUPCOUNT} > 1 ]?bsy) exten => s,n,SetGroup(${CALLERIDNUM}) exten => s,n,SetVar(OUTBOUND_GROUP=${ARG1}) exten => s,n,GotoIf($[${CALLERID(num)} = ${RECORD1}]?rec:norec) exten => s,n(rec),Set(CALLFILENAME=/var/spool/filtered-calls/MON-3018-${TIMESTAMP}) exten => s,n,Monitor(wav,${CALLFILENAME},m) exten => s,n(norec),Dial(${ARG2},30,${OPT}) exten => s,n,Goto(s-${DIALSTATUS},1) exten => s,n(bsy),Goto(s-BUSY,1) exten => s-NOANSWER,1,MailboxExists(${ARG1}) exten => s-NOANSWER,n,PlayTones(busy) exten => s-NOANSWER,n,Busy(60) exten => s-NOANSWER,102,Voicemail(u${ARG1}) exten => s-NOANSWER,n,Hangup exten => s-BUSY,1,MailboxExists(${ARG1}) exten => s-BUSY,n,PlayTones(busy) exten => s-BUSY,n,Busy(60) exten => s-BUSY,102,Voicemail(b${ARG1}) exten => s-BUSY,n,Hangup exten => _s-.,1,Goto(s-NOANSWER,1) include => telefonista ; ; Macro para discar para um ramal interno ; [macro-recdialin] exten => s,1,SetGroup(${ARG1}) exten => s,2,GetGroupCount() exten => s,3,Gotoif($[${GROUPCOUNT} > 1]?8:4) exten => s,4,Set(CALLFILENAME=MON-${CALLERIDNUM}-${ARG1}-${TIMESTAMP}) exten => s,5,Monitor(wav,${CALLFILENAME},m) exten => s,6,Dial(${ARG2},30,wth) exten => s,7,Goto(s-${DIALSTATUS},1) exten => s,8,Goto(s-BUSY,1) exten => s-NOANSWER,1,MailboxExists(${ARG1}) exten => s-NOANSWER,n,PlayTones(busy) exten => s-NOANSWER,n,Busy(6) exten => s-NOANSWER,102,Voicemail(u${ARG1}) exten => s-NOANSWER,n,Hangup exten => s-BUSY,1,MailboxExists(${ARG1}) exten => s-BUSY,n,PlayTones(busy) exten => s-BUSY,n,Busy(6) exten => s-BUSY,102,Voicemail(b${ARG1}) exten => s-BUSY,n,Hangup exten => _s-.,1,Goto(s-NOANSWER,1) include => telefonista ; ; Macro para discar de um ramal interno para outro interno, ; com gravação automática ; [macro-recdialramal] exten => s,1,SetGroup(${ARG1}) exten => s,2,GetGroupCount() exten => s,3,Gotoif($[${GROUPCOUNT} > 1]?10:4) exten => s,4,SetGroup(${CALLERIDNUM}) exten => s,5,SetVar(OUTBOUND_GROUP=${ARG1}) exten => s,6,Set(CALLFILENAME=MON-${CALLERIDNUM}-${ARG1}-${TIMESTAMP}) exten => s,7,Monitor(wav,${CALLFILENAME},m) exten => s,8,Dial(${ARG2},30,wWtThH) exten => s,9,Goto(s-${DIALSTATUS},1) exten => s,10,Goto(s-BUSY,1) exten => s-NOANSWER,1,MailboxExists(${ARG1}) exten => s-NOANSWER,n,PlayTones(busy) exten => s-NOANSWER,n,Busy(6) exten => s-NOANSWER,102,Voicemail(u${ARG1}) exten => s-NOANSWER,n,Hangup exten => s-BUSY,1,MailboxExists(${ARG1}) exten => s-BUSY,n,PlayTones(busy) exten => s-BUSY,n,Busy(6) exten => s-BUSY,102,Voicemail(b${ARG1}) exten => s-BUSY,n,Hangup exten => _s-.,1,Goto(s-NOANSWER,1) include => telefonista