Elastix Call Center Protocol
Ejemplos de uso del protocolo ECCP
(ELASTIX CALL CENTER PROTOCOL)
Elaborado por: Departamento de Desarrollo Elastix Versión: 1.0 alpha
VERSIONAMIENTO
Versión 1 Versión de Elastix 2.0.4-beta2 Fecha 13-Abr-2011 Editado por Ing. Eduardo Cueva Aprobado Por Ing. Bruno Macias Detalles Documentación Inicial
Uso del protocolo de Callcenter ECCP
El protocolo deCallcenter fue desarrollado para que aplicaciones “cliente” puedan comunicarse con el servidor de CallCenter a través de un puerto TCP para de este modo realizar peticiones, así como escuchar eventos asincrónicos a través de dicho puerto. El presente documento describe ejemplos de implementación del protocolo ECCP usando lenguaje PHP. El propósito de los ejemplos es meramente ilustrativo y no hansido pensado como aplicaciones optimizadas para producción. Los ejemplos usados se encuentran disponibles a través de Internet en la ruta: http://elx.ec/eccpexample El archivo comprimido contiene los siguientes programas en PHP: agentlogin.php hangup.php hold.php unhold.php libs/ECCP.class.php Para descomprimirlo solo ejecute: “tar -xvjf eccp-test-scripts.tar.bz2” El archivoECCP.class.php es la librería base que contiene los métodos que permitirán establecer conexión con el servidor mientras que los demás archivos son ejemplos que usan dicha librería.
PREPARACIÓN PARA LAS PRUEBAS Antes de comenzar se debe verificar que la versión del módulo de call center de Elastix sea superior o igual a 2.0.0-14 (verificar rpm -q elastix-callcenter). Esto es necesario debido a queversiones menores no implementan el protocolo ECCP. Si no se tiene dicha versión lo que se puede hacer es actualizar a la última ejecutando “yum -y update elastix-callcenter”. Una vez realizado lo anterior es necesario agregar un registro a la base de datos de callcenter que será necesario que exista para realizar dichas pruebas. Dicho registro se hará en la tabla “eccp_authorized_clients” y es necesarioporque contendrá las credenciales con la cual se autorizará la conexión. Los comandos a ejecutar son los siguientes asumiendo que el usuario y clave de acceso son “agentconsole” aunque puede cambiar si se desea: [user@example ~]# mysql -uroot -pCLAVEMYSQL call_center
mysql> insert into eccp_authorized_clients(username,md5_password) values("agentconsole",md5("agentconsole")); mysql>exit Luego de haber realizado lo anterior se puede proseguir con las pruebas: COMENZANDO LAS PRUEBAS Para tener una idea más clara de cómo deben ser estructurados los mensajes XML del protocolo ECCP se recomienda revisar la especificación del mismo, la cual se encuentra en su servidor, en la siguiente ruta: /opt/elastix/dialer/Protocolo ECCP.txt Para las pruebas podemos usar los scriptsmencionados anteriormente ya sea en el mismo servidor u otro que se encuentre en la misma red del servidor principal o externa. Antes de comenzar necesitamos crear el agente que utilizaremos para las pruebas del protocolo. El agente de ejemplo usará la extensión “412” con la clave “1234”. Debemos crear previamente dicha extensión desde la interfaz de Elastix. agentlogin.php Analizamos su contenido el cuales el siguiente:
En la línea 3 se requiere la librería “ECCP.class.php” la cual es la clase con las funciones que permitirán comunicarse con el callcenter. De la línea 5 a la 10 se tiene los datos básicos como: $host => nombre de host a conectarse $user y $pass => usuario y clave de conexión, los cuales fueron insertados en la base de datos al inicio $agent => número delagente. Formato Agent/____ $passAgent => Contraseña del agente $logAgent => número de extensión donde se va a conectar el agente. De la línea 13 a 18: lo mínimo necesario para conectar al agente. De la línea 21 a 31: en el caso de que sea exitosa la conexión. Línea 33: acción de desconexión. De la línea 34 a la 37: se maneja el caso de que hubiera un error.
Probando desde una consola:
Caso...
Regístrate para leer el documento completo.