<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Vou compartilhar aqui uma solução que criei para este caso.<br>
Vai ficar meio grande o e-mail.<br>
<br>
=================================================================<br>
--Funcionamento:<br>
<br>
1. Atender.<br>
2. Áudio de atendimento.<br>
3. Gerar protocolo por AGI.<br>
4. Áudio de protocolo.<br>
5. Falar o protocolo gerado.<br>
6. Opção de repetir protocolo.<br>
7. Se digitar 1 ou qualquer coisa repete o Protocolo.<br>
8. Colocar o valor do protocolo no userfild.<br>
9. Se esperar vai para a fila.<br>
10. Desliga<br>
=================================================================<br>
--Criar tabela.<br>
<br>
1. Criar o database e a tabela:<br>
CREATE DATABASE registros;<br>
USE registros;<br>
CREATE TABLE protocolos (id int(10) not null auto_increment,
numero_cli varchar(15), data VARCHAR(20), hora VARCHAR(20),
protocolo int(16) not null, primary key (id));<br>
=================================================================<br>
--AGI em Perl<br>
<br>
1. Instalar bibliotecas do Perl:<br>
apt-get install libdbd-pg-perl<br>
apt-get install ghostscript libnewt-dev libsox-fmt-all
linux-headers-`uname -r` sox<br>
perl -MCPAN -e 'install Asterisk::AGI'<br>
<br>
2. Código da AGI:<br>
<br>
#!/usr/bin/perl -w<br>
<br>
use DBI();<br>
use Asterisk::AGI;<br>
$AGI = new Asterisk::AGI;<br>
<br>
# ARQUIVO DE LOG<br>
if(! open FILE, ">>/home/suahome/logagi.txt") { # APONTE QUAL
A SUA HOME E NELA CRIE O ARQUIVO logagi.txt COM PERMISSOES 775<br>
die "Nao abriu o arquivo" . "\n" ;<br>
}<br>
<br>
$NUM = $ARGV[0]; # numero do cliente<br>
$DATA = $ARGV[1]; # data da discagem<br>
$HORA = $ARGV[2]; # hora da discagem<br>
<br>
# GERAR PROTOCOLO O NUMERO RANDOM MINIMO SERA 1000 E O MAXIMO 9999<br>
$RANGE = 8999;<br>
$MINIMUM = 1000;<br>
<br>
$RANDOM = int(rand($RANGE)) + $MINIMUM;<br>
<br>
$PROTOCOLO = $DATA . $HORA . $RANDOM;<br>
<br>
# REGISTRAR NO BANCO<br>
$dbh = DBI->connect("DBI:mysql:registros:localhost", "root",
"suasenha*") or die print $DBI::errstr; # INSIRA A SENHA DO ROOT DO
SEU DB<br>
$dbh->{RaiseError} = 1;<br>
$cmd = "insert into protocolos values
('0','$NUM','$DATA','$HORA','$PROTOCOLO')";<br>
$sth = $dbh->prepare($cmd);<br>
$sth->execute();<br>
$result = $sth->rows;<br>
$sth->finish();<br>
$dbh->disconnect();<br>
<br>
#RETORNANDO O NUMERO DO PROTOCOLO PARA SER ESCRITO NO USERFILD<br>
$AGI->set_variable('protocolo',$PROTOCOLO);<br>
<br>
# ESCREVENDO NO LOG O RESULTADO DO PROCESSO<br>
print FILE "NUMERO: $NUM DATA: $DATA HORA: $HORA PROTOCOLO:
$PROTOCOLO" . "\n";<br>
<br>
# RETORNAR AO ASTERISK<br>
exit;<br>
<br>
3. Coloque a AGI na pasta /var/lib/asterisk/agi-bin com permissão
777.<br>
=================================================================<br>
<br>
--Dialplan<br>
<br>
1. Em AEL:<br>
<br>
context from-psnt { <br>
_[2]XXX => { // COLOQUE A SUA MASCARA<br>
//============================================================================<br>
// TESTE GERAR PROTOCOLO<br>
//============================================================================<br>
Answer();<br>
Playback(audioAtendimento);<br>
AGI(gera_protocolo.pl,${CDR(src)},${STRFTIME(${EPOCH},,%Y%m%d)},${STRFTIME(${EPOCH},,%H%M)});<br>
Inicio:<br>
Playback(audioProtocolo);<br>
NoOp(------------> ${protocolo});<br>
SayDigits(${protocolo});<br>
BackGround(audioRepetir);<br>
WaitExten(5);<br>
};<br>
<br>
1 => { // SE O CLIENTE DISCAR 1 O PROTOCOLO SERA REPETIDO<br>
goto from-pstn,2000,Inicio; // ALTERA PARA A MASCARA DO
INICIO E PARA O SEU CONTEXT DE ENTRADA<br>
};<br>
<br>
i => { // SE O CLIENTE DISCAR ALGO DIFERENTE DE 1 O PROTOCOLO
TAMBEM SERA REPETIDO<br>
goto from-pstn,2000,Inicio; // ALTERA PARA A MASCARA DO
INICIO E PARA O SEU CONTEXT DE ENTRADA<br>
};<br>
<br>
t => {<br>
Set(CDR(userfild)=${protocolo});<br>
Queue(fila1,tTwW); # COLOQUE A SUA FILA<br>
Hangup();<br>
};<br>
};<br>
<br>
2. Áudios:<br>
O áudio audioAtendimento deve ter algo como "Olá cliente bem vindo a
XXXX".<br>
O áudio audioProtocolo deve ter algo como "Seu protocolo é".<br>
O áudio audioRepetir deve ter algo como "Se deseja que eu repita o
código disque 1 ou aguarde para ser atendido".<br>
<br>
3. Saída do logagi.txt:<br>
<br>
NUMERO: 1133235550 DATA: 20130802 HORA: 1509 PROTOCOLO:
2013080215095657<br>
NUMERO: 11995310802 DATA: 20130802 HORA: 1514 PROTOCOLO:
2013080215146297<br>
<br>
4. Registro no banco:<br>
<br>
+----+-------------+----------+------+------------------+<br>
| id | numero_cli | data | hora | protocolo |<br>
+----+-------------+----------+------+------------------+<br>
| 8 | 1133235550 | 20130802 | 1509 | 2013080215095657 |<br>
| 9 | 11995310802 | 20130802 | 1514 | 2013080215146297 |<br>
+----+-------------+----------+------+------------------+<br>
=================================================================<br>
<br>
<div class="moz-cite-prefix">Em 01/08/2013 19:41, Marcio - Google
escreveu:<br>
</div>
<blockquote
cite="mid:CABZMeU3VYtSYy+ttJFUVwET8qUGX+dzFp10+xKw6U=b_zFVPnQ@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_default"
style="font-family:arial,helvetica,sans-serif">Já pensou em
usar um CRM?!?!?</div>
<div class="gmail_default"
style="font-family:arial,helvetica,sans-serif"><br>
</div>
<div class="gmail_default"
style="font-family:arial,helvetica,sans-serif">
<br>
</div>
</div>
<div class="gmail_extra"><br clear="all">
<div>
<div dir="ltr"><br>
[...]'s<br>
<br>
Marcio
<div><br>
</div>
<div>
<div style="font-family:arial;font-size:small">========================================</div>
<div style="font-family:arial;font-size:small">
########### Campanha Ajude o Marcio! ###########</div>
<div style="font-family:arial;font-size:small"><a
moz-do-not-send="true"
href="http://sosmarcio.blogspot.com.br/"
style="color:rgb(17,85,204)" target="_blank">http://sosmarcio.blogspot.com.br/</a></div>
<div style="font-family:arial;font-size:small"><a
moz-do-not-send="true"
href="http://www.vakinha.com.br/VaquinhaP.aspx?e=195793"
style="color:rgb(17,85,204)" target="_blank">http://www.vakinha.com.br/VaquinhaP.aspx?e=195793</a><br>
</div>
<div style="font-family:arial;font-size:small">
========================================</div>
</div>
</div>
</div>
<br>
<br>
<div class="gmail_quote">Em 1 de agosto de 2013 16:37, Eduardo
Souza <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:edusouza.ti@gmail.com" target="_blank">edusouza.ti@gmail.com</a>></span>
escreveu:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
Boa tarde<br>
<br>
Consegui realizar a seguinte forma, se alguém puder melhorar
isso agradeço.<br>
<br>
Tipo quando ligo para empresa a Ura joga para uma fila no
caso do callcenter, ai ele vai falar o numero do protocolo
usando o UNIQUEID.<br>
<br>
Esse protocolo só será válido caso a ligação seja atendida
caso contrário ele não grava no CDR<br>
<br>
alguém tem sugestões de melhoras?<br>
<br>
[from-internal]<br>
<br>
exten => 900,1,SayDigits(${UNIQUEID})<br>
exten => 900,6,Dial(SIP/2001/${EXTEN:2}|40|tTrwW)<br>
<br>
<br>
Abaixo é o que ele fala para o cliente, no caso o protocolo
usando o uniqueid<br>
<br>
-- <SIP/2000-0000000a> Playing 'digits/1.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/3.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/7.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/5.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/3.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/8.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/8.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/9.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/3.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/3.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/1.gsm'
(language 'en')<br>
-- <SIP/2000-0000000a> Playing 'digits/0.gsm'
(language 'en')<br>
<br>
_______________________________________________<br>
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;<br>
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;<br>
Intercomunicadores para acesso remoto via rede IP. Conheça
em <a moz-do-not-send="true" href="http://www.Khomp.com"
target="_blank">www.Khomp.com</a>.<br>
_______________________________________________<br>
ALIGERA – Fabricante nacional de Gateways SIP-E1 para R2,
ISDN e SS7.<br>
Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.<br>
Channel Bank – Appliance Asterisk - Acesse <a
moz-do-not-send="true" href="http://www.aligera.com.br"
target="_blank">www.aligera.com.br</a>.<br>
_______________________________________________<br>
Para remover seu email desta lista, basta enviar um email em
branco para <a moz-do-not-send="true"
href="mailto:asteriskbrasil-unsubscribe@listas.asteriskbrasil.org">asteriskbrasil-unsubscribe@listas.asteriskbrasil.org</a><br>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
Intercomunicadores para acesso remoto via rede IP. Conheça em <a class="moz-txt-link-abbreviated" href="http://www.Khomp.com">www.Khomp.com</a>.
_______________________________________________
ALIGERA – Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.
Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
Channel Bank – Appliance Asterisk - Acesse <a class="moz-txt-link-abbreviated" href="http://www.aligera.com.br">www.aligera.com.br</a>.
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para <a class="moz-txt-link-abbreviated" href="mailto:asteriskbrasil-unsubscribe@listas.asteriskbrasil.org">asteriskbrasil-unsubscribe@listas.asteriskbrasil.org</a></pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Wagner Mazuchi de Lima Junior
11 3323-5550
<a class="moz-txt-link-abbreviated" href="mailto:wagner@sincronismotelecom.com">wagner@sincronismotelecom.com</a>
<a class="moz-txt-link-abbreviated" href="http://www.sincronismo.com.br">www.sincronismo.com.br</a>
Rua Tácito de Almeida, nº 196
01251-010 - Pacaembu - São Paulo - SP
</pre>
</body>
</html>