WebSocket
Resumen
Sección titulada «Resumen»messaging-websocket es un proveedor de mensajería controlado por respuestas y generado desde build-answer.json. Es útil cuando los clientes mantienen una sesión WebSocket activa con Greentic e intercambian frames JSON en lugar de usar una plataforma de chat con nombre.
Actualmente admite:
- Validación de conexión sin autenticación, con token bearer o con token en la query
- Mapear frames de texto entrantes con objetos JSON a eventos normalizados
- Construir frames de texto salientes a partir de payloads de mensaje
- Normalizar eventos de ciclo de vida para
open,closeyerror
Los frames binarios quedan diferidos en la implementación actual del proveedor.
Configuración
Sección titulada «Configuración»-
Agrega el pack del proveedor
Selecciona
messaging-websocketcongtc wizardo agrega el pack al bundle desde el catálogo de proveedores de mensajería. -
Configura la política de conexión
Usa las respuestas de configuración generadas para tu pack instalado. La configuración típica incluye metadatos de tenant/team y autenticación opcional.
-
Ejecuta setup
Ventana de terminal gtc setup ./my-bundle -
Inicia el runtime
Ventana de terminal gtc start ./my-bundle
Frames entrantes
Sección titulada «Frames entrantes»Los frames entrantes deben ser frames de texto que contengan un objeto JSON. El proveedor los mapea a eventos con esta forma:
{ "provider": "messaging-websocket", "direction": "inbound", "kind": "websocket.frame", "session_id": "session-1", "payload": { "message": "hello" }, "metadata": { "tenant_id": "demo", "team_id": "default" }}Los eventos de ciclo de vida se normalizan con valores de kind como websocket.open, websocket.close y websocket.error.
Frames salientes
Sección titulada «Frames salientes»Los mensajes salientes requieren un session_id y un payload de objeto. Se convierten en frames de texto:
{ "session_id": "session-1", "opcode": "text", "data": "{\"message\":\"hello\"}"}Acceso de red
Sección titulada «Acceso de red»| Dirección | Protocolo y puerto | Propósito |
|---|---|---|
| Entrante | WSS 443 hacia Greentic | Clientes WebSocket de navegador o servicio en producción |
| Entrante, desarrollo local | WS en el puerto local del runtime/tester | Pruebas locales antes de la terminación TLS/túnel |
| Saliente | WS o WSS hacia endpoints configurados cuando lo usa la integración host/runtime | Frames salientes construidos por el proveedor |
Pruebas
Sección titulada «Pruebas»Usa el tester local:
./scripts/test_ws.shLa página de pruebas tiene botones separados para mapeo de frames entrantes, generación de frames salientes y normalización de eventos de ciclo de vida, y muestra un estado claro de aprobado/error.