[AsteriskBrasil] script para realizar ligação no asterisk (AGI)
Ricardo Guedes de Carvalho
rguedesdecarvalho em gmail.com
Terça Março 31 11:53:55 BRT 2009
agora coloquei, mas ta dando erro de bad interpreter
2009/3/31 Alan Bernardes <simpleasb em hotmail.com>
> Voce declarou o Interpretador????
>
> #!usr/bin/php5
>
>
>
> Alan Bernardes
> simpleasb em hotmail.com
> 55 11 9666-1475
>
>
>
>
> ------------------------------
> Date: Tue, 31 Mar 2009 11:26:04 -0300
> From: rguedesdecarvalho em gmail.com
> To: asteriskbrasil em listas.asteriskbrasil.org
> Subject: Re: [AsteriskBrasil] script para realizar ligação no asterisk
> (AGI)
>
>
> Oi Kim, sou eu de novo, mudei tudo pra pasta /var/lib/asterisk/agi-bin/
>
> lá estão os arquivos phpagi.php e o meu criado discador.php com as
> seguintes linhas de comando:
>
> /* discador usando o AGI - PHPAGI */
> <?php
> require ' /var/lib/asterisk/agi-bin/phpagi.php';
> $agi = new AGI();
> /* executar ligacao para o numero 8000 */
> $agi->exec("Dial".$SIP/8000);
> /* executar o hungup */
> $agi->hangup();
>
> ?>
>
> Porém ainda ao executar ./discador.php os erros abaixo persistem:
>
> ./discador.php: line 1: /bin: is a directory
> ./discador.php: line 2: ?php: No such file or directory
> ./discador.php: line 4: require: command not found
> ./discador.php: line 6: syntax error near unexpected token `('
> ./discador.php: line 6: `$agi = new AGI(); '
>
> Salva eeeuuu...rs
>
>
> 2009/3/30 Kim Delevati <kim.delevati em gmail.com>
>
> Qualquer coisa só perguntar, desenvolvi várias coisas em AGI aqui.
>
>
> 2009/3/30 Ricardo Guedes de Carvalho <rguedesdecarvalho em gmail.com>
>
> ops, não li tbm esse primeiro, hehe
> vou testar aqui e tentar rodar, valew pela dica, mto obrigado Kim.
> ;)
>
> 2009/3/30 Kim Delevati <kim.delevati em gmail.com>
>
> Ops, respondi no outro, sem ter visto esse antes.
>
> Então, o que você falou é bem simples, depois que você pega o jeito do AGI.
>
> http://www.voip-info.org/wiki/view/Asterisk+AGI+php
>
> Aqui basicamente tem tudo, algumas dicas minhas:
>
> Recomendo baixar a classe phpagi:
>
> http://phpagi.sourceforge.net/
>
> Ela torna bem mais fáceis as funções.
>
> Primeiras linhas do Script tem que ser isso:
>
> #!/usr/bin/php5
> <?
> require 'phpagi.php';
> ob_implicit_flush(false);
> set_time_limit(3000);
> $stdin = fopen( 'php://stdin', 'r' );
> $stdout = fopen('php://stdout', 'w');
>
>
>
> Na primeira, tem que modificar, coloque o caminho, e a versão do seu php. A
> segunda é aquilo, lembre-se que não pode ter NENHUM espaço em branco entre a
> primeira e a segunda, só a nova linha mesmo.
> A terceira linha é opcional, caso você queira usar a classe phpagi. Caso
> queira, delete todas as linhas seguintes. Caso não queira, delete só ela.
>
> Após isso, se escolheu usar o phpagi, você declara:
>
> $agi = new AGI();
>
> E faz o dial:
>
> $agi->exec("Dial ".$numero."|op1|op2|opetc");
>
> O número seria que nem um normal de Asterisk, ex
> SIP/02135674670 em servidorvoip, SIP/2001, ZAP/1/05534500940, etc... nas ops
> você pode colocar opções normais do dial, tipo timeoout, etc... qualquer
> coisa.
>
> Depois o hangup:
>
> $agi->hangup();
>
>
>
> Caso seja sem o phpagi, fica mais ou menos assim:
>
>
> fwrite($stdout," exec dial ".$numero."|op1|op2|\n");
> fflush($stdout);
>
>
> Mesma coisa o negócio do numero e ops, mas lembre-se que mandando um
> comando desse jeito, no final da string é OBRIGATÓRIO o uso do \n, se não o
> asterisk se perde.
> Depois o hangup:
>
> fwrite($stdout," exec Hangup \n");
> fflush($stdout);
>
> Só tenho uma ressalva, esse Hangup aí as vezes não funciona direito...
> recomendo usar um exit mesmo.
>
> E pra finalizar, acaba o script:
>
> ?>
>
>
> Era isso, taí um script simples de dial, aí só coloca o numero e liga. Caso
> queira que o numero seja passado pelo Asterisk quando chama o AGI, tem que
> mandar como opção (pode passar várias), ex:
>
> exten->100,1,AGI(dial.php|numero qualquer|timeout)
>
> depois você pega dentro do script, com argv[1], argv[2], etc:
>
> $numero=$argv[1];
> $timeout=$argv[2];
>
> Dá pra pegar muitas variáveis que o Asterisk passa também, e tem um comando
> de pegar variáveis de diaplan. Digamos que as opções são quase ilimitadas.
>
>
> Ficou meio extenso, mas taí.
>
>
>
> 2009/3/30 Ricardo Guedes de Carvalho <rguedesdecarvalho em gmail.com>
>
> Boa tarde pessoal,
>
> Estou com algumas dificuldades ao tentar fazer um script em php o qual tem
> a finalidade de ao executá-lo, uma ligação é feita para um
> determinado número configurado em meu sistema asterisk. Na verdade não
> tenho muito idéia de como seria feito isso, sei que o script interage com
> o sistema através do AGI. Não tenho muita familiaridade com desenvolvimento
> de programa, script,etc. Não sei qual seria a linguagem apropriada para esse
> tipo de script, qual seria mais fácil,etc.
>
> Fico grato com a atenção de quem puder me ajudar.
> No aguardo e ancioso.
>
> Att,
>
> --
> Ricardo Guedes
> Suporte Telefonia Voz sobre IP
> IGNISCOM (19) 3119-2445
>
> _______________________________________________
> Openmoko Freerunner, primeiro telefone open source, disponível no Brasil
> rodando o Android da Google.
> http://www.neodroid.com
>
> 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
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
>
>
> _______________________________________________
> Openmoko Freerunner, primeiro telefone open source, disponível no Brasil
> rodando o Android da Google.
> http://www.neodroid.com
>
> 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
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
>
>
>
> --
> Ricardo Guedes
> Suporte Telefonia Voz sobre IP
> IGNISCOM (19) 3119-2445
>
> _______________________________________________
> Openmoko Freerunner, primeiro telefone open source, disponível no Brasil
> rodando o Android da Google.
> http://www.neodroid.com
>
> 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
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
>
>
> _______________________________________________
> Openmoko Freerunner, primeiro telefone open source, disponível no Brasil
> rodando o Android da Google.
> http://www.neodroid.com
>
> 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
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
>
>
>
> --
> Ricardo Guedes
> Suporte Telefonia Voz sobre IP
> IGNISCOM (19) 3119-2445
>
> ------------------------------
> Notícias direto do New York Times, gols do Lance, videocassetadas e muitos
> outros vídeos no MSN Videos! Confira já! <http://video.msn.com/?mkt=pt-br>
>
> _______________________________________________
> Openmoko Freerunner, primeiro telefone open source, disponível no Brasil
> rodando o Android da Google.
> http://www.neodroid.com
>
> 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
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
--
Ricardo Guedes
Suporte Telefonia Voz sobre IP
IGNISCOM (19) 3119-2445
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20090331/80e64e26/attachment.htm
Mais detalhes sobre a lista de discussão AsteriskBrasil