From e18945863f2dafd4dc617a998fe83664c29b8eb1 Mon Sep 17 00:00:00 2001 From: Maxim Dolgolyov Date: Wed, 15 Apr 2026 13:53:10 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20WebRTC=20=D1=81=D0=B8=D0=B3=D0=BD=D0=B0?= =?UTF-8?q?=D0=BB=D1=8B=20=D1=82=D0=B5=D0=BF=D0=B5=D1=80=D1=8C=20=D0=B4?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D0=B0=D0=B2=D0=BB=D1=8F=D1=8E=D1=82=D1=81?= =?UTF-8?q?=D1=8F=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20WS=20=D0=B5=D1=81?= =?UTF-8?q?=D0=BB=D0=B8=20=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0?= =?UTF-8?q?=D1=82=D0=B5=D0=BB=D1=8C=20=D0=BF=D0=BE=D0=B4=D0=BA=D0=BB=D1=8E?= =?UTF-8?q?=D1=87=D1=91=D0=BD=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20WebSocket?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit signal() в classroomController использовал emit() из sse.js напрямую — сигналы не доходили до пользователей на WebSocket-соединении (учитель). Исправлено: используем emitToUser() из ws-server.js, который роутит в WS и падает на SSE только как fallback. --- backend/src/controllers/classroomController.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/backend/src/controllers/classroomController.js b/backend/src/controllers/classroomController.js index 6007a28..a757817 100644 --- a/backend/src/controllers/classroomController.js +++ b/backend/src/controllers/classroomController.js @@ -3,6 +3,7 @@ const path = require('path'); const fs = require('fs'); const crypto = require('crypto'); const { emit, emitToClass, getOnlineUserIds, emitToGuests } = require('../sse'); +const { emitToUser } = require('../ws-server'); /* ── chat attachment uploads dir ─────────────────────────────────────── */ const CHAT_UPLOADS_DIR = path.join(__dirname, '../../uploads/chat'); @@ -359,7 +360,7 @@ function signal(req, res) { if (!hasAccess(session, req.user.id, req.user.role)) return res.status(403).json({ error: 'Нет доступа' }); - emit(target_user_id, { + emitToUser(target_user_id, { type: 'classroom_signal', sessionId, from: req.user.id,