[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