[AsteriskBrasil] PJSIP e Queue gerando CDRs adicionais

Hudson Cardoso hudsoncardoso em hotmail.com
Sexta Abril 16 14:09:37 -03 2021


O canal local "atende" a chamada, por isso gera cdr.
Obter o Outlook para Android<https://aka.ms/ghei36>
________________________________
From: asteriskbrasil-bounces em listas.asteriskbrasil.org <asteriskbrasil-bounces em listas.asteriskbrasil.org> on behalf of mike em tesliuk.com <mike em tesliuk.com>
Sent: Friday, April 16, 2021 9:08:47 AM
To: asteriskbrasil <asteriskbrasil em listas.asteriskbrasil.org>
Subject: [AsteriskBrasil] PJSIP e Queue gerando CDRs adicionais


Olá pessoal, como vai ?

Estou com uma situação aqui onde estamos usando o PJSIP para o sistema , quando os ramais estão em fila nós criamos um contexto separado chamado queuemember para fazer as ligações utilizando o canal Local e então realizar a chamada usando o ${PJSIP_DIAL_CONTACTS} (segue abaixo o contexto)

[queuemember]
;exten => _X.,1,Set(NDN=${CUT(EXTEN,-,2)})
exten => _X.,1,Set(NDN=${EXTEN})
same => n,Set(CDR(tipo)=IN)
same => n,Set(__TRANSFER_CONTEXT=ramais)
same => n,Set(CDR(did)=${MAPDID})
same => n,Dial(${PJSIP_DIAL_CONTACTS(${NDN})},,t)
same => n,Hangup()


O meu problema é que no momento que a fila chama o agente isso está gerando um CDR, eu tentei utilizar o NOCDR() e CDR_PROP mas sem sucesso, alguém tem uma ideia de como contornar esta situação e não gerar o CDR a menos que a chamada seja efetivamente atendida ?

Outro detalhe que isso está gerando (não testei exatamente mas creio ser por isso) é que o MIX_MONITOR está sempre gerando o arquvo de audio para cada tentativa , mesmo usando o b (apenas quando em bridge), acredito que isso se de devido ao fato de o canal Local considerar a bridge montada, abaixo a macro em questão

[macro-gravacoes-queues]
; ARG1 -> accountcode
; ARG2 -> CALLERID
; ARG3 -> QUEUENUMBER

exten => s,1,ExecIf($["${MIXMONITOR_INUSE}" = "1"]?StopMixMonitor())
exten => s,n,Set(TIPO=IN)
exten => s,n,NoOp(Preparando gravacao de chamada)
exten => s,n,Set(ANO=${STRFTIME(${EPOCH},GMT-3,%G)})
exten => s,n,Set(MES=${STRFTIME(${EPOCH},GMT-3,%m)})
exten => s,n,Set(DIA=${STRFTIME(${EPOCH},GMT-3,%d)})
exten => s,n,ExecIf($["${master}" != ""]?Set(CHANNEL(accountcode)=${master}))
exten => s,n,Set(MONITOR_FILENAME=/var/spool/asterisk/monitor/${CHANNEL(accountcode)}/${ANO}/${MES}/${DIA}/queue-${THEQUEUE}-src-${ORIGINADOR}-dst-${CALLERID(num)}-${UNIQUEID})
exten => s,n,Set(CDR(userfield)=${MONITOR_FILENAME})
exten => s,n,ExecIf($["${ODBC_QRECORD(${THEQUEUE})}" == "1"]?Set(doRecord=1):Set(doRecord=0))
exten => s,n,ExecIf($["${doRecord}" == "1"]?MixMonitor(${MONITOR_FILENAME}.WAV,b))
exten => s,n,ExecIf($["${doRecord}" == "1"]?Set(__MIXMONITOR_INUSE=1):Set(__MIXMONITOR_INUSE=0))
exten => s,n,MacroExit()


Alguma ideia sobre estes problemas ?

Obrigado.


--
BRDVOZ<https://brdvoz.com.br>
Soluções de Numeração , PABX em Núvem e muito mais...
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20210416/87905725/attachment.html>


Mais detalhes sobre a lista de discussão AsteriskBrasil