Asterisk IVR
Asterisk IVR
Asterisk IVR
Instalacin de PHPAGI
Instalacin de las voces en espaol para Asterisk
Implementacin del IVR utilizando MySQL y PHPAGI
1.
El Asterisk Gateway Interface (AGI) permite desarrollar aplicaciones externas
que pueden interactuar con Asterisk. Estas aplicaciones pueden estar escritas
en distintos lenguajes de programacin como por ejemplo libreras en PHP que
simplifican su escritura, haciendo modificaciones a bases de datos, consultas a
estados de variables, controlar el dIalplan, etc, todo esto haciendo la llamada
desde el archivo extensions.conf
Cmo Funciona?
La comunicacin entre Asterisk y el AGI se apoya a los files descriptors del
sistema operativo Linux que permiten una comunicacin entre el Kernel y la
aplicacin que quiere acceder a un determinado archivo/programa. En Linux.
Los tres estndares que se utilizan son:
STDIN
STDOUT
STDERR
Esto permite escribir el AGI utilizando prcticamente cualquier lenguaje de
programacin. Para el IVR que se implementara en el call center, se utilizarn
la librera PHPAGI y PHP.
Ya se tiene la librera php.agi, a continuacin se descomprime:
tar -xf phpagi-2.20.tgz
se entra en la carpeta creada:
cd phpagi-2.20
y se copian las dos libreras AGI en la carpeta agi-bin de Asterisk:
cp phpagi.php /var/lib/asterisk/agi-bin
cp phpagi-asmanager.php /var/lib/asterisk/agi-bin
se vuelven los archivos ejecutables:
chmod 755 /var/lib/asterisk/agi-bin/phpagi.php
chmod 755 /var/lib/asterisk/agi-bin
/var/lib/asterisk/agi-bin
nano ejemplo.php
#!/usr/bin/php q
Esta lnea le dice al Sistema que va a utilizar un intrprete para ejecutar un
script en lenguaje PHP, la opcin q desactiva los mensajes de error que puede
enviar HTML, es muy Importante que despus del "?" y el ">" del 'fin del PHP'
no debe haber ni siquiera un [ENTER]
<?php
require('phpagi.php');
Llamamos a las libreras de phpagi
error_reporting(E_ALL);
Activamos la bandera de enviar todo lo que se realice a consola como modo
depuracin
2.
Como se vio en el ejemplo anterior, Festival en Elastix viene instalado pero sin
ninguna voz en espaol, adems, la calidad no es muy buena, es por esto que
es necesario instalar las especificaciones de las voces. Existe un proyecto de la
Junta de Andaluca, el cual consiste de dos paquetes (para Debian) que
contienen una voz masculina y otra femenina para Festival.
Se ver como convertir los paquetes debian (.deb) a CentOS (.rpm) utilizando
el programa Alien y tambin como cambiar la configuracin de Festival para
que se puedan utilizar en Asterisk.
cd /usr/src
tar xf alien_8.78.tar.gz
cd alien
perl Makefile.PL
make
make install
Ahora con los dos paquetes Debian con las voces en espaol para festival,
estos se trasformaran a paquetes en .rpm asi:
alien rv festvox-palpc16k_1.0-1_all.deb
alien rv festvox-sflpc16k_1.0-1_all.deb
Llegados a este punto podemos instalar los dos paquetes para CentOS:
rpm ivh festvox-palpc16k-1.0-2.noarch.rpm
rpm ivh festvox-sflpc16k-1.0-2.noarch.rpm
3.
Inicialmente el usuario llama al IVR principal, el cual da la bienvenida a la
empresa y muestra cinco opciones. El usuario escoge la opcin requerida
presionando la tecla del nmero correspondiente. Si en 10 segundos despus
de dicho el mensaje el usuario no ha presionado ninguna tecla la llamada es
colgada (opcin t) y en el caso en que el usuario presione una tecla
equivocada, el IVR se repite (opcin i). Esta configuracin ser utilizada para
todos los IVRs que se utilicen en la solucin.