freepbx

Elastix Call center y grabación de audio

Al momento de usar Elastix para callcenter, es necesario adaptar ciertos módulos para poder tener funcionalidades que en Elastix vienen orientadas a una central telefónica, mas que para un equipo de callcenter.
En este instructivo voy a enfocarme en la grabación de llamadas y reportes.

Algunas de las deficiencias en cuanto a grabaciones y reportes las listo aquí:

Script de integración Elastix - eGroupWare

He creado un script en PHP para integrar eGroupWare con Elastix (archivo adjunto al post).

Para instalarlo debe subir el script al DocumetRoot de Elastix (/var/www/html)
Luego debe ingresar como administrador a eGroupWare y e ir a la seccion de "Administración"
Allí debe ubicar las opciones de la libreta telefónica (TIP: "Configuración del sitio")
Luego ubicar la sección que dice "Integración con telefonía", y en el campo "URL a la que enlazar los números de teléfono" poner lo siguiente:

https://ip.de.elastix/originate.php?sExt=%t&sNumber=%1&CallerID=%1&sSign={084DC422-2FFB-4a6a-977E-DB9C0A1C8B89}

debe reemplazar "ip.de.elastix" por la IP o dominio que tiene su equipo Elastix.
Luego vamos a la libreta de direcciones y editamos los contactos de las cuentas de usuario de eGroupWare (eGroupWare crea una entrada automáticamente para cada usuario) y como numero "favorito" (usar el chekbox) vamos a poner la dirección de la extensión que corresponda con cada usuario; por ejemplo si un usuario tiene la extensión 2000, pondríamos SIP/2000 (suponiendo que la extensión es SIP, "IAX2" si es IAX).

Integrando IVRs en una red DUNDi con Elastix (usando FreePBX)

Cuando tenemos varios equipos y lineas de la PSTN que ingresan a uno de ellos, es muy posible que queramos que el IVR que recibe esas lineas pueda llamar directamente a las extensiones de la red DUNDi; aqui describo como lo he logrado:
Lo primero que hay que hacer es localizar el contexto de IVR que hemos creado desde freePBX, este ultimo siempre los crea asi:
[ivr-N]
donde N es un numero incremental que asigna automaticamente.
Tenemos que revisar en el archivo /etc/asterisk/extensions_additional.conf y buscar el contexto adecuado.
Suponiendo que el contexto del IVR es [ivr-2] tendriamos que definir la siguiente configuracion en el archivo /etc/asterisk/extensions_additional.conf:
[dundi-priv-lookup-ivr]
exten => _XXXX,1,Macro(dundi-priv,${EXTEN})
exten => _XXXX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?100)
exten => _XXXX,n,Goto(ivr-2,i,1)
exten => _XXXX,n,Hangup()
exten => _XXXX,100,Playtones(congestion)
exten => _XXXX,101,Congestion(10)
exten => _XXXX,102,Hangup()
[ivr-2-custom]
include => ext-local

DUNDi: Plan de marcado

iax_custom.conf
Aquí debemos definir la configuración de la troncal; como dundi va a hacer todo el trabajo de enviar la cadena exacta de como contactarlos solo creamos un usuario que recibe las llamadas autenticadas de la nube DUNDi:
En SRV01 y en SRV02
[dundi]
type=user
dbsecret=dundi/secret
context=ext-local
; Podemos restringir ciertos codecs para mejorar la calidad de voz, o dar prioridad al ancho de banda (con gsm o g729)
; disallow=all
; allow=ulaw

Archivo dundi.conf (peers)

Adicionalmente debemos definir los PEERS que consultaran y serán consultados (con la opción symmetric), esto lo hacemos asi:
Para SRV01:
; Identificamos al servidor 2 (SRV02) por su entityid
[00:21:5A:49:7E:9E]
;permitir y realizar conexiones
model=symmetric
; IP ser servidor SRV02
host=192.168.255.202
inkey=SERVERS-DUNDI
outkey=SERVERS-DUNDI
; Incluimos el contexto antes definido en la sección mappings
include=priv
permit=priv
qualify=yes
order=primary

; Identificamos al servidor 3 (SRV03) por su entityid
[00:22:64:08:F4:FE]
;permitir y realizar conexiones
model=symmetric
; IP ser servidor SRV03
host=192.168.255.203
inkey=SERVERS-DUNDI
outkey=SERVERS-DUNDI
; Incluimos el contexto antes definido en la sección mappings
include=priv
permit=priv
qualify=yes
order=primary

Páginas

Suscribirse a RSS - freepbx