<div dir="ltr"><b>opa claro....</b><div><b><br></b></div><div><b>estava contabilizando e tive 22 chamadas derrubadas ontem...</b></div><div><b>será que se eu atualizar o Asterisk do 1.8 para 11 resolveria??</b></div><div><br>
<br><div><b><font color="#000000">[macro-hangupcall]</font></b></div><div><b><font color="#666666">include =&gt; macro-hangupcall-custom</font></b></div><div><b><font color="#666666">exten =&gt; s,1(start),GotoIf($[&quot;${USE_CONFIRMATION}&quot;=&quot;&quot; | &quot;${RINGGROUP_INDEX}&quot;=&quot;&quot; | &quot;${CHANNEL}&quot;!=&quot;${UNIQCHAN}&quot;]?skiprg)</font></b></div>

<div><b><font color="#666666">exten =&gt; s,n,Noop(Cleaning Up Confirmation Flag: RG/${RINGGROUP_INDEX}/${CHANNEL})</font></b></div><div><b><font color="#666666">exten =&gt; s,n(delrgi),Noop(Deleting: RG/${RINGGROUP_INDEX}/${CHANNEL} ${DB_DELETE(RG/${RINGGROUP_INDEX}/${CHANNEL})})</font></b></div>

<div><b><font color="#666666">exten =&gt; s,n(skiprg),GotoIf($[&quot;${BLKVM_BASE}&quot;=&quot;&quot; | &quot;BLKVM/${BLKVM_BASE}/${CHANNEL}&quot;!=&quot;${BLKVM_OVERRIDE}&quot;]?skipblkvm)</font></b></div><div><b><font color="#666666">exten =&gt; s,n,Noop(Cleaning Up Block VM Flag: ${BLKVM_OVERRIDE})</font></b></div>

<div><b><font color="#666666">exten =&gt; s,n(delblkvm),Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})</font></b></div><div><b><font color="#666666">exten =&gt; s,n(skipblkvm),GotoIf($[&quot;${FMGRP}&quot;=&quot;&quot; | &quot;${FMUNIQUE}&quot;=&quot;&quot; | &quot;${CHANNEL}&quot;!=&quot;${FMUNIQUE}&quot;]?theend)</font></b></div>

<div><b><font color="#666666">exten =&gt; s,n(delfmrgp),Noop(Deleting: FM/DND/${FMGRP}/${CHANNEL} ${DB_DELETE(FM/DND/${FMGRP}/${CHANNEL})})</font></b></div><div><b><font color="#666666">exten =&gt; s,n(theend),Hangup</font></b></div>

