[AsteriskBrasil] RES: Asterisk consultar um banco de dados eretornar valor para o asterisk

Caio Begotti caio em ueberalles.net
Quarta Julho 18 13:45:11 BRT 2007


On 18/07/2007, at 11:51, Moacir O. de Souza [..] wrote:
> De uma olhada em http://www.voip-info.org/wiki/view/Asterisk+cmd+MYSQL
>
> Com este comando você pode conectar, recuperar valores, atualizar  
> informações. Você pode interagir normalmente com o banco de dados,  
> sem a necessidade de escrever um programa (caso use AGI).

Porém fica preso a ter queries longas e sensíveis DENTRO do seu  
dialplan, Moacir. Não acho uma boa idéia, além disso ficar feio de  
administrar o dialplan assim. Sugiro usar o func_odbc do Asterisk,  
veja o .conf.sample que vem com o fonte e adapte como precisar.

Basicamente o func_odbc te permite qualquer tipo de conexão a banco  
de dados que suporte ODBC e faz isso de forma transparente pro  
dialplan e isolado do seu extensions.conf. Inclusive não entendo como  
mais pessoas não o utilizam :-)

Você configura uma "função", uma query ou o que quer que seja, e o  
Asterisk mapeia ela pra usar no seu dialplan como se fosse uma Macro 
(), aceitando parâmetros inclusive. É muito mais limpo e claro, além  
do que não tem perda de CPU por chamar um processo externo, executar  
o AGI, abrir o interpretador da linguagem usada no AGI etc...

Se tá usando um banco de dados, usar func_odbc é o caminho mais  
natural. Usar os comandos pro MySQL no dialplan além de ficar uma  
mistureba você vai ter que instalar o add-on pra isso, pois não é  
padrão no fonte do Asterisk (problemas de licenciamento, AFAIK).

AGI NO MORE

Falou,

--
Caio Begotti (caio1982)
http://caio.ueberalles.net




Mais detalhes sobre a lista de discussão AsteriskBrasil