[AsteriskBrasil] PJSIP e Queue gerando CDRs adicionais

mike em tesliuk.com mike em tesliuk.com
Sexta Abril 16 15:13:48 -03 2021


Teoricamente o /n vai resolver isso, vou ver sobre colocar ele na queue se funciona. 

-- 
[ https://brdvoz.com.br/ | BRDVOZ ] 
Soluções de Numeração , PABX em Núvem e muito mais... 


De: "Hudson Cardoso" <hudsoncardoso at hotmail.com> 
Para: "asteriskbrasil" <asteriskbrasil at listas.asteriskbrasil.org> 
Itens enviados: Sexta-feira, 16 de Abril de 2021 14:09:37 
Assunto: Re: [AsteriskBrasil] PJSIP e Queue gerando CDRs adicionais 

O canal local "atende" a chamada, por isso gera cdr. 
Obter o [ https://aka.ms/ghei36 | Outlook para Android ] 

From: asteriskbrasil-bounces at listas.asteriskbrasil.org <asteriskbrasil-bounces at listas.asteriskbrasil.org> on behalf of mike at tesliuk.com <mike at tesliuk.com> 
Sent: Friday, April 16, 2021 9:08:47 AM 
To: asteriskbrasil <asteriskbrasil at 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. 


-- 
[ https://brdvoz.com.br/ | BRDVOZ ] 
Soluções de Numeração , PABX em Núvem e muito mais... 

_______________________________________________ 
Contact Center em Nuvem 
Home Office 
http://www.weontap.com.br 
_______________________________________________ 
Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe at listas.asteriskbrasil.org 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20210416/0b463904/attachment.html>


Mais detalhes sobre a lista de discussão AsteriskBrasil