<div>2011/8/16 Rafael Oliveira Brito <span dir="ltr">&lt;<a href="mailto:rafael.brito@caputobastos.adv.br">rafael.brito@caputobastos.adv.br</a>&gt;</span></div><div><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
<div lang="PT-BR" link="blue" vlink="purple"><div><p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Galera bom dia!<u></u><u></u></p><p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">
<u></u> <u></u></p><p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Peguei um Call Center, para montar com a seguinte demanda URA simples  apenas bom dia, aguarde que sua ligação vai ser transferida para um atendente.<u></u><u></u></p>
<p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">20 Operadores.<u></u><u></u></p><p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">
Gravação de todas as ligações entrantes.<u></u><u></u></p><p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">2 E1 logo terei uma fila de 40 ligações e mais 20 atendidas.<u></u><u></u></p>
<p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span style="color: rgb(48, 48, 48); ">Estou pensando em usar o Modulo call center do Elastix minhas perguntas.<u></u><u></u></span></p>
<p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span style="color: rgb(48, 48, 48); "><u></u> <u></u></span></p><p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">
<span style="color: rgb(48, 48, 48); ">Alguem já usou?<u></u><u></u></span></p><p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span style="color: rgb(48, 48, 48); ">Algum problema conhecido?<u></u><u></u></span></p>
<p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span style="color: rgb(48, 48, 48); ">Me indicaria outra aplicação?<u></u><u></u></span></p></div><div><span style="color: rgb(48, 48, 48); "><br>
</span></div></div></blockquote></div><div><br></div>Rafale, usamos ele para um callcenter que atende 20.000 ligações dia. O equipamento é DELL em rede com switch gigabit e processadores XEON, etc (R210), ou seja, servidores parrudos, no total de 6 servidores R210.<div>
<br></div><div>Bem, o primeiro problema foi que o FOP não serviu pra monitorar as atividades de 60 posições de atendimento. Então, com base no dialerd (script php que faz a interface a interface do callcenter do elastix funcionar) modificamos para criar um novo painel onde é exibido as posições, tempo de ligação e número de origem da chamada e quando passa de 3 minutos tem que exibir um alarme na posição que passou do tempo, alem de uma fila em tempo real das ligações entrantes e diversos relatórios, por exemplo, sobre a qualidade do atendimento pela manhã (ligações recebidas, descartadas, com menos de 3 minutos, acima de 3 minutos, % de perda e % de perda do turno). Como em um callcenter, você não pode permitir que atendente simplesmente saia bloqueando via blacklist tudo quanto é número, fizemos uma opção que quando o atendende bloqueia um número, vai para a tela do operador do turno que decide efetuar o bloqueio ou não. Outra interface importante foi a de saber as ligações que um determinado atendente fez e qual foi o tempo efetivo dele logado e quantos minutos ele passou em linha com o usuário.</div>
<div><br></div><div>O pior problema do Elastix Callcenter Edition é que o banco de dados não tem os índices da base configurados corretamentes, então, quando o banco aumentar, você vai ter problema de carga na base, aí é preciso melhorar os indices do banco, pois as pesquisas são a cada segundo e como a gravação é o tempo todo, não existe cache do banco. </div>
<div><br></div><div>Nesse ponto, se prepare para ver o banco ficar em média com 50% do processamento. O que fizemos foi separar o banco de dados em outra máquina e deixar o Asterisk em um servidor e o banco em outra máquina.</div>
<div><br></div><div>É preciso ter muito cuidado com o banco de dados, pois se perder a energia e corromper o MySQL. O Asterisk vai tentar &quot;reparar&quot; o banco de dados a quente e teu callcenter vai ficar offline até que o Asterisk consiga corrigir a base. No nosso caso, temos uma base branca de backup, que é ativada nesse caso enquanto é corrigida a base primária. O problema é que quando o banco atingie seus 300Gb de dados (1 ano), aí leva o dia todo pra arrumar o banco.</div>
<div><br></div><div>Quanto as gravações de áudio, os arquivos ficam todos no /var/asterisk/spool/monitor, isso é um problema, quando você ultrapassa os 100.000 arquivos, então, você precisa modificar o código pra gravar dentro de uma árvore de diretório. Recomendo que toda noite, você mova os arquivos do Asterisk para outro servidor, tendo cuidado pra ele não continuar movendo a partir das 8hs da manhã.<br>
<br></div><div>Cuidado com o script dialerd, ele costuma travar quando tem muita ligação, e quando ele trava, você perde todas as informações do callcenter, ou seja, o callcenter funciona, mas não atualiza a base de dados. Nesse caso, temos um script cron que monitora ele, se parar de funcionar tem que dá restart no dialerd.</div>
<div><br></div><div>Ou seja, a trabalheira que dá pra usar o módulo callcenter do elastix foi muito grande, acabamos desenvolvendo toda uma nova plataforma em C++ pra dá conta de nossos callcenters. Foi aí que resolvemos todos os problemas, inclusive fazendo um desenho otimizado do banco de dados, ao invés de fazer consulta no asterisk a cada 1 segundos, trabalhamos usando a interface AMI para receber os eventos numa thread e destribuir os eventos para as interfaces interessadas, a gravação dos áudiso e backup já é em árvore de diretório e a copia, pesquisa, download de áudio é automatica.</div>
<div><br></div><div>Boa sorte.</div><div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div lang="PT-BR" link="blue" vlink="purple"><div><p class="MsoNormal">
<font class="Apple-style-span" color="#303030"><br></font></p></div></div></blockquote></div></div>