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');