📊 Llamados a la API para la Vista del Supervisor

En la vista del supervisor, se realizan tres llamados a la API en momentos clave del ciclo de vida de una conversación. Estos llamados permiten mantener actualizada la interfaz, mostrando en qué estad

✅ 1. Inicio de conversación (interacción con el bot)

Cuando un usuario inicia una conversación desde cualquier canal (WhatsApp, Messenger, Instagram, etc.), se realiza un llamado a la API que registra el inicio de la conversación.

Este evento genera una entrada visible en la sección de "Conversaciones con el Bot" dentro de la vista del supervisor, indicando que el usuario está siendo atendido por el asistente automatizado.

Este flujo se declara en el inicio de conversación.

const url = `https://${env.merchant}.suricata.cloud/api/conversation-states`
const payload = {
  conversation_id: event.conversationId,
  channel: event.integration,
  current_state: 'bot',
  updated_by: event.userId,
  user_id: event.userId
}

try {
  await axios.post(url, payload, { timeout:25000 })
} catch (err) {
  console.log('[api conversations state]', { err })
}

✅ 2. Derivación a un agente (creación de ticket)

Cuando se crea un ticket y la conversación es derivada a un agente humano a través de Suricata, se ejecuta un segundo llamado a la API.

Este evento mueve la conversación desde la sección del bot hacia la sección de agentes, reflejando que el caso está siendo atendido por un agente en tiempo real.

Declarar en todos los flujos de Create Ticket (a excepción de los cerrados) debajo del tarjeta de texto.


✅ 3. Cierre de la conversación (retorno al bot)

Una vez que la intervención humana finaliza y el caso se cierra, se realiza un tercer llamado a la API para registrar el retorno de la conversación al bot.

Esto permite actualizar la vista del supervisor, eliminando la conversación de la sección de agentes y, si corresponde, mostrando nuevamente la interacción en el contexto del bot o cerrándola completamente.

Declarar en el flujo Conversation End.

✅ 4. Hook de actualización de conversación

Crear un hook de tipo Before Incoming con el nombre de updateConversationSupervisor el cual actualizará todas las conversaciones con los mensajes entrantes.

Last updated