[AsteriskBrasil] RES: Asterisk - mysql query from dialplan

Alexandre Abreu abreu em redt.com.br
Sexta Novembro 30 17:07:47 BRST 2007


É possível - mas você não precisa migrar seu sistema de maneira forçada.
Aplicativos como app_mysql, app_pgsql existem para oferecer esse suporte
diretamente via dialplan. No entanto, são antigos e não tenho noticias de
quem vendo sendo atualizados. A última palavra em termos de integração
relacional com banco de dados eu pessoalmente acho que se chama FUNC_ODBC e
funciona obviamente via unixODBC (portanto você instala os conectores que
necessitar). A camada de abstração criada pelo func_ODBC é incrivelmente
vantajosa na minha opinião, pois mantém o dialplan livre de sintaxes de SQL
o que torna bem fácil de manter.

 

Ex.:

 

Usando app_mysql, seu dialplan ficaria:

 

exten => s,n,Mysql(Connect connid ${dbhostname} ${dbuser} ${dbpass}
${dbname})

exten => s,n,Mysql(Query resultid ${connid} select\ nome\ from\ clientes\
where\ id_ramal=${CallerID(num)})

exten => s,n,Mysql(Fetch fetchid ${resultid} nome)

exten => s,n,Mysql(Clear ${resultid})

exten => s,n,Mysql(Disconnect ${connid})

 

Usando FUNC_ODBC, seu dialplan ficaria:

exten => s,n,Set(NOME_BANCO=${REDT_BUSCA_NOME(${CALLERID(num)})})

 

Camada de abstração em FUNC_ODBC.CONF

[BUSCA_NOME]

prefix=REDT

dsn=asterisk

read=SELECT nome FROM clientes WHERE id_ramal='${SQL_ESC(${ARG1})}'

 

O link abaixo é do livro Asterisk The Future of Telephony (Second Edition) –
cobre a versão 1.4 do Asterisk.

 

http://downloads.oreilly.com/books/9780596510480.pdf

 

Se optar por ODBC, siga a orientação do capítulo 12 que foi escrito pelo
Leif Madsen e é muito esclarecedora.

Espero que esse e-mail te ajude a fazer a escolha correta para seu cenário.

 

--

Alexandre Abreu

RedT Telecom

http://www.redt.com.br

 

  _____  

De: asteriskbrasil-bounces em listas.asteriskbrasil.org
[mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de Alfredo
Tomio Junior
Enviada em: sexta-feira, 30 de novembro de 2007 15:05
Para: asteriskbrasil em listas.asteriskbrasil.org
Assunto: [AsteriskBrasil] Asterisk - mysql query from dialplan

 

Pessoal,

 

É possivel fazer com que a partir de uma ligação para nosso numero

especifico, o cliente possa digitar seu ID e senha e a partir disso

ouvir um menu onde ele terá opçoes de verificacao de saldo disponivel,

consultas diversas, etc. Como quando ligamos para o banco para checar

o saldo.

 

Nosso sistema roda em postgresql, mas percebi que via dialplan podemos

ter nativo suporte para consulta no mysql. Isso nao será problema posso
exportar

e obter no mysql mesmo.

 

Alguem ja implementou algo semelhante?

 

 


Atenciosamente,

 

Alfredo Tomio Junior
 <http://www.networkx> www.network <http://www.networksexperts.com>
sexperts.com

 


 

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20071130/bf686cff/attachment.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil