16.03.2021
Zadarma API MULTI IVR

La respuesta de voz interactiva es una de las herramientas clave para recibir llamadas entrantes. El IVR no solo presenta a los clientes información relevante sino remite las llamadas a los agentes o departamentos apropiados. Hoy en día la respuesta de voz interactiva de un solo nivel no siempre es suficiente, os contamos cómo crear un IVR multinivel con tus propias manos gracias a la ayuda de API Zadarma.

¿Para qué se necesita una respuesta de voz interactiva multinivel?

El IVR (saludo de voz) procesa señales DTMF — el pulsado de teclas del teléfono. Como consecuencia, gracias a varios niveles de menú podemos no solo "dirigir" al cliente sino también ofrecerle más opciones - insertar datos, escuchar la información, volver atrás.

El menú multinivel permite ayudará a resolver tareas si en tu negocio hay:

  • Muchos departamentos. Por ejemplo, trabajas con personas físicas y jurídicas y en el primer paso simplemente necesitas separar a unos clientes de otros para después dirigirlos a los departamentos adecuados.

  • Varias filiales o tiendas. Además, es muy sencillo agrupar todas las filiales en la misma centralita virtual. Con la ayuda del primer menú se selecciona la ciudad, con la ayuda del segundo - la oficina determinada.

  • Varios idiomas. Si se trata de una gran empresa que cuenta con clientes de distintos países es lógico separar a los clientes por idiomas en la primera etapa del menú multinivel. For English press 1, para Español pulsa dos. Sin embargo nosotros recomendamos separar a los clientes de idiomas por número del llamante o número al que ha llamado el cliente.

¿Cómo crear un menú multinivel?

Un IVR sencillo se puede crear en el apartado correspondiente de la centralita virtual de Zadarma. Incluso no solo un menú sino varios, por ejemplo, para llamadas entrantes a diferentes números. Cargas el archivo (o inserta texto para que sea reproducido por el robot) con el saludo y agregas escenarios para la gestión de las llamadas entrantes.

El menú multinivel de la centralita se puede gestionar con la ayuda de la biblioteca PHP. Aquí se describen los requisitos obligatorios para su funcionamiento:

  1. La centralita debe estar creada y activada
  2. En el apartado "Mi centralita - Llamadas entrantes y menú de voz" deben estar cargados los archivos de audio para la respuesta de voz interactiva y creados los escenarios de las llamadas entrantes
  3. En el apartado "Mi centralita - Extensiones" deben agregarse las extensiones de la centralita necesarias, configurado el software/equipo para las llamadas o activado el desvío de llamadas en cada una de éstas
  4. Conectar un número virtual para las llamadas entrantes, número al que llamarán los clientes
  5. En el apartado Configuración - Integraciones y API se debe crear Key y Secret para trabajar con API

Las características detalladas y las reglas de creación de Menús se describen en Github. Aquí mostraremos un ejemplo sencillo y presentaremos el código para crear el menú.

El menú de voz multinivel se crea a partir de Webhooks. Para ello debes tener experiencia con PHP y Git así como contar con un servidor propio o externo para alojar el código con una URL fija a la que se enviarán webhooks. Aquí describimos los requisitos importantes para la configuración del servidor:


PHP >= 7.2.0
cURL
TLS v1.2
php-mbstring

Ejemplo de creación de menú de voz

Para recibir las notificaciones de las llamadas se requiere crear un enlace abierto al público que recibirá las solicitudes POST con la información desde el sistema Zadarma. Este enlace se debe indicar en el área personal en "Notificaciones de las llamadas en la centralita".

Descarga la biblioteca en Github y coloca mediante el enlace el siguiente código php:


<?php

use MultiIvr\MultiIvr;

if (isset($_GET['zd_echo'])) {
    exit($_GET['zd_echo']);
}

require_once 'vendor/autoload.php';
$key = 'Your api key';
$secret = 'Your api secret';
$ivrMenuConfig = 'your config';
MultiIvr::default()->handle($key, $secret, $ivrMenuConfig);

$key y $secret - claves de acceso en la interfaz API, se deben obtener en el área personal. $ivrMenuConfig - archivo de texto con la configuración del menú de voz que trataremos a continuación.

Para la comodidad de los ajustes del menú de voz para cada cliente toda su configuración de IVR se encuentra en un archivo separado, Para modificar el menú no es necesario cambiar el código sino simplemente modificar sus ajustes.

Y ahora nuestro ejemplo. Creamos una respuesta de voz interactiva de doble nivel:

Nivel uno: Ha llamado a "Vavilón". Para empresas pulse 1, para particulares pulse 2.

Botón 1.Para hablar con Contabilidad pulse 1, para hablar con Administración pulse 2. Para otros, por favor, espere a ser atendido por un operador.

Botón 2. Si ya es cliente pulse 1. Si todavía no es cliente pulse 2 o espere a ser atendido por un operador.

Ejemplo de una respuesta de voz interactiva multinivel:


start default action=goto action-target=main
menu name=main playfile=43d8a740ec032766
menu name=main button=1 action=goto action-target=main.1
menu name=main button=2 action=goto action-target=main.2
menu name=main default action=redirect action-target=100

menu name=main.1 playfile=a279dd3a1da19e57
menu name=main.1 button=1 action=redirect action-target=102
menu name=main.1 button=2 action=redirect action-target=1-5
menu name=main.1 default action=redirect action-target=100

menu name=main.2 playfile=a6842305f1996e34
menu name=main.2 button=1 action=redirect action-target=105
menu name=main.2 button=2 action=redirect action-target=6-7
menu name=main.2 default action=redirect action-target=100

Action - acción. Disponibles 2 valores action:

  • redirect - transferencia al escenario o extensión de la centralita;
  • goto - salto al menú de voz por su nombre.

En nuestro ejemplo:

  • extensión 102 - empleado de Contabilidad para clientes de empresa
  • extensión 100 - operario de primera línea
  • escenarios de menú 1-5 - departamento de empresas
  • extensión 105 - empleado del departamento de empresas
  • escenarios de menú 6-7 - departamento de particulares
  • playfile=a6842305f1996e34 - el archivo cargado en el área personal de saludo de voz, para obtener la ID del archivo pasa a los ajustes de saludo de voz (botón "Seleccionar o insertar texto para otro archivo")"

Así mismo puedes activar un horario laboral. El ejemplo lo encontrarás en Github.