¿Qué es el centro de webhooks?

El centro de webhooks de Treble es el lugar donde puedes configurar las URLs de tus endpoints para recibir notificaciones en tiempo real sobre eventos relevantes de la plataforma. Cuando ocurre un evento, Treble envía una solicitud HTTP POST a la URL que configures, incluyendo en el cuerpo un JSON con la información del evento. Tu servidor puede procesar esta información para ejecutar acciones específicas como actualizar registros, enviar alertas o iniciar procesos internos.

Tipos de eventos disponibles

Actualmente puedes suscribirte a diferentes tipos de eventos globales:
  • Actualización del estado del HSM: Notifica cuando un HSM cambia de estado.
  • Actualización de cierre de sesión: Notifica cuando una sesión de conversación es cerrada.
  • Fallo de despliegue: Notifica cuando ocurre un error durante un despliegue.
Cada uno de estos webhooks puede activarse o desactivarse según tus necesidades desde el panel de configuración.

Requisitos

  • Tu endpoint debe responder en menos de 5 segundos.
  • La respuesta debe ser un cuerpo JSON válido.
  • Se recomienda usar HTTPS para mayor seguridad.

Ejemplo básico

Aquí tienes un ejemplo en Node.js para manejar un webhook de Treble:
const express = require('express');
const app = express();
app.use(express.json());

app.post('/webhook', (req, res) => {
  const { event_type } = req.body;

  console.log('Evento recibido:', event_type);

  // Procesa el evento según su tipo
  switch (event_type) {
    case 'hsm.status':
      // Lógica para manejar cambios de estado HSM
      break;
    case 'session.close':
      // Lógica para manejar cierre de sesión
      break;
    case 'deployment.failure':
      // Lógica para manejar fallos de despliegue
      break;
  }

  res.status(200).json({ success: true });
});

app.listen(3000, () => console.log('Webhook server escuchando en puerto 3000'));