fix: WebRTC сигналы теперь доставляются через WS если пользователь подключён через WebSocket
signal() в classroomController использовал emit() из sse.js напрямую — сигналы не доходили до пользователей на WebSocket-соединении (учитель). Исправлено: используем emitToUser() из ws-server.js, который роутит в WS и падает на SSE только как fallback.
This commit is contained in:
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user