<div dir="ltr"><div><div><b><font color="#000000">Olá Rafael!</font></b></div><div><b><font color="#000000"><br></font></b></div><div><b><font color="#000000">Agradeço desde já a ajuda...</font></b></div><div><b><font color="#000000"><br>
</font></b></div><div><b><font color="#000000">olhei meus macros mais não consegui identificar o erro...</font></b></div><div><b><font color="#000000"><br></font></b></div><div><b><font color="#000000">segue meu macros de entrada...</font></b></div>
<div><b><font color="#000000"><br></font></b></div><div><b><font color="#000000">se poder ajudar...fiquei meio perdido agora...mais o estranho que acontece aleatoriamente... :S</font></b></div><div><b><font color="#666666"><br>
</font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; ############################################################################</font></b></div><div><b><font color="#666666">; Macros [macro]</font></b></div>
<div><b><font color="#666666">; ############################################################################</font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">[macro-dial]</font></b></div>
<div><b><font color="#666666">exten =&gt; s,1,GotoIf($[&quot;${MOHCLASS}&quot; = &quot;&quot;]?dial)</font></b></div><div><b><font color="#666666">exten =&gt; s,n,SetMusicOnHold(${MOHCLASS})</font></b></div><div><b><font color="#666666">exten =&gt; s,n(dial),AGI(dialparties.agi)</font></b></div>
<div><b><font color="#666666">exten =&gt; s,n,NoOp(Retorna dialparties sem extensões para chamadas e DIALSTATUS: ${DIALSTATUS})</font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">exten =&gt; s,n+2(normdial),Dial(${ds})                      ; dialparties vai definir a prioridade para 10 se $ds não for nulo</font></b></div>
<div><b><font color="#666666">exten =&gt; s,n,Set(DIALSTATUS=${IF($[&quot;${DIALSTATUS_CW}&quot;!=&quot;&quot; ]?${DIALSTATUS_CW}:${DIALSTATUS})})</font></b></div><div><b><font color="#666666">exten =&gt; s,n,GosubIf($[&quot;${SCREEN}&quot; != &quot;&quot; | &quot;${DIALSTATUS}&quot; = &quot;ANSWER&quot;]?${DIALSTATUS},1)</font></b></div>
<div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">exten =&gt; s,20(huntdial),NoOp(Retorna dialparties com grupos de busca para chamada)</font></b></div><div><b><font color="#666666">exten =&gt; s,n,Set(HuntLoop=0)</font></b></div>
<div><b><font color="#666666">exten =&gt; s,n(a22),GotoIf($[${HuntMembers} &gt;= 1]?a30)  ; se este é de rg-group, não tira prefixo</font></b></div><div><b><font color="#666666">exten =&gt; s,n,NoOp(Returning there are no members left in the hunt group to ring)</font></b></div>
<div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; dialparties.agi has setup the dialstring for each hunt member in a variable labeled HuntMember0, HuntMember1 etc for each iteration</font></b></div>
<div><b><font color="#666666">; dialparties.agi tem configurar o dialstring para cada membro procurar em uma variável labeled HuntMember0, HuntMember1 etc para cada iteração</font></b></div><div><b><font color="#666666"><br>
</font></b></div><div><b><font color="#666666">exten =&gt; s,n+2(a30),Set(HuntMember=HuntMember${HuntLoop})</font></b></div><div><b><font color="#666666">exten =&gt; s,n,GotoIf($[$[&quot;${CALLTRACE_HUNT}&quot; != &quot;&quot; ] &amp; $[$[&quot;${RingGroupMethod}&quot; = &quot;hunt&quot; ] | $[&quot;${RingGroupMethod}&quot; = &quot;firstavailable&quot;] | $[&quot;${RingGroupMethod}&quot; = &quot;firstnotonphone&quot;]]]?a32:a35)</font></b></div>
<div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">exten =&gt; s,n(a32),Set(CT_EXTEN=${CUT(FILTERED_DIAL,,$[${HuntLoop} + 1])})</font></b></div><div><b><font color="#666666">exten =&gt; s,n,Set(DB(CALLTRACE/${CT_EXTEN})=${CALLTRACE_HUNT})</font></b></div>
<div><b><font color="#666666">exten =&gt; s,n,Goto(s,a42)</font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; Defini o rastreamento de ligações para cada membro da procura que vamos chamar de </font></b></div>
<div><b><font color="#666666">;&quot;grupos de memória têm vários membros para definir o rastreamento de ligações para&quot; daí o loop</font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">exten =&gt; s,n(a35),GotoIf($[$[&quot;${CALLTRACE_HUNT}&quot; != &quot;&quot; ] &amp; $[&quot;${RingGroupMethod}&quot; = &quot;memoryhunt&quot; ]]?a36:a50)  </font></b></div>
<div><b><font color="#666666">exten =&gt; s,n(a36),Set(CTLoop=0)</font></b></div><div><b><font color="#666666">exten =&gt; s,n(a37),GotoIf($[${CTLoop} &gt; ${HuntLoop}]?a42)  ; se este é de rg-grupo, não tira prefixo</font></b></div>
<div><b><font color="#666666">exten =&gt; s,n,Set(CT_EXTEN=${CUT(FILTERED_DIAL,,$[${CTLoop} + 1])})</font></b></div><div><b><font color="#666666">exten =&gt; s,n,Set(DB(CALLTRACE/${CT_EXTEN})=${CALLTRACE_HUNT})</font></b></div>
<div><b><font color="#666666">exten =&gt; s,n,Set(CTLoop=$[1 + ${CTLoop}])</font></b></div><div><b><font color="#666666">exten =&gt; s,n,Goto(s,a37)</font></b></div><div><b><font color="#666666">        </font></b></div><div>
<b><font color="#666666">exten =&gt; s,n(a42),Dial(${${HuntMember}}${ds})</font></b></div><div><b><font color="#666666">exten =&gt; s,n,GotoIf($[&quot;${DIALSTATUS}&quot; = &quot;ANSWER&quot;]?ANSWER,1)</font></b></div><div>
<b><font color="#666666">exten =&gt; s,n,Set(HuntLoop=$[1 + ${HuntLoop}])</font></b></div><div><b><font color="#666666">exten =&gt; s,n,GotoIf($[$[$[&quot;foo${RingGroupMethod}&quot; != &quot;foofirstavailable&quot;] &amp; $[&quot;foo${RingGroupMethod}&quot; != &quot;foofirstnotonphone&quot;]] | $[&quot;foo${DialStatus}&quot; = &quot;fooBUSY&quot;]]?a46)</font></b></div>
<div><b><font color="#666666">exten =&gt; s,n,Set(HuntMembers=0)</font></b></div><div><b><font color="#666666">exten =&gt; s,n(a46),Set(HuntMembers=$[${HuntMembers} - 1])</font></b></div><div><b><font color="#666666">exten =&gt; s,n,Goto(s,a22)</font></b></div>
<div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">exten =&gt; s,n(a50),DBdel(CALLTRACE/${CT_EXTEN})</font></b></div><div><b><font color="#666666">exten =&gt; s,n,Goto(s,a42)</font></b></div>
<div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; Para a seleção de chamadas</font></b></div><div><b><font color="#666666">exten =&gt; NOANSWER,1,Macro(vm,${SCREEN_EXTEN},BUSY,${IVR_RETVM})</font></b></div>
<div><b><font color="#666666">exten =&gt; NOANSWER,n,GotoIf($[&quot;${IVR_RETVM}&quot; != &quot;RETURN&quot; | &quot;${IVR_CONTEXT}&quot; = &quot;&quot;]?bye)</font></b></div><div><b><font color="#666666">exten =&gt; NOANSWER,n,Return</font></b></div>
<div><b><font color="#666666">exten =&gt; NOANSWER,n(bye),Macro(hangupcall)</font></b></div><div><b><font color="#666666">exten =&gt; TORTURE,1,Goto(app-blackhole,musiconhold,1)</font></b></div><div><b><font color="#666666">exten =&gt; TORTURE,n,Macro(hangupcall)</font></b></div>
<div><b><font color="#666666">exten =&gt; DONTCALL,1,Answer</font></b></div><div><b><font color="#666666">exten =&gt; DONTCALL,n,Wait(1)</font></b></div><div><b><font color="#666666">exten =&gt; DONTCALL,n,Zapateller()</font></b></div>
<div><b><font color="#666666">exten =&gt; DONTCALL,n,Playback(ss-noservice)</font></b></div><div><b><font color="#666666">exten =&gt; DONTCALL,n,Macro(hangupcall)</font></b></div><div><b><font color="#666666">exten =&gt; ANSWER,1,Noop(Call successfully answered - Hanging up now)</font></b></div>
<div><b><font color="#666666">exten =&gt; ANSWER,n,Macro(hangupcall,)</font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; Certifique-se de hungupcalls aqui assim que a limpeza adequada ocorre a partir de chamada confirmado e similares</font></b></div>
<div><b><font color="#666666">;</font></b></div><div><b><font color="#666666">exten =&gt; h,1,Macro(hangupcall)</font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; obter o contexto de correio de voz para o usuário no ARG1</font></b></div>
<div><b><font color="#666666">[macro-get-vmcontext]</font></b></div><div><b><font color="#666666">exten =&gt; s,1,Set(VMCONTEXT=${DB(AMPUSER/${ARG1}/voicemail)})</font></b></div><div><b><font color="#666666">exten =&gt; s,2,GotoIf($[&quot;foo${VMCONTEXT}&quot; = &quot;foo&quot;]?200:300)</font></b></div>
<div><b><font color="#666666">exten =&gt; s,200,Set(VMCONTEXT=default)</font></b></div><div><b><font color="#666666">exten =&gt; s,300,NoOp()</font></b></div><div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; Por alguma razão, se eu não correr setCIDname, CallerID(name) ficará em branco na minha AGI</font></b></div>
<div><b><font color="#666666">; ARGS: vazio</font></b></div><div><b><font color="#666666">[macro-fixcid]</font></b></div><div><b><font color="#666666">exten =&gt; s,1,Set(CALLERID(name)=${CALLERID(name)})</font></b></div>
<div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; Ring groups dos telefones</font></b></div><div><b><font color="#666666">; ARGS: Lista de extensões separadas por vírgulas</font></b></div>
<div><b><font color="#666666">; 1 - Ring Group Strategy</font></b></div><div><b><font color="#666666">; 2 - ringtimer</font></b></div><div><b><font color="#666666">; 3 - prefix</font></b></div><div><b><font color="#666666">; 4 - extension list</font></b></div>
<div><b><font color="#666666">[macro-rg-group]</font></b></div><div><b><font color="#666666">exten =&gt; s,1,Macro(user-callerid,SKIPTTL) ; already called from ringgroup</font></b></div><div><b><font color="#666666">exten =&gt; s,2,GotoIf($[&quot;${CALLERID(name):0:${LEN(${RGPREFIX})}}&quot; != &quot;${RGPREFIX}&quot;]?4:3)  ; check for old prefix</font></b></div>
<div><b><font color="#666666">exten =&gt; s,3,Set(CALLERID(name)=${CALLERID(name):${LEN(${RGPREFIX})}}) ; strip off old prefix</font></b></div><div><b><font color="#666666">exten =&gt; s,4,Set(RGPREFIX=${ARG3})  ; set new prefix</font></b></div>
<div><b><font color="#666666">exten =&gt; s,5,Set(CALLERID(name)=${RGPREFIX}${CALLERID(name)})  ; add prefix to callerid name</font></b></div><div><b><font color="#666666">exten =&gt; s,6,Set(RecordMethod=Group)  ; set new prefix</font></b></div>
<div><b><font color="#666666">exten =&gt; s,7,Macro(record-enable,${MACRO_EXTEN},${RecordMethod})</font></b></div><div><b><font color="#666666">exten =&gt; s,8,Set(RingGroupMethod=${ARG1})     ;</font></b></div><div><b><font color="#666666">exten =&gt; s,9,Macro(dial,${ARG2},${DIAL_OPTIONS},${ARG4})</font></b></div>
<div><b><font color="#666666">exten =&gt; s,10,Set(RingGroupMethod=&#39;&#39;)     ;</font></b></div><div><b><font color="#666666"><br></font></b></div><div><br></div></div><div class="gmail_extra"><div><br></div>-- <br><div dir="ltr">
<b style="background-color:rgb(255,255,255)"><font color="#000000">att</font></b><div><b style="background-color:rgb(255,255,255)"><font color="#000000">Hudson </font></b></div><div><b style="background-color:rgb(255,255,255)"><font color="#000000">Decyclopter Network</font></b></div>
<div><br></div></div>
</div></div>