From 9b4f679f7110ce1336cc3512615f6ec8ec98f437 Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Fri, 5 Dec 2025 09:29:18 +0100 Subject: [PATCH] Enhance chat and broadcast functionality with debug logging for image messages. Update chat store to log received messages and their details, and modify broadcast to log image sending events. Increase maxHttpBufferSize for handling larger images in Socket.IO. --- client/src/stores/chat.js | 14 ++++++++++++-- server/broadcast.js | 11 +++++++++-- server/index.js | 5 ++++- 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/client/src/stores/chat.js b/client/src/stores/chat.js index 3147782..a025542 100644 --- a/client/src/stores/chat.js +++ b/client/src/stores/chat.js @@ -224,15 +224,25 @@ export const useChatStore = defineStore('chat', () => { updateSearchResults(); break; case 'message': + // Debug-Logging für empfangene Nachrichten + if (data.isImage) { + console.log('[Bild empfangen] Von:', data.from, 'Typ:', data.imageType, 'Größe:', data.message ? data.message.length : 0, 'Zeichen'); + } + if (currentConversation.value === data.from) { - messages.value.push({ + const newMessage = { from: data.from, message: data.message, timestamp: data.timestamp, self: false, isImage: data.isImage || false, imageType: data.imageType || null - }); + }; + + console.log('[Nachricht hinzugefügt]', newMessage); + messages.value.push(newMessage); + } else { + console.log('[Nachricht ignoriert] Aktuelle Konversation:', currentConversation.value, 'Nachricht von:', data.from); } // Timeout zurücksetzen bei empfangener Nachricht resetTimeoutTimer(); diff --git a/server/broadcast.js b/server/broadcast.js index e2a25d4..3dc18a4 100644 --- a/server/broadcast.js +++ b/server/broadcast.js @@ -624,14 +624,21 @@ export function setupBroadcast(io) { }); // Sende an Empfänger (wenn online) - receiver.socket.emit('message', { + const messagePayload = { from: client.userName, message, messageId, timestamp: new Date().toISOString(), isImage: isImage || false, imageType: imageType || null - }); + }; + + // Debug-Logging für Bilder + if (isImage) { + console.log(`[Bild] Sende Bild von ${client.userName} an ${toUserName}, Größe: ${message ? message.length : 0} Zeichen, Typ: ${imageType || 'unbekannt'}`); + } + + receiver.socket.emit('message', messagePayload); // Bestätigung an Absender socket.emit('messageSent', { diff --git a/server/index.js b/server/index.js index 55b25c5..571457d 100644 --- a/server/index.js +++ b/server/index.js @@ -34,7 +34,10 @@ const io = new SocketIOServer(server, { methods: ['GET', 'POST'] }, transports: ['websocket', 'polling'], - allowEIO3: true + allowEIO3: true, + maxHttpBufferSize: 10 * 1024 * 1024, // 10MB für große Bilder (Base64-kodiert) + pingTimeout: 60000, + pingInterval: 25000 }); console.log('Socket.IO Server initialisiert auf Express-Server');