From c1c99654a26dd4b9024b27642e90138f134d3d77 Mon Sep 17 00:00:00 2001 From: Hamza-Ayed Date: Wed, 24 Jun 2026 23:30:56 +0300 Subject: [PATCH] Deploy: 2026-06-24 23:30:56 --- whatsapp-gateway/baileys-client.js | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/whatsapp-gateway/baileys-client.js b/whatsapp-gateway/baileys-client.js index a19918b..91b43c0 100644 --- a/whatsapp-gateway/baileys-client.js +++ b/whatsapp-gateway/baileys-client.js @@ -590,7 +590,26 @@ async function sendMessage(session_key, phone, message, mediaUrl = null, audioBa jid = phoneToLid.get(phone); console.log(`[LID] Routing reply to ${phone} via LID: ${jid}`); } else { - jid = `${phone}@s.whatsapp.net`; + // Query WhatsApp to resolve the correct JID/LID for this phone number. + // This is CRITICAL for newer WhatsApp versions (especially iOS) to prevent + // E2EE session conflicts and the "Waiting for this message" decryption delay. + try { + console.log(`[JID Resolve] Resolving JID for ${phone}...`); + const [result] = await sock.onWhatsApp(phone); + if (result && result.exists) { + jid = result.jid; + console.log(`[JID Resolve] Successfully resolved JID for ${phone}: ${jid}`); + // Cache it for subsequent messages + if (jid.endsWith('@lid')) { + phoneToLid.set(phone, jid); + } + } else { + jid = `${phone}@s.whatsapp.net`; + } + } catch (err) { + console.error(`[JID Resolve] Failed to query onWhatsApp for ${phone}:`, err.message); + jid = `${phone}@s.whatsapp.net`; + } } let sentMsg;