Refactor ChatPopup to update WebRTC userId upon authentication, enhance identifier logic for message comparison, and localize guest label. Update useWebRTC to include userId update function and adjust API request headers for guestId handling based on authentication status.

This commit is contained in:
2025-10-31 14:40:49 +05:00
parent 000c4caacb
commit 712448b1c5
7 changed files with 51 additions and 15 deletions
+2
View File
@@ -1,4 +1,6 @@
DATABASE_URL=postgres://postgres:v1sq3vD5faXL@194.26.138.94:5432/stream
JWT_SECRET=b5cf2bd3894fb24191f13dc9dddaeecccc92d0ee298e7ee41c2d0aab51c28fa1
# PORT=6000
# SOCKET_PORT=6001
PORT=3000
SOCKET_PORT=3001
+6 -4
View File
@@ -263,7 +263,7 @@ io.on("connection", (socket) => {
try {
// Определяем имя отправителя
const finalSenderName = senderName || "Guest";
const finalSenderName = senderName || "Гость";
console.log(
`[Chat] Preparing to save message with senderName: "${finalSenderName}"`
@@ -307,10 +307,11 @@ io.on("connection", (socket) => {
}
// Сохраняем сообщение в БД
// Приоритет: сначала userId (если авторизован), затем guestId (если гость)
const messageData = {
sessionId: roomId,
userId: userId || null, // null для анонимных пользователей
guestId: guestId || null, // ID гостя для неавторизованных
userId: userId || null, // userId для авторизованных пользователей
guestId: userId ? null : (guestId || null), // guestId только если нет userId
senderName: finalSenderName, // Имя отправителя
content,
type: "text" as const,
@@ -324,9 +325,10 @@ io.on("connection", (socket) => {
console.log(`[Chat] Message saved successfully:`, savedMessage);
// Формируем сообщение для отправки клиентам
// senderId - это либо userId (приоритет), либо guestId
const messageToSend = {
id: savedMessage.id,
senderId: userId || guestId,
senderId: savedMessage.userId || savedMessage.guestId,
senderName: savedMessage.senderName,
content: savedMessage.content,
timestamp: savedMessage.createdAt,