diff --git a/server/services/baileys/manager.ts b/server/services/baileys/manager.ts index 0cee5f3..45e83c6 100644 --- a/server/services/baileys/manager.ts +++ b/server/services/baileys/manager.ts @@ -525,11 +525,13 @@ class BaileysManager extends EventEmitter { return } - // Ensure chat exists + // Ensure chat exists and update name if pushName is available const chatResult = await query<{ id: string }>( `INSERT INTO chats (instance_id, jid, name, is_group) VALUES ($1, $2, $3, $4) - ON CONFLICT (instance_id, jid) DO UPDATE SET updated_at = NOW() + ON CONFLICT (instance_id, jid) DO UPDATE SET + name = COALESCE(NULLIF(EXCLUDED.name, chats.jid), chats.name), + updated_at = NOW() RETURNING id`, [instanceId, jid, msg.pushName || jid.split('@')[0], jid.includes('@g.us')] )