<div><b><font color="#666666"><br></font></b></div><div><b><font color="#666666">; end of [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><div><font color="#000000">[macro-hangupcall]</font></div><div style="color:rgb(102,102,102)">include =&gt; macro-hangupcall-custom</div><div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">
; Validar si el archivo de MixMon existe. Puede no existir si la llamada cuelga</div><div style="color:rgb(102,102,102)">; del lado origen antes que el destino conteste (Elastix bug #422)</div><div style="color:rgb(102,102,102)">
<br></div><div style="color:rgb(102,102,102)">exten =&gt; s,1,GotoIf($[&quot;${CDR(userfield)}&quot; = &quot;&quot;]?endmixmoncheck)</div><div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">; Este codigo es fragil. Actualizar si se averigua la manera de consultar AST_MONITOR_DIR</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Set(MIXMON_CALLFILENAME=${ASTSPOOLDIR}/monitor/${CALLFILENAME}.${MIXMON_FORMAT})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${MIXMON_DIR}&quot; = &quot;&quot;]?defaultmixmondir)</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Set(MIXMON_CALLFILENAME=${MIXMON_DIR}${CALLFILENAME}.${MIXMON_FORMAT})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(defaultmixmondir),System(test -e ${MIXMON_CALLFILENAME})</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Noop(SYSTEMSTATUS = ${SYSTEMSTATUS})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${SYSTEMSTATUS}&quot; = &quot;SUCCESS&quot;]?endmixmoncheck)</div>
<div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">; Si archivo MixMon no existe, se anula CDR(userfield)</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,Set(CDR(userfield)=)</div><div style="color:rgb(102,102,102)">
exten =&gt; s,n(endmixmoncheck),Noop(End of MIXMON check)</div><div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">; Validar si existe el archivo de grabacion de MeetMe. Puede que el archivo de</div>
<div style="color:rgb(102,102,102)">; grabacion sea distinto del especificado en el contexto, porque solo obedece</div><div style="color:rgb(102,102,102)">; la asignacion del primer conferencista que entra a la conferencia.</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${MEETME_RECORDINGFILE}&quot; = &quot;&quot;]?nomeetmemon)</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${MEETME_ACTUAL_RECORDINGFILE}&quot; = &quot;&quot;]?nomeetmemon)</div>
<div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">; Revisar si existe ${MEETME_ACTUAL_RECORDINGFILE}.${MIXMON_FORMAT}</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,Set(MEETME_REAL_TESTFILE=${MEETME_ACTUAL_RECORDINGFILE}.${MIXMON_FORMAT})</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Set(MEETME_ALIAS_TESTFILE=${MEETME_RECORDINGFILE}.${MIXMON_FORMAT})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,System(test -e ${MEETME_REAL_TESTFILE})</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Noop(SYSTEMSTATUS = ${SYSTEMSTATUS})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${SYSTEMSTATUS}&quot; = &quot;SUCCESS&quot;]?meetmemonexists)</div>
<div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">; Revisar si existe ${MEETME_ACTUAL_RECORDINGFILE}.wav</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,Set(MEETME_REAL_TESTFILE=${MEETME_ACTUAL_RECORDINGFILE}.wav)</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Set(MEETME_ALIAS_TESTFILE=${MEETME_RECORDINGFILE}.wav)</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,System(test -e ${MEETME_REAL_TESTFILE})</div><div style="color:rgb(102,102,102)">
exten =&gt; s,n,Noop(SYSTEMSTATUS = ${SYSTEMSTATUS})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${SYSTEMSTATUS}&quot; = &quot;SUCCESS&quot;]?meetmemonexists)</div><div style="color:rgb(102,102,102)">
exten =&gt; s,n,Goto(nomeetmemon)</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(meetmemonexists),Noop(MEETME recording is ${MEETME_REAL_TESTFILE})</div><div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">
; Revisar si MEETME_ACTUAL_RECORDINGFILE difiere de MEETME_RECORDINGFILE</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${MEETME_RECORDINGFILE}&quot; = &quot;${MEETME_ACTUAL_RECORDINGFILE}&quot;]?meetmeskiplink)</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Noop(Hardlinking ${MEETME_REAL_TESTFILE} to ${MEETME_ALIAS_TESTFILE})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,System(ln ${MEETME_REAL_TESTFILE} ${MEETME_ALIAS_TESTFILE})</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n(meetmeskiplink),Set(CDR(userfield)=audio:${MEETME_ALIAS_TESTFILE})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(nomeetmemon),Noop(End of MEETME check)</div><div style="color:rgb(102,102,102)">
<br></div><div style="color:rgb(102,102,102)">; Validar si existe el archivo de grabacion bajo demanda para la extension</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${TOUCH_MONITOR_OUTPUT}&quot; = &quot;&quot;]?noautomon)</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${TOUCH_MONITOR_FORMAT}&quot; = &quot;&quot;]?noautomonformat)</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,Set(CDR(userfield)=audio:${TOUCH_MONITOR_OUTPUT}.${TOUCH_MONITOR_FORMAT})</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Goto(noautomon)</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(noautomonformat),Set(CDR(userfield)=audio:${TOUCH_MONITOR_OUTPUT}.wav)</div><div style="color:rgb(102,102,102)">
exten =&gt; s,n(noautomon),Noop(TOUCH_MONITOR_OUTPUT=${TOUCH_MONITOR_OUTPUT})</div><div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">; Validar si existe el archivo de grabacion de la cola</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${MONITOR_FILENAME}&quot; = &quot;&quot;]?noautomon2)</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,System(test -e ${MONITOR_FILENAME}*)</div><div style="color:rgb(102,102,102)">
exten =&gt; s,n,Noop(SYSTEMSTATUS = ${SYSTEMSTATUS})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n,GotoIf($[&quot;${SYSTEMSTATUS}&quot; = &quot;APPERROR&quot;]?errornoautomon)</div><div style="color:rgb(102,102,102)">
exten =&gt; s,n,Set(CDR(userfield)=audio:${MONITOR_FILENAME})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(errornoautomon),Noop(End of MONITOR QUEUE check)</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(noautomon2),Noop(MONITOR_FILENAME=${MONITOR_FILENAME})</div>
<div style="color:rgb(102,102,102)"><br></div><div style="color:rgb(102,102,102)">exten =&gt; s,n(start),GotoIf($[&quot;${USE_CONFIRMATION}&quot;=&quot;&quot; | &quot;${RINGGROUP_INDEX}&quot;=&quot;&quot; | &quot;${CHANNEL}&quot;!=&quot;${UNIQCHAN}&quot;]?skiprg)</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Noop(Cleaning Up Confirmation Flag: RG/${RINGGROUP_INDEX}/${CHANNEL})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(delrgi),Noop(Deleting: RG/${RINGGROUP_INDEX}/${CHANNEL} ${DB_DELETE(RG/${RINGGROUP_INDEX}/${CHANNEL})})</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n(skiprg),GotoIf($[&quot;${BLKVM_BASE}&quot;=&quot;&quot; | &quot;BLKVM/${BLKVM_BASE}/${CHANNEL}&quot;!=&quot;${BLKVM_OVERRIDE}&quot;]?skipblkvm)</div><div style="color:rgb(102,102,102)">
exten =&gt; s,n,Noop(Cleaning Up Block VM Flag: ${BLKVM_OVERRIDE})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(delblkvm),Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})</div><div><u><font color="#eeeeee" style="background-color:rgb(255,0,0)">exten =&gt; s,n(skipblkvm),GotoIf($[&quot;${FMGRP}&quot;=&quot;&quot; | &quot;${FMUNIQUE}&quot;=&quot;&quot; | &quot;${CHANNEL}&quot;!=&quot;${FMUNIQUE}&quot;]?theend)</font></u></div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n(delfmrgp),Noop(Deleting: FM/DND/${FMGRP}/${CHANNEL} ${DB_DELETE(FM/DND/${FMGRP}/${CHANNEL})})</div><div style="color:rgb(102,102,102)">exten =&gt; s,n(theend),AGI(hangup.agi)</div>
<div style="color:rgb(102,102,102)">exten =&gt; s,n,Hangup</div><div style="color:rgb(102,102,102)"><br></div></b></div><div><b><font color="#666666"><br></font></b></div><div><br></div><div><br></div><div><br></div><div class="gmail_extra">
-- <br><div dir="ltr"><b style><font color="#666666">att</font></b><div>
<b style><font color="#666666">Hudson </font></b></div><div><b style><font color="#666666">Decyclopter Network</font></b></div><div><br></div></div>
</div></div></div>