Valeu pelas dicas, irei alterar. Agora sobre o AMI, sei que seria melhor e mais profissional, mas realmente não entendo.
Abraços. > ----- Original Message ----- > From: "Gabriel Ortiz Lour" <[EMAIL PROTECTED]> > To: [email protected] > Subject: Re: [AsteriskBrasil] Sistema em Teste > Date: Wed, 1 Oct 2008 21:38:15 -0300 > > > Existem algumas maneiras de melhorar o seu script PHP > > a primeira seira utilizar o segundo parametro da função exec, que já te traz > o retorno do comando executado, assim vc nao precisa direcionar para um > arquivo e depois ler ele. O PHP ficaria ssim: > > ---------------------- > $retorno = ""; > exec('sudo bash arquivo.sh' . " $ramal ", $retorno); > $canal = trim($retorno[0]); > . > . > . > ------------------ > > e do shell script você removeria o " > teste.txt". > > Voce pode ainda escrever o comando no próprio PHP para remover a necessidade > do shell script a parte. > > > Outra forma seria requisitar os canais via AMI, sem precisar utilizar o > exec. > > > > Gabriel > > > > > 2008/10/1 Eduardo Assis - Pro Redes <[EMAIL PROTECTED]> > > > 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 > > _______________________________________________ > > Compre uma camiseta da AsteriskBrasil.org! > > http://www.voipmania.com.br > > > > Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na > > rede Freenode.net: #asterisk-br > > _______________________________________________ > > Lista de discussões AsteriskBrasil.org > > [email protected] > > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil > > > > _______________________________________________ > Compre uma camiseta da AsteriskBrasil.org! > http://www.voipmania.com.br > > Acesse o canal IRC de discussão sobre Asterisk em Português > Brasileiro na rede Freenode.net: #asterisk-br > _______________________________________________ > Lista de discussões AsteriskBrasil.org > [email protected] > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil > = Fresh Look Prophecy Biblical prophecies and histories with a positive view. http://a8-asy.a8ww.net/a8-ads/adftrclick?redirectid=52c6eeaca1d88e02dc129f565b354b21 -- Powered by Outblaze _______________________________________________ Compre uma camiseta da AsteriskBrasil.org! http://www.voipmania.com.br Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br _______________________________________________ Lista de discussões AsteriskBrasil.org [email protected] http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil

