[AsteriskBrasil] Sistema em Teste
Eduardo Assis - Pro Redes
eassis em linuxmail.org
Quarta Outubro 1 19:38:33 BRT 2008
Estou desenvolvendo um sistema para uma empresa de Teleconsulta de Telefones(Projeto Piloto).
Como funciona a empresa.
Alguem liga cai em um P.A. o atendente solicita o nome da empresa.
Procura-se então em um sistema feito em Delphi por nome, atividade, achado lhe informa os dados necessarios:
Nome, Endereço, Telefone.
No sistema de teste ficou com Asterisk ficou:
O Atendente atende a ligação, pergunta o que a pessoa quer saber (Empresa/Ramo de Atividade)
procura no sistema em Delphi, achado a empresa, pergunta se é somente isso.
No cadastro da empresa que ela procurou no Sistema, tem um link que quando clicado
ele abre uma pagina do asterisk, passando o codigo do cliente e o ramal em que o atendente está logado.
O Asterisk recebe então o código da empresa e o ramal, faz uma procura no banco de dados pelo código
transfere a ligação da atendente para uma URA onde toca o audio que foi localizado no Banco Mysql.
Com isso, depois de transferido para a URA, deixa a Atendente livre para receber novas ligações.
Seguem os arquivos:
Lembrando que não tenho experiencia com AMI, Perl, Python e tive que me virar para fazer o projeto funcionar.
Claro se alguem puder alterar e nos enviar, seria de muito bom grado.
Pagina que é carregada:
<?
exec('sudo bash arquivo.sh' . " $ramal ");
$arquivo = 'teste.txt';
$fp = fopen($arquivo,'r');
$canal = fread($fp, filesize($arquivo));
$canal = trim($canal);
$timeout = 10;
$asterisk_ip = "127.0.0.1";
$socket = fsockopen($asterisk_ip,"5038", $errno, $errstr, $timeout);
fputs($socket, "Action: Login\r\n");
fputs($socket, "UserName: user\r\n");
fputs($socket, "Secret: senha\r\n\r\n");
fputs($socket, "Action: Redirect\r\n" );
fputs($socket, "Channel: $canal\r\n" );
fputs($socket, "Exten: $exten\r\n" );
fputs($socket, "Timeout: 15000\r\n" );
fputs($socket, "Context: contexto\r\n" );
fputs($socket, "Priority: 1\r\n" );
fputs($socket, "Action: Logoff\r\n\r\n");
$wrets=fgets($socket,128);
?>
arquivo.sh:
#!/bin/bash
asterisk -rx "core show channels" | grep "Dial(SIP/$1|" | awk '{print $1}' > teste.txt
extension.conf:
[contexto]
exten => _X.,1,Ringing
exten => _X.,n,Wait(2)
exten => _X.,n,Answer
exten => _X.,n,NoOp(Digitou: ${EXTEN})
exten => _X.,n,MySQL(Connect connid localhost user senha basedados)
exten => _X.,n,MySQL(Query resultid ${connid} select\ audio\ from\ audio\ where\ id=\'${EXTEN}\' )
exten => _X.,n,MySQL(Fetch fetchid ${resultid} audio)
exten => _X.,n,MySQL(Clear ${resultid})
exten => _X.,n,MySQL(Disconnect ${connid})
exten => _X.,n,PlayBack(${audio})
exten => _X.,n,Hangup()
Bem, espero que ajude alguem ou que possam contribuir.
PS: fico o dia todo no knal #asterisk-br e tive ajudas de:
caio1982
DagMoller
Victor_Yuri
ccesario
annonymous
Porks
wilianweb
Bem o pessoalzinho gente boa.
Abraços.
Eduardo Assis
Pro Redes
www.proredes.com.br
(19) 3406-7524
=
Tropical Honeymoon Hideaway Fiji Islands
Romantic & luxurious Maravu Resort on peaceful & exotic Fiji Island.
http://a8-asy.a8ww.net/a8-ads/adftrclick?redirectid=601ee5df3ec03c4096df8b0d56fbaa22
--
Powered by Outblaze
Mais detalhes sobre a lista de discussão AsteriskBrasil