[AsteriskBrasil] Front end gratuito - Callcenter

Mike Tesliuk mike em tesliuk.com
Quarta Agosto 7 20:09:00 BRT 2013


tem uma versão light que fiz a muito tempo, nao é uma coisa profissional 
mas é simples de entender e você pode adpatar para sua ideia, segue o 
código abaixo, apenas altere na chamada da função queueStatus para o 
usuario e senha do seu manager e deve funcionar, ele monta uma pagina 
html linux like (fonte preta e tela branca :)  )



<?php

print '<head><meta http-equiv="refresh" content="6"></head>';

// Converter timestamp para data: 	$data = date("d / m / Y - G : i" ,$valor);

queueStatus('localhost','usuario','senha','5038');


function queueStatus($server,$username,$secret,$port){
        	$socket = fsockopen($server,$port, $errno, $errstr, 1);
        	fputs($socket, "Action: Login\r\n");
        	fputs($socket, "UserName: $username\r\n");
        	fputs($socket, "Secret: $secret\r\n");
        	fputs($socket, "Event: Off\r\n\r\n");
        	fputs($socket, "Action: QueueStatus\r\n\r\n");
        	fputs($socket, "Action: Logoff\r\n\r\n");
        	while (!feof($socket)) {
		$conta = 0;
		$parar = 0;
		while (!feof($socket)) {
                      	$wrets = fgets($socket, 8192);
		     	list($opcao,$valor) = explode(":", $wrets);
			if($opcao == "Response"){
			}elseif($opcao == "Message"){
			}elseif(preg_match("/^Asterisk\ Call\ Manager/", $opcao)){
			}else{
				if($opcao == "Event"){
					$conta2 = 0;
					$conta++;
					#print "Var: teste[$conta][$conta2]<br />";
					#print "Line: $wrets<br />";
					$teste[$conta][$conta2] = $wrets;
				}else{
					$conta2++;
					#print "Var: teste[$conta][$conta2]<br />";
					#print "Line: $wrets<br />";
					$teste[$conta][$conta2] = $wrets;

				}
			}
			
			
		}

       	}
	$qtdarray = sizeof($teste);
	print "<table border=\"1\" style=\"font-size: 10px;\">";
	for($i = 0 ; $i < $qtdarray ; $i++){
		$usafila = 0;
		foreach($teste[$i] as $row){
			list($opcao,$valor) = explode(":", $row);
			//print "Valor: $valor<br />";
			if(preg_match("/QueueParams/", $valor)){
				print "<tr align=\"center\"><td colspan=\"10\">";
				$usafila = 1;
			}else{
				if(preg_match("/Queue/", $opcao)){
					$fila = $valor;
					if($usafila == "1"){
						print "Fila : $fila </td></tr><tr>";
					 	$usafila = "0";
						$fechalinha = 1;
					}
				}
				if(preg_match("/Max/", $opcao)){
					print "<td>Limite Chamadas: $valor</td>";

				}
				if(preg_match("/Calls$/", $opcao)){
					print "<td>Chamadas em fila: $valor</td>";
				}
				if(preg_match("/Holdtime$/", $opcao)){
					print "<td>Tempod e espera (segs): $valor</td>";
				}
				if(preg_match("/Completed$/", $opcao)){
					print "<td>Chamadas Completadas: $valor</td>";
				}
				if(preg_match("/Abandoned$/", $opcao)){
					print "<td>Chamadas Abandonadas: $valor</td></tr>";
				}

				next;
			}

			if(preg_match("/QueueMember$/",$valor)){
				print "<tr>";
			}else{
				if(preg_match("/Name$/", $opcao)){
					print "<td>Usuario: $valor</td>";
				}
				if(preg_match("/CallsTaken$/", $opcao)){
					print "<td>Chamadas Atendidas: $valor</td>";
				}
				if(preg_match("/LastCall/", $opcao)){
				        $valor_tmp = trim($valor);
					if($valor_tmp == "0"){
						print "<td> Ultima Chamada: Sem Registro</td>";
					}else{
						$data = date("d / m / Y - G : i" ,$valor_tmp);
						print "<td>Ultima Chamada: $data</td>";
					}
				}
				if(preg_match("/Status/", $opcao)){
					if(preg_match("/3/", $valor)){
						print "<td>Status: <b><Font color=\"red\">ATENDENDO</font></b> </td>";
					}elseif(preg_match("/5/", $valor)){
						print "<td>Status: OFFLINE </td>";
					}elseif(preg_match("/1/", $valor)){
						print "<td>Status: <b><font color=\"green\">LIVRE</font></b> </td>";
					}
					print "</tr>";
				}
			}

			if(preg_match("/QueueEntry$/", $valor)){
				print "<tr>";
			}else{
				if(preg_match("/Position$/", $opcao)){
					print "<td>Posicao na fila: $valor</td>";
				}
				if(preg_match("/Channel$/", $opcao)){
					print "<td>Canal: $valor</td>";
				}
				if(preg_match("/CallerID$/", $opcao)){
					print "<td>Numero Origem: $valor</td>";
				}
				if(preg_match("/Wait$/", $opcao)){
					print "<td>Tempo em espera: $valor</td>";
					print "</tr>";
				}
			}

			


			
			
		}
	}


}

	


?>



Em 07/08/13 19:03, Mike Tesliuk escreveu:
> só pra isso eu gosto deste aqui.
>
> http://sourceforge.net/projects/astacd-activity/?source=directory
>
> basta voce configurar no script os dados para o manager e ele mostra 
> na tela pra voce os agentes logados, chamadas em espera e coisas do tipo.
>
> Nao sei como esta hoje, a versão que eu uso dele eu traduzi as 
> informações porque era tudo em espanhol, mas é um arquivo basicamente 
> entao é só voce abrir ele e procurar pelas informações.
>
> Em 07/08/13 18:53, Elieser Junior escreveu:
>> Pessoal boa noite.
>>
>> Temos um pequena equipe de atendimento com quatro técnicos de suporte 
>> em um Service Desk. Implantei no asterik o DAC (distribuição 
>> automática de atendimento). Como se trata de um pequeno Callcenter e 
>> não vai se expandir, alguém conhece algum *"front end gratuito"* que 
>> eu poderia integrar com o meu servidor asterisk 1.8?
>> Preciso apenas monitorar os "*agentes logados*" e a "*fila de 
>> atendimento"*.
>>
>> Obrigado.
>>
>> Elieser Júnior
>> (71) 9943-5072
>>
>>
>>
>> _______________________________________________
>> 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 emwww.Khomp.com.
>> _______________________________________________
>> 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 - Acessewww.aligera.com.br.
>> _______________________________________________
>> Para remover seu email desta lista, basta enviar um email em branco paraasteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>
>
>
> _______________________________________________
> 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 www.Khomp.com.
> _______________________________________________
> 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 www.aligera.com.br.
> _______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20130807/a0c9365a/attachment.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil