Configurando un IVR en Elastix 2.5

Hola como están, esta vez les describiré el proceso que llevé a cabo para instalarme un ivr en el PBX.

Lo primero que hice fue convertir el audio de bienvenida que me mandaron en mp3 a archivo wav monoaural, de 16 bits y tasa de muestreo a 8000 HZ.

Pueden hacerlo con Sox o  incluso hay un recurso muy bueno en linea: http://audio.online-convert.com/es/convertir-a-wav

convert_to_wav_asterisk

Ya que tenemos el audio convertido a wav nos conectamos a nuestro pbx y colocamos el archivo en la ruta:  /var/lib/asterisk/sounds/custom

Para nuestro caso hemos puesto un archivo wav llamado bienvenida.

ivr5

Le damos permisos a asterisk de utilizar este archivo con chmod asterisk:asterisk /var/lib/asterisk/sounds/custom.

Si nos movemos a ese directorio y le pasamos el comando ls -lh debe mostrarse mas o menos así.

ivr4

En elastix vamos al apartado de grabaciones y creamos una grabación llamada “bienvenida”

ivr6

Luego de crearla creamos el anuncio llamado “bienvenida”

Elegimos la grabación que previamente creamos, en repetir ponemos deshabilitar y el destino tras la reproduccion elegimos un ring group (ustedes pueden elegir alguna extension si lo prefieren).

ivr7

grabamos cambios y ahora nos vamos al apartado ivr y creamos uno, elegimos la grabación que creamos “bienvenida” habilitamos la marcacion directa ya que en la grabación mencionamos que si conoce el numero de extensión lo digite, en tiempo de espera ponemos 2 segundos y grabamos cambios.

ivr8

 

Hasta ahora ya está creado nuestro ivr, ahora hay que programar para que cuando entren las llamadas las conteste el ivr, para ello nos vamos a rutas entrantes.

ivr9

Como ya tengo la ruta entrante principal creada, elijo que la conteste el ivr en la opción Set Destination.

ivr10

 

Hasta ahora ya lo tenemos corriendo, el ivr que creamos desde la interface de elastix, creó el código  en el archivo extensions_additional.conf.

¿si el usuario digita algun numero mal? asterisk no sabe como proceder y corta la llamada si el usuario falla al digitar la extension, el ivr le debe decir que el numero esta mal y que lo intente nuevamente. Tambien quiero que si se equivocan 3 veces que la llamada termine.

Dicho esto abrimos el archivo extensions_override_freepbx.conf con  nano /etc/asterisk/extensions_override_freepbx.conf

y modificamos nuestro código del ivr

[mi-ivr]

include => mi-ivr-custom
include => from-did-direct-ivr
include => ext-queues
exten => s,1,Set(LOOPCOUNT=0)
exten => s,2,Set(MSG=custom/bienvenida)
exten => s,n,Set(__DIR-CONTEXT=)
exten => s,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT})
exten => s,n,Set(_IVR_CONTEXT=${CONTEXT})
exten => s,n,GotoIf($[“${CDR(disposition)}” = “ANSWERED”]?begin)
exten => s,n,Answer
exten => s,n,Wait(1)
exten => s,n(begin),Set(TIMEOUT(digit)=2)
exten => s,n,Set(TIMEOUT(response)=2)
exten => s,n,Set(__IVR_RETVM=)
exten => s,n,ExecIf($[“${MSG}” != “”]?Background(${MSG}))
exten => s,n,WaitExten(,)
exten => s,n,Goto(ext-group,600,1)
exten => hang,1,Playback(vm-goodbye)
exten => hang,n,Hangup
exten => i,1,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
exten => i,n,GotoIf($[${LOOPCOUNT} < 2],Noop())
exten => i,n,GotoIf($[${LOOPCOUNT} > 2]?hang,1)
exten => i,n,Playback(pbx-invalid)
exten => i,n,Goto(s,2)
exten => t,1,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
exten => t,n,GotoIf($[${LOOPCOUNT} < 2],Noop())
exten => t,n,GotoIf($[${LOOPCOUNT} > 2]?hang,1)
exten => t,n,Playback(pbx-invalid)
exten => t,n,Goto(s,2)

Grabamos cambios y recargamos la configuracion… (dialplan reload, sip reload)

Hasta la proxima…

 

 

Acerca de Gerardo Jacinto Astudillo

Interesado en el mundo de las tecnologias de informacion y telecomunicaciones. Vivo en constante aprendizaje. Mis pasatiempos: La música y convivencia familiar. Mi familia es lo mas importante!
Esta entrada fue publicada en Linux. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s