[AsteriskBrasil] Adicionar campo CDR para Queue

Rodrigo Lang rodrigoferreiralang em gmail.com
Quarta Novembro 11 10:13:18 BRST 2009


Estou verificando isso Eder, porém ele só não salva em um local especifico,
que é a macro que eu chamo com o queues. Estou vendo se eu consigo fazer uma
refência da tabela queue_log para a tabela CDR. Assim vou ter a informação
que preciso. Volto para postar o resultado.



Obrigado,
Rodrigo Lang.




2009/11/11 Eder Souza <eder.souza em bsd.com.br>

> kra seu Asterisk tem algum Bug para ele nao estar inserindo isso no CDR !!
>
> Pega a sua versão e da uma procurada sobre os bugs relatados
>
> 2009/11/6 Rodrigo Lang <rodrigoferreiralang em gmail.com>
>
> Boa tarde Eder, testei também com o CDR(userfields) porém não deu em
>> nada... Talvez possam me mostrar alguma alternativa. O que eu preciso é
>> salvar na tabela CDR um campo que diga qual agente atendeu a ligação que
>> caiu na fila. E também estou pesquisando como vou fazer para ele gravar a
>> hora que o agente atende a ligação.
>>
>> Ats,
>> Rodrigo Lang.
>>
>>
>> 2009/11/5 Rodrigo Lang <rodrigoferreiralang em gmail.com>
>>
>>> Coloquei assim e não funcionou... Segue como ficou o contexto e logo
>>> abaixo o log do console.
>>>
>>>
>>> exten => s,1,Set(CDR(Agente)=${CDR(channel):6:2})
>>>  exten => s,2,NoOp(${CDR(Agente)})
>>> exten => s,3,ResetCDR(w)
>>>
>>>     -- Executing [4300 em khomp-00-01:1] Macro("Khomp/B0C31-1", "fila") in
>>> new stack
>>>     -- Executing [s em macro-fila:1] Answer("Khomp/B0C31-1", "") in new
>>> stack
>>>     -- Executing [s em macro-fila:2] NoOp("Khomp/B0C31-1", "2") in new
>>> stack
>>>     -- Executing [s em macro-fila:3] GotoIf("Khomp/B0C31-1",
>>> "1?4:fila-ocupada,s,1") in new stack
>>>     -- Goto (macro-fila,s,4)
>>>     -- Executing [s em macro-fila:4] Set("Khomp/B0C31-1",
>>> "CDR(fluxo)=Entrante") in new stack
>>>     -- Executing [s em macro-fila:5] Set("Khomp/B0C31-1",
>>> "MONITOR_FILENAME=1257451255.2342") in new stack
>>>     -- Executing [s em macro-fila:6] Wait("Khomp/B0C31-1", "3") in new
>>> stack
>>>     -- Executing [s em macro-fila:7] Playback("Khomp/B0C31-1", "obrigado")
>>> in new stack
>>>     -- <Khomp/B0C31-1> Playing 'obrigado.gsm' (language 'en')
>>>     -- DAHDI/15-1 is ringing
>>>     -- DAHDI/15-1 is ringing
>>>   == Begin MixMonitor Recording Khomp/B0C31-1
>>>     -- Executing [s em macro-atendentes:1] Set("DAHDI/15-1",
>>> "CDR(Agente)=15") in new stack
>>>     -- Executing [s em macro-atendentes:2] NoOp("DAHDI/15-1", "15") in new
>>> stack
>>>     -- Executing [s em macro-atendentes:3] ResetCDR("DAHDI/15-1", "w") in
>>> new stack
>>>     -- Hungup 'DAHDI/15-1'
>>>   == Spawn extension (macro-fila, s, 8) exited non-zero on
>>> 'Khomp/B0C31-1' in macro 'fila'
>>>   == Spawn extension (khomp-00-01, 4300, 1) exited non-zero on
>>> 'Khomp/B0C31-1'
>>>   == MixMonitor close filestream
>>>
>>>
>>>
>>> Ats,
>>>
>>> Rodrigo Lang.
>>>
>>>
>>> 2009/11/5 Italo Rossi <italorossib em gmail.com>
>>>
>>>> Rodrigo,
>>>>
>>>> Execute com o w e APÓS o Set().
>>>>
>>>> w força a gravação dos dados antes do reset.
>>>>
>>>> Posta aqui o resultado.
>>>>
>>>> On Nov 5, 2009, at 4:51 PM, Rodrigo Lang wrote:
>>>>
>>>> > Então Italo, ele não salva o campo especifico que eu chamo dentro da
>>>> > macro setada no Queue(). Eu tentei o ResetCDR() sem o w, porém
>>>> > apagava os outros campos que eu setava antes de entra na Queue. Vou
>>>> > tentar com o "w" e vou postar o que aconteceu. Assim que eu tentei:
>>>> >
>>>> > [macro-atendente]
>>>> > exten => s,1,ResetCDR()
>>>> > exten => s,2,Set(CDR(Agente)=${CDR(channel):6:2})
>>>> > exten => s,3,NoOp(${CDR(Agente)})
>>>> >
>>>> >
>>>> > Obr,
>>>> > Rodrigo Lang.
>>>> >
>>>> >
>>>> > 2009/11/5 Italo Rossi <italorossib em gmail.com>
>>>> > Rodrigo,
>>>> >
>>>> > Ele não grava nenhuma informação ou somente o campo que você
>>>> > adicionou?
>>>> > Se você executar um ResetCDR(w) funciona?
>>>> >
>>>> > On Nov 5, 2009, at 4:42 PM, Rodrigo Lang wrote:
>>>> >
>>>> > > Opa Eder, seguinte, fora da Queue ele salva normal... A quarta
>>>> > > prioridade no meu contexto que eu passei no primeiro e-mail ("exten
>>>> > > => s,4,Set(CDR(fluxo)=Entrante)") funciona direitinho, salva no
>>>> > > MySQL de boa. Porém quando vai para a Queue e eu chamo uma macro
>>>> > > quando o agente atender, ele seta, aparece no console só que não
>>>> > > salva... Estou procurando no SVNView para ver se acho alguma
>>>> > > documentação sobre o assunto, mas tá foda... Estou procurando faz
>>>> > > alguns dias já... Vou tentar colocar dentro da macro
>>>> > > Set(CDR(userfields)=...) que nem você sugeriu.
>>>> > >
>>>> > >
>>>> > > Obrigado,
>>>> > > Rodrigo Lang.
>>>> > >
>>>> > >
>>>> > >
>>>> > > 2009/11/5 Eder Souza <eder.souza em bsd.com.br>
>>>> > > humm cdr customicos já testou algo bem simples só para ver se ele
>>>> > > seta no seu cdr qq valor algo assim ?
>>>> > >
>>>> > > exten => 123456,1,Set(CDR(fluxo)=Entrante)
>>>> > >
>>>> > > coloca isso no extensions e disca para o 123456 e veja se ele insere
>>>> > >
>>>> > > tenta tambem com o userfield e ve se insere
>>>> > >
>>>> > > exten => 1234,1,Set(CDR(userfield)=testessss)
>>>> > > Eu uso isso Aqui mas com um Asterisk 1.4 sem problemas ..
>>>> > >
>>>> > >
>>>> > > Att,
>>>> > >
>>>> > >
>>>> > > Eng Eder de Souza
>>>> > >
>>>> > >
>>>> > >
>>>> > > 2009/11/5 Rodrigo Lang <rodrigoferreiralang em gmail.com>
>>>> > > Boa tarde lista, estou com um pequeno problema para adicionar um
>>>> > > campo CDR dentro da fila e salva-lo em banco MySQL. O que eu
>>>> > > necessito é que seja salvo alguns parâmetros somente quando o agente
>>>> > > atende a ligação. Para isso eu adicionei uma macro setando os campos
>>>> > > necessários. Quando o agente atende, os campos são setados e se
>>>> > > colocar um NoOp()  mostrando a variavél após o parametro ser setado,
>>>> > > ele informa o valor tudo certinho. Porém quando desliga a ligação o
>>>> > > campo não é salvo no CDR. Já tentei colocando a macro para rodar
>>>> > > direto na aplicação (Queue(atendimento,tc,,,30,,atendente) e tentei
>>>> > > também colocando o parâmetro "membermacro=atendente" no queues.conf.
>>>> > > Mais um detalhe, se eu colocar a opção "c" no Queue() para ele
>>>> > > retornar para o contexto e colocar um NoOp() mostrando a variável,
>>>> > > ela simplesmente vem em branco... Estou imaginando que possa ser um
>>>> > > bug de versão, estou procurando no Issues para ver se encontro
>>>> > algo...
>>>> > >
>>>> > > exten => s,1,Answer()
>>>> > > exten => s,2,NoOp(${QUEUE_WAITING_COUNT(atendimento)})
>>>> > > exten => s,3,GotoIf($[ "${QUEUE_WAITING_COUNT(atendimento)}" < 30 ]?
>>>> > > 4:fila-ocupada,s,1)
>>>> > > exten => s,
>>>> > > 4
>>>> > > ,Set
>>>> > > (CDR
>>>> > > (fluxo)=Entrante)                                               ;;;
>>>> > > Este campo é salvo no CDR normalmente.
>>>> > > exten => s,5,Set(MONITOR_FILENAME=${UNIQUEID})
>>>> > > exten => s,6,Wait(3)
>>>> > > exten => s,7,PlayBack(obrigado)
>>>> > > exten => s,8,Queue(atendimento,tc,,,300,)
>>>> > > exten => s,9,NoOp(${CDR(Agente)})
>>>> > > exten => s,10,Hangup()
>>>> > >
>>>> > > [macro-atendente]
>>>> > > exten => s,1,Set(CDR(Agente)=${CDR(channel):6:2})  ;Tem o ":6:2"
>>>> > > pois eu pego a informação "DAHDI/12", assim ele seta o campo
>>>> > > CDR(Agente)=12.
>>>> > > exten => s,2,NoOp(${CDR(Agente)})
>>>> > >
>>>> > > Estou usando Asterisk 1.6.0.15, Dahdi-Linux 2.2.0.2, Libpri 1.4.10.1
>>>> > > e Addons 1.6.0.3.
>>>> > >
>>>> > > Agradeço desde já,
>>>> > > Rodrigo F. Lang
>>>> > > Amd. de Redes em Telecom
>>>> > >
>>>> > >
>>>> > > _______________________________________________
>>>> > > http://www.voipmania.com.br
>>>> > > Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>>>> > > Promoção por tempo limitado!
>>>> > > Acesse agora http://promo.voipmania.com.br
>>>> > >
>>>> > > _______________________________________________
>>>> > > Lista de discussões AsteriskBrasil.org
>>>> > > AsteriskBrasil em listas.asteriskbrasil.org
>>>> > > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>>>> > >
>>>> > >
>>>> > >
>>>> > > _______________________________________________
>>>> > > http://www.voipmania.com.br
>>>> > > Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>>>> > > Promoção por tempo limitado!
>>>> > > Acesse agora http://promo.voipmania.com.br
>>>> > >
>>>> > > _______________________________________________
>>>> > > Lista de discussões AsteriskBrasil.org
>>>> > > AsteriskBrasil em listas.asteriskbrasil.org
>>>> > > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>>>> > >
>>>> > >
>>>> > >
>>>> > > --
>>>> > > Rodrigo F. Lang
>>>> > > Amd. de Redes em Telecom
>>>> > >
>>>> > > _______________________________________________
>>>> > > http://www.voipmania.com.br
>>>> > > Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>>>> > > Promoção por tempo limitado!
>>>> > > Acesse agora http://promo.voipmania.com.br
>>>> > >
>>>> > > _______________________________________________
>>>> > > Lista de discussões AsteriskBrasil.org
>>>> > > AsteriskBrasil em listas.asteriskbrasil.org
>>>> > > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>>>> >
>>>> >
>>>> > _______________________________________________
>>>> > http://www.voipmania.com.br
>>>> > Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>>>> > Promoção por tempo limitado!
>>>> > Acesse agora http://promo.voipmania.com.br
>>>> >
>>>> > _______________________________________________
>>>> > Lista de discussões AsteriskBrasil.org
>>>> > AsteriskBrasil em listas.asteriskbrasil.org
>>>> > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > Rodrigo F. Lang
>>>> > Amd. de Redes em Telecom
>>>> >
>>>> > _______________________________________________
>>>> > http://www.voipmania.com.br
>>>> > Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>>>> > Promoção por tempo limitado!
>>>> > Acesse agora http://promo.voipmania.com.br
>>>> >
>>>> > _______________________________________________
>>>> > Lista de discussões AsteriskBrasil.org
>>>> > AsteriskBrasil em listas.asteriskbrasil.org
>>>> > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>>>>
>>>>
>>>> _______________________________________________
>>>> http://www.voipmania.com.br
>>>> Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>>>> Promoção por tempo limitado!
>>>> Acesse agora http://promo.voipmania.com.br
>>>>
>>>> _______________________________________________
>>>> Lista de discussões AsteriskBrasil.org
>>>> AsteriskBrasil em listas.asteriskbrasil.org
>>>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>>>>
>>>
>>>
>>>
>>> --
>>>  Rodrigo F. Lang
>>> Amd. de Redes em Telecom
>>>
>>
>>
>>
>> --
>>  Rodrigo F. Lang
>> Amd. de Redes em Telecom
>>
>>
>> _______________________________________________
>> http://www.voipmania.com.br
>> Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>> Promoção por tempo limitado!
>> Acesse agora http://promo.voipmania.com.br
>>
>> _______________________________________________
>> Lista de discussões AsteriskBrasil.org
>> AsteriskBrasil em listas.asteriskbrasil.org
>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>>
>
>
>
> _______________________________________________
> http://www.voipmania.com.br
> Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
> Promoção por tempo limitado!
> Acesse agora http://promo.voipmania.com.br
>
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>



-- 
Rodrigo F. Lang
Amd. de Redes em Telecom
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20091111/47c88bc7/attachment-0001.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil