Hoy, después de mucho batallar, logré hacer que jalara mi configuración deseada para poder tener a Asterisk comunicándose con MySQL a través de AGI, lo cual me da mucho poder y me permite hacer lo que quiera con los datos.
Para los que no se han metido con AGI, la idea simple es que se trata de un intérprete de lenguajes que te permite pasar scripts en PHP, Perl, Python (y otros) a Asterisk para que ejecute comandos complicados que no podrían hacerse desde una simple extensión. La gran ventaja, es que si ya programas en alguno de estos lenguajes, implementarlo es cosa de niños, y teniendo la oportunidad de hacerlo en lo que más eres bueno, las características de lo que puedes hacer son prácticamente ilimitadas.
La instalación que llevé a cabo fue con la intención de montar un IVR inteligente, que permite mediante una llamada introducir el número de usuario y contraseña, y con ello, regrese un dato (comunmente, un saldo). El IVR aún no está terminado, pero aquí les pongo los pasos de lo que tuve que hacer para llegar hasta donde me encuentro.
Los supuestos del sistema actual son los siguientes:
- Instalación de Linux basada en Red Hat (o Fedora Core)
- Zaptel y Asterisk 1.0.2 instalados.
Para lograr lo que necesitamos, necesitamos los siguientes paquetes. Favor de reemplazar la palabra VERSION por la versión actual correspondiente (y todas ellas se pueden buscar desde Google):
- MySQL-server-VERSION.i386.rpm
- MySQL-client-VERSION.i386.rpm
- MySQL-devel-VERSION.i386.rpm
- MySQL-shared-compat-VERSION.i386.rpm
- php-VERSION.tar.gz
- php-mysql-VERSION.rpm
Al momento de escribir esto, la VERSION para MySQL era la 4.1.7-0, y para los archivos de PHP era la 4.3.3-6. Es importante que TODOS los archivos de MySQL tengan la misma versión, y lo mismo aplica con los de PHP entre ellos.
Ahora bien, lo primero a instalar PHP. Dirígete al directorio donde se encuentre el .tar.gz y dale:
No te desesperes, que estos tardan algo de tiempo en compilarse.
Ya de ahi lo demás viene fácil. Teclea los siguientes comandos:
Se supone que ahora ya tienes instalados todos los paquetes.
[....]
Continúo este post en otra ocasión. Por el momento, a los interesados vayan comenzando con esto.
Pendientes por redactar:
- Donde definir los AGIs
- AGI de ejemplo usando PHP
- Pasar parámetros desde Asterisk hacia el AGI
- Query básico a MySQL
- Regresando comandos a Asterisk usando AGI
Para los que no se han metido con AGI, la idea simple es que se trata de un intérprete de lenguajes que te permite pasar scripts en PHP, Perl, Python (y otros) a Asterisk para que ejecute comandos complicados que no podrían hacerse desde una simple extensión. La gran ventaja, es que si ya programas en alguno de estos lenguajes, implementarlo es cosa de niños, y teniendo la oportunidad de hacerlo en lo que más eres bueno, las características de lo que puedes hacer son prácticamente ilimitadas.
La instalación que llevé a cabo fue con la intención de montar un IVR inteligente, que permite mediante una llamada introducir el número de usuario y contraseña, y con ello, regrese un dato (comunmente, un saldo). El IVR aún no está terminado, pero aquí les pongo los pasos de lo que tuve que hacer para llegar hasta donde me encuentro.
Los supuestos del sistema actual son los siguientes:
- Instalación de Linux basada en Red Hat (o Fedora Core)
- Zaptel y Asterisk 1.0.2 instalados.
Para lograr lo que necesitamos, necesitamos los siguientes paquetes. Favor de reemplazar la palabra VERSION por la versión actual correspondiente (y todas ellas se pueden buscar desde Google):
- MySQL-server-VERSION.i386.rpm
- MySQL-client-VERSION.i386.rpm
- MySQL-devel-VERSION.i386.rpm
- MySQL-shared-compat-VERSION.i386.rpm
- php-VERSION.tar.gz
- php-mysql-VERSION.rpm
Al momento de escribir esto, la VERSION para MySQL era la 4.1.7-0, y para los archivos de PHP era la 4.3.3-6. Es importante que TODOS los archivos de MySQL tengan la misma versión, y lo mismo aplica con los de PHP entre ellos.
Ahora bien, lo primero a instalar PHP. Dirígete al directorio donde se encuentre el .tar.gz y dale:
Código:
tar -zxf php-VERSION.tar.gz cd php-VERSION ./configure --enable=cli make make install
Ya de ahi lo demás viene fácil. Teclea los siguientes comandos:
Código:
rpm -ivh MySQL-server-VERSION.i386.rpm rpm -ivh MySQL-client-VERSION.i386.rpm rpm -ivh MySQL-devel-VERSION.i386.rpm rpm -ivh MySQL-shared-compat-VERSION.i386.rpm rpm -ivh php-mysql-VERSION.rpm
[....]
Continúo este post en otra ocasión. Por el momento, a los interesados vayan comenzando con esto.
Pendientes por redactar:
- Donde definir los AGIs
- AGI de ejemplo usando PHP
- Pasar parámetros desde Asterisk hacia el AGI
- Query básico a MySQL
- Regresando comandos a Asterisk usando AGI
Comentario