[AsteriskBrasil] RES: RES: AGI

Andre Emerich aemerich em gmail.com
Quinta Novembro 19 09:20:53 BRST 2009


Prezados,

Segui um exemplo que encontrei no endereço abaixo..
http://www.packtpub.com/article/asterisk-gateway-interface-scripting-with-php

Foi muito útil e esclareceu bem minhas dúvidas..
Com algumas alteraçoes, cheguei no resultado que queria..

Obrigado à todos que de alguma forma ajudaram..

André

2009/11/18 andre <andre em sertelinfo.com.br>

>  Andre me add no msn   <andresousar em hotmail.com>, darei um exemplo rápido
> e fácil de entender ok
>
>
>
> Abraços
>
>
>
>
>
> *De:* asteriskbrasil-bounces em listas.asteriskbrasil.org [mailto:
> asteriskbrasil-bounces em listas.asteriskbrasil.org] *Em nome de *Andre
> Emerich
> *Enviada em:* quarta-feira, 18 de novembro de 2009 07:43
>
> *Para:* asteriskbrasil em listas.asteriskbrasil.org
> *Assunto:* Re: [AsteriskBrasil] RES: AGI
>
>
>
> Itamar,
> Se eu tivesse achado no Google algo que tivesse entendido, não teria
> postado aqui pedindo ajuda..
>
> André,
> Segue..
>
> [URA_BD]
> exten => s,1,Answer
> exten => s,n,Playback(custom/BD/BD_INFO_boatarde)
> exten => s,n,Playback(custom/BD/BD_INFO_bv)
> exten => s,n,Read(CODE,,,,,5)
> exten => s,n,Noop( ## ${CODE} ## )
> exten => s,n,System(echo "SELECT codigo FROM clientes WHERE codigo =
> \'${CODE}\' LIMIT 1" > /var/lib/asterisk/agi-bin/BDINFO/select.sql)
> exten => s,n,System(mysql bd_info -u root -ppassword <
> /var/lib/asterisk/agi-bin/BDINFO/select.sql >
> /var/lib/asterisk/agi-bin/BDINFO/resultado.txt)
> exten => s,n,Noop( ## ${STATUS} ##)
> exten => s,n,GotoIf($[${STATUS}!=""]?20:60)
> exten => s,20,Playback(custom/BD/BD_INFO_senha)
> exten => s,n,Read(SENHA,,,,,5)
> exten => s,n,Noop( ## ${SENHA} ## )
> exten => s,n,System(echo "SELECT saldo FROM clientes WHERE codigo =
> \'${CODE}\' AND senha = \'${SENHA}\' LIMIT 1" >
> /var/lib/asterisk/agi-bin/BDINFO/select_senha.sql)
> exten => s,n,System(mysql bd_info -u root -ppassword <
> /var/lib/asterisk/agi-bin/BDINFO/select_senha.sql >
> /var/lib/asterisk/agi-bin/BDINFO/resultado_senha.txt)
> exten => s,n,System(grep -n .
> /var/lib/asterisk/agi-bin/BDINFO/resultado_senha.txt | grep ^2: | cut -f2
> -d":"  > /var/lib/asterisk/agi-bin/BDINFO/status_senha.txt)
> exten =>
> s,n,ReadFile(STATUS_SENHA=/var/lib/asterisk/agi-bin/BDINFO/status_senha.txt,1)
> exten => s,n,Noop( ## ${STATUS_SENHA} ##)
> exten => s,n,GotoIf($[${STATUS_SENHA}!=""]?80:60)
> exten => s,n,Hangup()
> exten => s,60,Playback(vm-goodbye)
> exten => s,n,Hangup()
> exten => s,80,Playback(custom/BD/BD_INFO_saldo)
> exten => s,n,Saydigits(${STATUS_SENHA})
> exten => s,n,Set(TIMEOUT=10)
> exten => s,83,Background(custom/BD/BD_INFO_opcoes)
> exten => s,n,WaitExten(5)
> exten => 1,1,Goto(URA_BD_CONSULTA,s,1)
> exten => 4,1,Noop(DISCA PARA ATENDIMENTO)
> exten => t,1,Goto(URA_BD,s,83)
> exten => i,1,Goto(URA_BD,s,83)
> exten => s,n,Hangup()
>
> [URA_BD_CONSULTA]
> exten => s,1,Playback(custom/BD/BD_INFO_CPF_CNPJ)
> exten => s,n,Read(CPF_CNPJ,,,,,5)
> exten => s,n,Noop( ## ${CPF_CNPJ} ## )
> exten => s,n,System(echo "SELECT cpf FROM base_consulta WHERE cpf =
> \'${CPF_CNPJ}\' LIMIT 1" >
> /var/lib/asterisk/agi-bin/BDINFO/select_cpfcnpj.sql)
> exten => s,n,System(mysql bd_info -u root -ppassword <
> /var/lib/asterisk/agi-bin/BDINFO/select_cpfcnpj.sql >
> /var/lib/asterisk/agi-bin/BDINFO/resultado_cpfcnpj.txt)
> exten => s,n,System(grep -n .
> /var/lib/asterisk/agi-bin/BDINFO/resultado_cpfcnpj.txt | grep ^2: | cut -f2
> -d":" | cut -f1 -d"\ " >
> /var/lib/asterisk/agi-bin/BDINFO/status_cpfcnpj.txt)
> exten =>
> s,n,ReadFile(STATUS_CPF_CNPJ=/var/lib/asterisk/agi-bin/BDINFO/status_cpfcnpj.txt)
> exten => s,n,Noop( ## STATUS CPF ${STATUS_CPF_CNPJ} ## )
> ;exten => s,n,Agi(BDINFO/consulta_cpf.php|${CPF_CNPJ})
> ;exten => s,n,Noop(${stdout})
> exten => s,n,GotoIf($[${STATUS_CPF_CNPJ}!=""]?20:60)
> exten => s,20,Playback(beep)
> exten => s,n,Hangup()
> exten => s,60,Playback(vm-goodbye)
> exten => s,n,Hangup()
>
> A parte do AGI está comentado, pois como não veio o resultado esperado, não
> estou usando..
>
> Valeu..
>
> 2009/11/17 andre <andre em sertelinfo.com.br>
>
> André
>
> Eu utilizo um script em agi que faz isso que deseja...
>
> Me passe os dados que crio e coloco aqui explicando pra você..
>
>
>
>
>
>
>
> *De:* asteriskbrasil-bounces em listas.asteriskbrasil.org [mailto:
> asteriskbrasil-bounces em listas.asteriskbrasil.org] *Em nome de *Andre
> Emerich
> *Enviada em:* terça-feira, 17 de novembro de 2009 20:54
> *Para:* asteriskbrasil em listas.asteriskbrasil.org
> *Assunto:* [AsteriskBrasil] AGI
>
>
>
> Pessoal,
>
> Preciso de uma ajuda com AGI.
> Tenho um Select que faço num MySql.
> O resultado, tenho que ler em uma variavel..
> Estava fazendo isto com o System (para dar um echo num txt com a instrução
> SQL, para executar o SELECT, para dar um GREP e ler somente a segunda linha
> do arquivo) e uso o ReadFile para ler o resultado.
> Porém se sempre voltasse a mesma quantidade de digitos, eu poderia colocar
> a quantidade de caracteres como opção no ReadFile.
> Porém, como é variavel, eu preciso arrumar alguma outra forma..
>
> Comecei a usar o AGI com PHP.
> Já consigo fazer o SELECT, mas não consigo passar o resultado para o
> Asterisk.
> Li algo sobre STDIN e STDOUT, mas não tive progresso..
>
> Como eu poderia fazer?
> Alguém tem alguma idéia?
>
> --
> André Emerich
> MSN - aemerich em gmail.com
> (51) 8122-6423
>
>
> _______________________________________________
>         http://www.voipmania.com.br
> Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>         Promoção por tempo limitado!
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
>
>
>
> --
> André Emerich
> MSN - aemerich em gmail.com
> (51) 8122-6423
>
> _______________________________________________
>         http://www.voipmania.com.br
> Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.
>         Promoção por tempo limitado!
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>



-- 
André Emerich
MSN - aemerich em gmail.com
(51) 8122-6423
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20091119/152ce323/attachment-0001.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil