Ejemplo Flujo v5



Introducción



A modo de ejemplo se va a indicar paso a paso como crear un flujo básico en el cual al cliente se le dará 4 opciones posibles para digitar, cada una realizara distintas acciones.

  1. La llamada sera redireccionada a la campaña de Ventas sera atendido por cualquier operador disponible.

  2. En el audio de bienvenida se le da la opción al cliente si ya forma parte de nuestros datos que indique cual es su documento de identidad para direccionar la llamada a la campaña correspondiente.

  3. Se marca un número específico, en este caso, a nuestro soporte técnico en ese caso, un celular.

  4. Como ultima opción el cliente puede marcar 4 para directamente hablar con nuestra operadora.



Pasos para un IVR



  1. StartActivity: Todo workflow comienza así, la misma va a tener el contexto en el cual va a estar ubicado y el patrón que va a matchear para ejecutar el flujo l(en este caso , llamando al número 10800).

  2. Answer: Para atender la llamada.

  3. SetLanguage: El lenguaje SetLenguage (pt, es, en), esto va a indicar desde que idioma va a tomar los audios a reproducir.

  4. Set  AUDIOHOOK_INHERIT(MixMonitor)   value = yes : Unifica el audio cuando una llamada es transferida para escucharla posteriormente en una sola grabación.

  5. Set__Ani   value = ${CALLERID(num) : Hace posible el seguimiento de llamadas por medio de logs.

  6. Guid :Genera un identificador único para cada llamada.

  7. SetCDRGuid : Para poder dejar en el CDR ese identificador único.

  8. SetCDRType type= record :Marca la llamada como que se va a grabar.

  9. SetRecordName ${guid}  :Setea el nombre de la grabación.

  10. Read : Menú para el cliente.


 

 

 





 

La Actividad Read tiene como función pedir un dato, guardar el mismo en una variable con un nombre y reproducir un audio, el mismo puede ser un audio de bienvenida comunicando las distintas opciones a tomar o simplemente solicitar un dato necesario (ya sea un pin, CI, teléfono, etc), se puede limitar cuantos intentos puede tener el cliente, cuantos segundos como máximo va a estar esperando que se digite la información solicitada y cuantos dígitos puede tener la misma.

Luego de obtener el dato solicitado vamos a utilizar un condicional donde vamos a evaluar que condición se cumple.

Tendremos que construir la estructura para que ingrese a donde nosotros queremos, para realizar la misma utilizamos la Actividad Gotoif, la misma se comporta en base a una condición y tiene dos posibles caminos el Verdadero si se cumple (verde) primera flecha que sacamos de la actividad y Falso (rojo) segunda flecha que se saca de la actividad.

 

 En nuestro caso la variable que devuelve el valor le dimos el nombre de opcion, y como la misma puede adoptar 4 posibles valores, creamos 4 Gotoif, como primera opción tenemos el número uno, con la condición: $[${opcion}=1].

 

 

11. Gotoif $[${opcion}=1] : SI es verdadero va a una campaña sino va a evaluar las otras posibles opciones de la variable opcion.



Supongamos que nuestro cliente ingreso el número uno , por ende la llamada se dirige al sector de ventas según nuestro audio. Para direccionar la llamada a la cola de la campaña Ventas se utiliza la actividad Queue, la misma se indica con el nombre que figura la campaña en el portal de uContact.





12. SetCDRCampaign  : Marca en el CDR la llamada perteneciente a esa campaña (en este caso Ventas← ).





13. Queue : Envía la llamada al ACD de Ventas← en nuestro ejemplo.

 

 

Ahora pasemos a la opcion número 2 de nuestro IVR, en este caso el suponemos que el cliente ya estaría registrado en nuestra base de datos, ingresamos otro Read con un audio solicitando el número de documento, delimitando con un máximo de 8 dígitos y dando 3 intentos como máximo, guardando en una variable llamada cedula.

 

14. Gotoif $[${opcion}=2]

15. Read : Menú obtener documento de identidad.

 

 

A continuación pasamos a la consulta en la base de datos, con la actividad Func_ODBC la misma cuenta con  3 campos; el primero es el origen de datos (que esta en uContact) donde vamos a realizar la consulta, la segunda el nombre de la variable en la cual se guarda el resultado de la consulta (puede ser el nombre de una variable simple o un HASH, si es un HASH (cliente) entonces se guardan todas las columnas que salen de la consulta y se acceden ${HASH(cliente,nombrecolumna)} si la consulta retorna un resultado único se puede guardar en una variable simple luego pudiendo accederla ejemplo ${doc} ) y la tercera la consulta que vamos a ejecutar, en este caso se consulta si  el documento ingresada se encuentra efectivamente en nuestra base de datos ya registrada.

16. Func_ODBC : Consulta a la base de datos.

 

 

Al  tener la respuesta de nuestra base de datos vamos a pasar a validarla, nuevamente con la App Gotoif. Preguntamos si la variable es distinta a 0 , ya que realizamos la consulta con un count(*) si efectivamente existe ese número va a retornar 1 o más.

 

17. GotoIf $[${doc}!=0]

 

 

Nuevamente usamos los caminos condicionales, en el caso que la condición no se cumpla y el número de documento ingresado retorne 0 porque no existe en nuestra base, conectamos nuevamente nuestro Gotoif con el Read solicitando el número de documento nuevamente hasta que pueda cumplir la condición. Cuando la misma se cumpla se trasladara la llamada a la cola de la campaña respectiva para atender al cliente.

18. SetCDRCampaign : Marca en el CDR la llamada perteneciente a esa campaña en este caso (Clientes← ).

 

19. Queue  :Va a campaña para los clientes registrados.

 

Cuando marque 3 se comunicará directamente con nuestro soporte técnico, en este caso es un número celular con la App Dial se marca al número de soporte.

 

20. Dial:  Marcamos ya sea un trunk SIP o una línea digital el número destino a donde conectar al cliente.

Como última opción, tenemos a nuestra operadora, donde se dirige automáticamente por la App GOTO hacia un número interno de nuestra organización.

 

 

21. Goto : Envía al contexto internos a un número de interno en particular en la prioridad 1.

 

Cabe destacar, observando la siguiente imagen la Aplicación HANGUP terminando cada una de nuestras opciones, es algo necesario de realizar cada vez que nuestra llamada sea transferida o redireccionada a un interno, número o cola fuera de nuestro flujo.

 

Por último Activamos el flujo con el botón de activación en la esquina superior derecha.