Contrato de canales
Los nombres de canal se construyen mediante helpers enpusher.client.ts — la única fuente de
verdad compartida entre el publisher y el autorizador.
Los canales privados (prefijo
private-) requieren un token de autorización firmado
antes de que un cliente pueda suscribirse. El canal de tótem es público a propósito para que las
UIs táctiles y los dashboards de NOC se suscriban sin un handshake.Contrato de eventos
Los eventos del dominio de contratos se enumeran enContractPusherEvent:
Autorizador de canales privados
POST /api/v3/realtime/pusher/auth
1
Autoriza
Requiere el permiso
pusher:auth.2
Valida el cuerpo
socket_id y channel_name son ambos obligatorios (400 de lo contrario).3
Impone el namespace
El canal debe coincidir con
^private-(contract|account)-[0-9a-f-]{36}$;
cualquier otra cosa se rechaza con 403.4
Firma
Devuelve el payload de auth de Pusher desde
authorizeChannel(socket_id, channel_name). Cuando Pusher no está configurado
el endpoint devuelve 403.