Habilidades azure-web-pubsub-ts
📦

azure-web-pubsub-ts

Seguro 🌐 Acceso a red🔑 Variables de entorno

Crear aplicaciones en tiempo real con Azure Web PubSub

Implemente mensajería en tiempo real basada en WebSocket en sus aplicaciones utilizando los SDK de Azure Web PubSub. Esta habilidad proporciona patrones listos para producción para mensajería pub/sub, gestión de grupos y manejo de conexiones con TypeScript.

Soporta: Claude Codex Code(CC)
🥉 73 Bronce
1

Descargar el ZIP de la skill

2

Subir en Claude

Ve a Configuración → Capacidades → Skills → Subir skill

3

Activa y empieza a usar

Pruébalo

Usando "azure-web-pubsub-ts". Generar token de cliente con ID de usuario y membresía de grupo

Resultado esperado:

Token generado con URL wss://resource.webpubsub.azure.com/client/access/hubs/chat?access_token=xxx, userId=user123, groups=[chat-room], roles=[webpubsub.joinLeaveGroup, webpubsub.sendToGroup]

Usando "azure-web-pubsub-ts". Enviar mensaje a todos los usuarios en el grupo chat-room

Resultado esperado:

Mensaje difundido exitosamente a 12 conexiones en el grupo chat-room. Contenido del mensaje: {type: 'message', data: 'Hello everyone!'}

Auditoría de seguridad

Seguro
v1 • 2/25/2026

This skill contains legitimate Azure Web PubSub SDK documentation. Static analyzer produced 35 false positive external_commands findings by misinterpreting markdown code block backticks as shell execution. Network and environment variable patterns are standard Azure SDK usage. No malicious intent detected.

1
Archivos escaneados
316
Líneas analizadas
5
hallazgos
1
Auditorías totales
Problemas de riesgo medio (1)
False Positive: External Command Detection
Static analyzer detected 35 instances of 'Ruby/shell backtick execution'. These are markdown code block delimiters in documentation, not actual shell command execution. No child_process or exec usage present.
Problemas de riesgo bajo (2)
Standard Network Usage
fetch() call at line 155 is legitimate WebSocket negotiation pattern for Azure Web PubSub client connection. URL is relative endpoint '/negotiate', not external hardcoded URL.
Standard Environment Variable Configuration
Environment variable access for WEBPUBSUB_CONNECTION_STRING and WEBPUBSUB_ENDPOINT follows Azure SDK best practices. These are configuration patterns, not credential leakage.

Factores de riesgo

🌐 Acceso a red (2)
🔑 Variables de entorno (3)
Auditado por: claude

Puntuación de calidad

38
Arquitectura
100
Mantenibilidad
87
Contenido
50
Comunidad
96
Seguridad
91
Cumplimiento de la especificación

Lo que puedes crear

Aplicación de chat en tiempo real

Construya un sistema de chat multi-sala con autenticación de usuario, mensajería grupal e indicadores de presencia usando grupos de Azure Web PubSub y mensajería dirigida a usuarios.

Actualizaciones de panel en vivo

Envíe actualizaciones de datos en tiempo real a paneles conectados usando mensajería de difusión. Ideal para sistemas de monitoreo, pantallas de análisis o visualización de métricas en vivo.

Sala de espera para juego multijugador

Cree salas de juego con emparejamiento de jugadores, mensajería dentro del juego y gestión de sesiones usando APIs de grupos y gestión de conexiones.

Prueba estos prompts

Configuración básica
Configure el cliente de Azure Web PubSub del lado del servidor usando la cadena de conexión de las variables de entorno. Cree un hub llamado 'chat' y genere un token de acceso de cliente básico.
Generación de token autenticado
Genere un token de acceso de cliente para el usuario 'user123' con roles para unirse a grupos, enviar a grupos y auto-unirse al grupo 'chat-room'. Establezca la expiración a 60 minutos.
Conexión del lado del cliente
Cree un WebPubSubClient que se conecte a través de un punto de conexión negotiate. Registre manejadores para eventos connected, group-message y disconnected. Únase al grupo 'chat-room' después de la conexión.
Manejador de eventos de Express
Implemente un middleware de Express para el hub 'chat' con validación handleConnect, procesamiento handleUserEvent y logging onConnected. Incluya un punto de conexión negotiate que genere tokens para usuarios autenticados.

Mejores prácticas

  • Use DefaultAzureCredential para producción en lugar de claves de acceso para mejor seguridad
  • Registre todos los manejadores de eventos antes de llamar a client.start() para evitar perder eventos iniciales
  • Valide la autenticación en handleConnect para rechazar conexiones no autorizadas temprano en el handshake

Evitar

  • Hardcodear cadenas de conexión o claves de acceso directamente en el código fuente en lugar de usar variables de entorno
  • Acceder a variables process.env sin aserción non-null de TypeScript o valores de fallback
  • Enviar mensajes antes de verificar que el estado de conexión del cliente sea 'connected'

Preguntas frecuentes

¿Cuál es la diferencia entre @azure/web-pubsub y @azure/web-pubsub-client?
@azure/web-pubsub es el SDK del lado del servidor para gestionar hubs, generar tokens y enviar mensajes. @azure/web-pubsub-client es el SDK del lado del cliente para navegador/Node.js para conectarse a puntos de conexión WebSocket y manejar mensajes en tiempo real.
¿Cómo autentico usuarios con Azure Web PubSub?
Use Azure Entra ID con DefaultAzureCredential (recomendado para producción) o genere tokens con userId y roles usando el SDK del servidor. Los clientes se conectan usando la URL del token generado.
¿Qué sucede cuando un cliente se desconecta inesperadamente?
Azure Web PubSub intenta automáticamente la reconexión. Maneje el evento 'disconnected' para limpieza y 'rejoin-group-failed' para manejar casos donde el reingreso al grupo falla después de la reconexión.
¿Puedo enviar mensajes a usuarios específicos versus todos los usuarios?
Sí. Use sendToAll() para difusión, sendToUser() para mensajes dirigidos a usuarios (se entrega a todas sus conexiones), o sendToConnection() para un ID de conexión específico.
¿Cómo funcionan los grupos en Azure Web PubSub?
Los grupos son canales lógicos dentro de un hub. Los usuarios pueden unirse/salir de grupos dinámicamente. Los mensajes enviados a un grupo llegan a todas las conexiones en ese grupo. Útil para salas de chat, salas de espera de juegos o suscripciones basadas en temas.
¿Cuál es el patrón del punto de conexión negotiate?
El punto de conexión negotiate es una ruta del servidor que genera tokens de acceso de cliente. Los clientes llaman a este punto de conexión para obtener una URL de WebSocket con token de acceso, luego se conectan usando esa URL. Esto mantiene las credenciales del lado del servidor.

Detalles del desarrollador

Estructura de archivos

📄 SKILL.md