דלג לתוכן הראשי

ניהול WebSocket

תקשורת בזמן אמת מבוססת Socket.IO ללקוחות דשבורד ומכשירים.

רכיבים

EventsGateway (src/events/)

Gateway WebSocket מרכזי עם Socket.IO:

  • ניתוב מבוסס חדרים דרך RoomManagerService:
    • user:{userId} — אירועי משתמש
    • device:{deviceId} — אירועי מכשיר
    • commands:{deviceId} — ערוץ פקודות
    • telemetry:{deviceId} — זרם טלמטריה
    • role:{roleName} — שידור מבוסס תפקיד

EventsService

Methodתיאור
broadcastToUser(userId, event, data)שליחה למשתמש ספציפי
broadcastToRole(role, event, data)שליחה לקבוצת תפקיד
broadcast(event, data)שליחה לכל הלקוחות
sendToDevice(deviceId, event, data)שליחה לחדר מכשיר
sendCommandToDevice(deviceId, command)שליחה דרך חדרי commands + device

אימות

חיבורי WebSocket מאומתים דרך JWT token בזמן חיבור. לאחר אימות, הלקוח מצורף לחדר user:{userId}.