diff --git a/src/LegacySocket/messages.ts b/src/LegacySocket/messages.ts index b850cf1..a35acc1 100644 --- a/src/LegacySocket/messages.ts +++ b/src/LegacySocket/messages.ts @@ -2,7 +2,7 @@ import { Boom } from '@hapi/boom' import { proto } from '../../WAProto' import { WA_DEFAULT_EPHEMERAL } from '../Defaults' import { AnyMessageContent, Chat, GroupMetadata, LegacySocketConfig, MediaConnInfo, MessageUpdateType, MessageUserReceipt, MessageUserReceiptUpdate, MiscMessageGenerationOptions, ParticipantAction, WAFlag, WAMessage, WAMessageCursor, WAMessageKey, WAMessageStatus, WAMessageStubType, WAMessageUpdate, WAMetric, WAUrlInfo } from '../Types' -import { downloadMediaMessage, generateWAMessage, getWAUploadToServer, MediaDownloadOptions, toNumber } from '../Utils' +import { downloadMediaMessage, generateWAMessage, getWAUploadToServer, MediaDownloadOptions, normalizeMessageContent, toNumber } from '../Utils' import { areJidsSameUser, BinaryNode, getBinaryNodeMessages, isJidGroup, jidNormalizedUser } from '../WABinary' import makeChatsSocket from './chats' @@ -137,7 +137,7 @@ const makeMessagesSocket = (config: LegacySocketConfig) => { } } - const protocolMessage = message.message?.protocolMessage || message.message?.ephemeralMessage?.message?.protocolMessage + const protocolMessage = normalizeMessageContent(message.message)?.protocolMessage // if it's a message to delete another message if(protocolMessage) { switch (protocolMessage.type) { diff --git a/src/Socket/messages-recv.ts b/src/Socket/messages-recv.ts index 4ea2098..4bd09ea 100644 --- a/src/Socket/messages-recv.ts +++ b/src/Socket/messages-recv.ts @@ -2,7 +2,7 @@ import { proto } from '../../WAProto' import { KEY_BUNDLE_TYPE } from '../Defaults' import { Chat, GroupMetadata, MessageUserReceipt, ParticipantAction, SocketConfig, WAMessageStubType } from '../Types' -import { decodeMessageStanza, downloadAndProcessHistorySyncNotification, encodeBigEndian, generateSignalPubKey, toNumber, xmppPreKey, xmppSignedPreKey } from '../Utils' +import { decodeMessageStanza, downloadAndProcessHistorySyncNotification, encodeBigEndian, generateSignalPubKey, normalizeMessageContent, toNumber, xmppPreKey, xmppSignedPreKey } from '../Utils' import { makeKeyedMutex, makeMutex } from '../Utils/make-mutex' import { areJidsSameUser, BinaryNode, BinaryNodeAttributes, getAllBinaryNodeChildren, getBinaryNodeChildren, isJidGroup, jidDecode, jidEncode, jidNormalizedUser } from '../WABinary' import { makeChatsSocket } from './chats' @@ -125,7 +125,8 @@ export const makeMessagesRecvSocket = (config: SocketConfig) => { } const processMessage = async(message: proto.IWebMessageInfo, chatUpdate: Partial) => { - const protocolMsg = message.message?.protocolMessage + const content = normalizeMessageContent(message.message) + const protocolMsg = content?.protocolMessage if(protocolMsg) { switch (protocolMsg.type) { case proto.ProtocolMessage.ProtocolMessageType.HISTORY_SYNC_NOTIFICATION: