diff --git a/backend/utils/socket.js b/backend/utils/socket.js index d1a2dfc..6c4e5fb 100644 --- a/backend/utils/socket.js +++ b/backend/utils/socket.js @@ -14,15 +14,19 @@ export function setupWebSocket(server) { }); io.on('connection', (socket) => { + console.log('[socket.io] connection established:', socket.id, 'from', socket.handshake.address); + socket.on('setUserId', (userId) => { if (userId) { socket.userId = userId; userSockets[userId] = socket.id; + console.log('[socket.io] setUserId received:', userId, '→ socket', socket.id); } }); socket.on('disconnect', () => { if (socket.userId) { delete userSockets[socket.userId]; + console.log('[socket.io] disconnected:', socket.id, 'for userId', socket.userId); } }); }); @@ -47,9 +51,12 @@ export async function notifyUser(recipientHashedUserId, event, data) { if (recipientUser) { const socketId = userSockets[recipientUser.hashedId]; if (socketId) { + console.log('[socket.io] notifyUser → emit:', event, 'to socket', socketId, 'user', recipientUser.hashedId, 'data:', JSON.stringify(data)); setTimeout(() => { io.to(socketId).emit(event, data); }, 250); + } else { + console.warn('[socket.io] notifyUser: no socket registered for user', recipientUser.hashedId); } } else { console.log(`Benutzer mit gehashter ID ${recipientHashedUserId} nicht gefunden.`); @@ -57,7 +64,7 @@ export async function notifyUser(recipientHashedUserId, event, data) { } catch (err) { console.error('Fehler beim Senden der Benachrichtigung:', err); } - console.log('done sending socket'); + console.log('[socket.io] notifyUser done'); } export async function notifyAllUsers(event, data) {