From 39541cc162c66fc36d7964b112e1f39c15a7af9c Mon Sep 17 00:00:00 2001 From: Rajeh Taher Date: Thu, 2 Oct 2025 23:30:28 +0300 Subject: [PATCH] messages: No longer send s on successful decrypt + fix lid acks --- src/Socket/messages-recv.ts | 13 +------------ src/Socket/messages-send.ts | 3 ++- 2 files changed, 3 insertions(+), 13 deletions(-) diff --git a/src/Socket/messages-recv.ts b/src/Socket/messages-recv.ts index ac58d1d5..043c1c68 100644 --- a/src/Socket/messages-recv.ts +++ b/src/Socket/messages-recv.ts @@ -1102,7 +1102,7 @@ export const makeMessagesRecvSocket = (config: SocketConfig) => { const handleMessage = async (node: BinaryNode) => { if (shouldIgnoreJid(node.attrs.from!) && node.attrs.from !== '@s.whatsapp.net') { logger.debug({ key: node.attrs.key }, 'ignored message') - await sendMessageAck(node) + await sendMessageAck(node, NACK_REASONS.UnhandledError) return } @@ -1122,16 +1122,6 @@ export const makeMessagesRecvSocket = (config: SocketConfig) => { decrypt } = decryptMessageNode(node, authState.creds.me!.id, authState.creds.me!.lid || '', signalRepository, logger) - if ( - msg.message?.protocolMessage?.type === proto.Message.ProtocolMessage.Type.SHARE_PHONE_NUMBER && - node.attrs.sender_pn - ) { - const lid = jidNormalizedUser(node.attrs.from), - pn = jidNormalizedUser(node.attrs.sender_pn) - ev.emit('lid-mapping.update', { lid, pn }) - await signalRepository.lidMapping.storeLIDPNMappings([{ lid, pn }]) - await signalRepository.migrateSession(pn, lid) - } const alt = msg.key.participantAlt || msg.key.remoteJidAlt // store new mappings we didn't have before @@ -1245,7 +1235,6 @@ export const makeMessagesRecvSocket = (config: SocketConfig) => { cleanMessage(msg, authState.creds.me!.id) - await sendMessageAck(node) await upsertMessage(msg, node.attrs.offline ? 'append' : 'notify') }) diff --git a/src/Socket/messages-send.ts b/src/Socket/messages-send.ts index ea44bd8d..364716bd 100644 --- a/src/Socket/messages-send.ts +++ b/src/Socket/messages-send.ts @@ -42,6 +42,7 @@ import { getBinaryNodeChild, getBinaryNodeChildren, isJidGroup, + isLidUser, isPnUser, jidDecode, jidEncode, @@ -152,7 +153,7 @@ export const makeMessagesSocket = (config: SocketConfig) => { node.attrs.t = unixTimestampSeconds().toString() } - if (type === 'sender' && isPnUser(jid)) { + if (type === 'sender' && (isPnUser(jid) || isLidUser(jid))) { node.attrs.recipient = jid node.attrs.to = participant! } else {