[AsteriskBrasil] AGI

Italo Rossi italorossib em gmail.com
Sexta Fevereiro 5 12:39:51 BRST 2010


Bruno,

On Feb 5, 2010, at 11:34 AM, brunoantognolli em email.com wrote:

> HAHAHAHA... é verdade....
>
> Para essa validacaozinha babaca, o Java é como utilizar um tanque de  
> guerra para matar uma formiga! hahahahaha
>
> Mas temos alguns processos bem ignorantes aqui, que eu acho q o Java  
> ajuda mto!!!
>
> Mas com toda certeza, poderia ser em Java, Pascal, .Net, Phython,  
> Aramaico, Hieróglifos, etc, hahahahah

Corrigindo: Python. :-)

>
>
>
> -----Original Message-----
> From: Eder Souza <eder.souza em bsd.com.br>
> To: asteriskbrasil em listas.asteriskbrasil.org
> Sent: Fri, Feb 5, 2010 12:23 pm
> Subject: Re: [AsteriskBrasil] AGI
>
> Bruno coitado do Wendell vai envenenar o kra com Java huahua !!
>
> Conselho, Java para que?? se vc faz isso em outra linguegem com 3  
> vezes menos trabalho nao entendo huahua !!
>
> Em 5 de fevereiro de 2010 12:12, <brunoantognolli em email.com> escreveu:
> Então blz, vamos lá...
>
> Para fazer a integração asterisk-java é necessário 2 coisas... um  
> dialplan para chamar o agi e o próprio agi, abaixo coloquei um  
> dialplan chamando uma classe java, veja:
>
> Dialplan:
> exten => 001,n,NoOp(*** Chamando AGI ***)
> exten => 001,n,Agi(agi://localhost/validacao.agi? 
> op=validarEntradaSemAsterisco)
> exten => 001,n,NoOp(*** Valor Valido? ${VALORVALIDO} ***)
>
>
> Java:
>
> import org.apache.log4j.Logger;
> import org.asteriskjava.fastagi.AgiChannel;
> import org.asteriskjava.fastagi.AgiException;
> import org.asteriskjava.fastagi.AgiRequest;
> import org.asteriskjava.fastagi.BaseAgiScript;
>
> /**
>  *
>  * @author bruno.antognolli
>  */
>
> public class Validacao extends BaseAgiScript {
>     private AgiChannel channel = null;
>     private org.apache.log4j.Logger log =  
> Logger.getLogger(Validacao.class);
>     public void service(AgiRequest request, AgiChannel channel)  
> throws AgiException {
>
>         log.info("Executando Service da Classe: " +  
> this.getClass().getSimpleName());
>         // Define o objeto channel como atributo de classe
>         this.channel = channel;
>
>         // Recupera a operação solicitada no canal
>         String op = request.getParameter("op");
>
>         // Executa validarEntradaSemAsterisco
>         if (op.equalsIgnoreCase("validarEntradaSemAsterisco")) {
>             validarEntradaSemAsterisco();
>         }
>
>         if (op == null || op.equalsIgnoreCase("")) {
>             throw new AgiException("O método informado não existe!");
>          }
>
>
> public void validarEntradaSemAsterisco() throws AgiException {
>         //Logando a Operação de Validação
>         log.info("Executando Método: validarEntrada");
>
>         //Recuperando valores do Asterisk
>         String valorVariavel =  channel.getVariable("ARG1");
>
>         //Verifica se é número.
>         if (isNumber(valorVariavel) == true) { //Aqui eh uma funcao  
> que eu criei para validar numeros, nem coloquei no email a funcao
>             //Se o usuário digitou valores diferentes de 0, valor  
> válido
>             //ex: 0000001*
>
>             if ( ((Long.parseLong(valorVariavel) + 0) != 0 )){
>                 log.info("[Validacao.java] -> Valor valido: '" +  
> valorVariavel + "'");
>
>                 //Devolvendo valores para o ASTERISK
>                 channel.setVariable("VALORVALIDO", "1");
>
>             } else {//if ( ((Integer.parseInt(valorFormatado) + 0) ! 
> = 0 ))
>                 // Registrando erro no arquivo de log
>                 log.error("[Validacao.java] -> Erro de validacao,  
> valor invalido: '" + valorVariavel + "'");
>                 channel.setVariable("VALORVALIDO", "0");
>             }
>
>         } else { //if (isNumber(valorFormatado) == true)
>             // Registrando erro no arquivo de log
>             log.error("[Validacao.java] -> Erro de validacao, valor  
> invalido: '" + valorVariavel + "'");
>             channel.setVariable("VALORVALIDO", "0");
>
>         }
> }
>
>
> OBS: O que é importante saber sobre a classe java:
> Para pegar um valor vindo do Asterisk e usar no Java vc utiliza:
> channel.getVariable("ARG1");
>
> Onde: ARG1 é a variável vinda do Asterisk
>
>
> Para pegar um valor "processado" pelo Java e devolver ao Asterisk vc  
> utiliza:
> channel.setVariable("VALORVALIDO", "0");
>
> Onde: VALORVALIDO é o nome da variável que o Asterisk guardará o  
> resultado e 0 é o valor da variável VALORVALIDO.
>
> OBS 2:
> Para a integração Asterisk-Java funcionar, é necessário vc pegar  
> o .jar do seu projeto Java (dentro da pasta dist) e jogar dentro da  
> pasta:
>
> /var/lib/asterisk/agi-bin
>
> Após fazer isso é necessário startar o java no asterisk, dar um nome  
> para o seu agi no arquivo fastagi-mapping.properties e pronto!
>
> Espero ter ajudado!!! :)
>
> Att,
> Bruno
>
>
>
>
> -----Original Message-----
> From: Wendell Silva <wendbandeira em gmail.com>
> To: asteriskbrasil em listas.asteriskbrasil.org
> Sent: Fri, Feb 5, 2010 11:28 am
> Subject: Re: [AsteriskBrasil] AGI
>
> Pode ser sim.
>
> Em 5 de fevereiro de 2010 11:05, <brunoantognolli em email.com> escreveu:
> Wendel, pode ser um AGI em java?
>
> Se for, posso ajudar sim! ;)
>
> Att.
> Bruno
>
>
>
> -----Original Message-----
> From: Wendell Silva <wendbandeira em gmail.com>
> To: asteriskbrasil em listas.asteriskbrasil.org
> Sent: Fri, Feb 5, 2010 10:21 am
> Subject: [AsteriskBrasil] AGI
>
> Alguém tem um exemplo claro de AGI pra mim passar, com dialplan e  
> scripit.agi. ?
>
>
> Att.
>
> Wendell Silva Bandeira
> _______________________________________________
> KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.
> - Hardware com alta disponibilidade de recursos e qualidade KHOMP
> - Suporte técnico local qualificado e gratuito
> Conheça a linha completa de produtos KHOMP em www.khomp.com.br
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
> _______________________________________________
> KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.
> - Hardware com alta disponibilidade de recursos e qualidade KHOMP
> - Suporte técnico local qualificado e gratuito
> Conheça a linha completa de produtos KHOMP em www.khomp.com.br
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
> _______________________________________________
> KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.
> - Hardware com alta disponibilidade de recursos e qualidade KHOMP
> - Suporte técnico local qualificado e gratuito
> Conheça a linha completa de produtos KHOMP em www.khomp.com.br
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
> _______________________________________________
> KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.
> - Hardware com alta disponibilidade de recursos e qualidade KHOMP
> - Suporte técnico local qualificado e gratuito
> Conheça a linha completa de produtos KHOMP em www.khomp.com.br
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
> _______________________________________________
> KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.
> - Hardware com alta disponibilidade de recursos e qualidade KHOMP
> - Suporte técnico local qualificado e gratuito
> Conheça a linha completa de produtos KHOMP em www.khomp.com.br
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
> _______________________________________________
> KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.
> - Hardware com alta disponibilidade de recursos e qualidade KHOMP
> - Suporte técnico local qualificado e gratuito
> Conheça a linha completa de produtos KHOMP em www.khomp.com.br
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil



--
Ítalo Rossi
italorossib em gmail.com
LPIC1
http://italo.digi.com.br/blog







Mais detalhes sobre a lista de discussão AsteriskBrasil