SIVO
IVR designer — conceptos

Conceptos

IVR designer — conceptos

Cómo diseñar flujos de llamada en SIVO con el editor visual drag & drop. Tipos de nodo, simulador y versionado.

Actualizado:
ivrconceptos

El IVR designer es el editor visual donde decides qué pasa con cada llamada entrante. Lo abren tus admins, no tu equipo de desarrollo.

Conceptos básicos

Un flujo IVR es un grafo dirigido de nodos conectados. Cada llamada empieza en el nodo start y avanza según las acciones que define cada nodo.

Cada flujo tiene:

  • Un nombre (ej. Atención clientes).
  • Una versión activa (puedes mantener varias versiones y hacer rollback).
  • Un conjunto de nodos y sus conexiones.
  • Variables de sesión accesibles desde cualquier nodo.

Los 12 tipos de nodo

TipoQué hace
playReproduce un audio o texto-a-voz.
menuLee opciones y captura DTMF (1, 2, 3…).
queueEnvía la llamada a una cola ACD.
transferTransfiere a una extensión o número externo.
conditionBifurca según hora, festivo, horario o valor de variable.
hangupCuelga (con audio opcional de despedida).
inputCaptura dígitos en una variable (ej. DNI, número de pedido).
voicemailDesvía a buzón con notificación por email.
webhookHace POST a tu API para enriquecer la llamada con datos externos.
switchRouting N-way según valor de variable.
functionEjecuta una función JS personalizada (sandbox seguro).
ai_agentConversación con un agente IA conversacional.

Variables de sesión

Algunos nodos generan variables que otros pueden consumir:

  • input guarda los dígitos pulsados.
  • webhook guarda la respuesta JSON.
  • ai_agent guarda los datos extraídos por la IA.
  • caller_id_number, caller_id_name, did, now son variables predefinidas siempre disponibles.

Para usar una variable en un audio o un condicional: {{caller_id_number}} o {{verified_email}}.

Simulador interactivo

Antes de publicar, prueba el flujo con el simulador:

  1. Abre el flujo → botón “Simular”.
  2. SIVO renderiza una llamada ficticia con el dial-pad activo.
  3. Pulsas dígitos en el simulador como si fueras un caller.
  4. El editor resalta en tiempo real qué nodo se está ejecutando.
  5. Puedes forzar la hora con el clock override para probar condicionales de horario.

Versionado y rollback

Cada vez que pulsas Guardar, se crea una versión nueva. La versión activa es la que recibe las llamadas en producción.

Para hacer rollback:

  1. Abre el flujo → menú Versiones.
  2. Selecciona una versión anterior → “Activar esta versión”.
  3. La nueva versión activa sustituye a la actual en menos de 1 segundo, sin reiniciar nada.

Validación pre-publicación

Antes de activar una nueva versión, SIVO valida:

  • Nodos huérfanos: ningún flujo de control llega a ellos. Te avisa.
  • Referencias muertas: nodo que apunta a una cola eliminada o un audio borrado.
  • Loops infinitos: ciclos sin salida posible. Te avisa.
  • Webhooks: hace un HEAD preflight a las URLs configuradas para verificar reachability.

Si hay errores, no te deja activar. Si hay warnings, te deja pero los muestra.

Asignación a DIDs

Un flujo IVR cobra sentido cuando lo asignas a un DID (un número entrante):

  1. Settings → DIDs → tu número → IVR.
  2. Selecciona el flujo (puedes elegir versión específica o “siempre la activa”).
  3. Opcional: define un flujo alternativo para fuera de horario vinculado a un schedule.

Un mismo flujo puede ser usado por varios DIDs simultáneamente — útil si tienes números regionales que comparten lógica común.

Buenas prácticas

  1. Mantén el menú corto — 3-4 opciones máximo. Caller’s memory.
  2. Usa condition.schedule para enrutar fuera de horario antes de leer el menú.
  3. Nombra los nodos descriptivamente (menu_principal, cola_soporte) — facilita el debug.
  4. Loga variables clave con un webhook al final del flujo si necesitas analítica avanzada.
  5. Prueba en el simulador todos los caminos antes de publicar.
  6. Versiona antes de cambios grandes — el rollback es tu red de seguridad.