From 6827693c638d1b5ed398146bd9df84b67518bbca Mon Sep 17 00:00:00 2001 From: awanmh Date: Wed, 28 Jan 2026 11:58:36 +0700 Subject: [PATCH 1/2] fix: resolve facebook ads context readability --- src/utils/getConversationMessage.ts | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/utils/getConversationMessage.ts b/src/utils/getConversationMessage.ts index eca23b454..0abcaf910 100644 --- a/src/utils/getConversationMessage.ts +++ b/src/utils/getConversationMessage.ts @@ -16,7 +16,7 @@ const getTypeMessage = (msg: any) => { conversation: msg?.message?.conversation, extendedTextMessage: msg?.message?.extendedTextMessage?.text, contactMessage: msg?.message?.contactMessage?.displayName, - locationMessage: msg?.message?.locationMessage?.degreesLatitude.toString(), + locationMessage: msg?.message?.locationMessage?.degreesLatitude?.toString(), viewOnceMessageV2: msg?.message?.viewOnceMessageV2?.message?.imageMessage?.url || msg?.message?.viewOnceMessageV2?.message?.videoMessage?.url || @@ -49,9 +49,14 @@ const getTypeMessage = (msg: any) => { : '' }` : undefined, - externalAdReplyBody: msg?.contextInfo?.externalAdReply?.body - ? `externalAdReplyBody|${msg.contextInfo.externalAdReply.body}` + + // --- FIX FACEBOOK ADS START --- + externalAdReplyBody: msg?.message?.extendedTextMessage?.contextInfo?.externalAdReply?.body + ? `externalAdReplyBody|${msg.message.extendedTextMessage.contextInfo.externalAdReply.body}` + : msg?.message?.extendedTextMessage?.contextInfo?.externalAdReply?.title + ? `externalAdReplyBody|${msg.message.extendedTextMessage.contextInfo.externalAdReply.title}` : undefined, + // --- FIX FACEBOOK ADS END --- }; const messageType = Object.keys(types).find((key) => types[key] !== undefined) || 'unknown'; @@ -60,7 +65,7 @@ const getTypeMessage = (msg: any) => { }; const getMessageContent = (types: any) => { - const typeKey = Object.keys(types).find((key) => key !== 'externalAdReplyBody' && types[key] !== undefined); + const typeKey = Object.keys(types).find((key) => key !== 'externalAdReplyBody' && key !== 'messageType' && types[key] !== undefined); let result = typeKey ? types[typeKey] : undefined; @@ -73,8 +78,6 @@ const getMessageContent = (types: any) => { export const getConversationMessage = (msg: any) => { const types = getTypeMessage(msg); - const messageContent = getMessageContent(types); - return messageContent; -}; +}; \ No newline at end of file From c84626d244db972c0e2624a7ee177d8e4b70c0b1 Mon Sep 17 00:00:00 2001 From: awanmh Date: Fri, 30 Jan 2026 17:00:38 +0700 Subject: [PATCH 2/2] fix: add fallback path for externalAdReply as suggested by sourcery --- src/utils/getConversationMessage.ts | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/utils/getConversationMessage.ts b/src/utils/getConversationMessage.ts index 0abcaf910..377df64c1 100644 --- a/src/utils/getConversationMessage.ts +++ b/src/utils/getConversationMessage.ts @@ -49,13 +49,17 @@ const getTypeMessage = (msg: any) => { : '' }` : undefined, - + // --- FIX FACEBOOK ADS START --- externalAdReplyBody: msg?.message?.extendedTextMessage?.contextInfo?.externalAdReply?.body ? `externalAdReplyBody|${msg.message.extendedTextMessage.contextInfo.externalAdReply.body}` : msg?.message?.extendedTextMessage?.contextInfo?.externalAdReply?.title - ? `externalAdReplyBody|${msg.message.extendedTextMessage.contextInfo.externalAdReply.title}` - : undefined, + ? `externalAdReplyBody|${msg.message.extendedTextMessage.contextInfo.externalAdReply.title}` + : msg?.contextInfo?.externalAdReply?.body + ? `externalAdReplyBody|${msg.contextInfo.externalAdReply.body}` + : msg?.contextInfo?.externalAdReply?.title + ? `externalAdReplyBody|${msg.contextInfo.externalAdReply.title}` + : undefined, // --- FIX FACEBOOK ADS END --- }; @@ -65,7 +69,9 @@ const getTypeMessage = (msg: any) => { }; const getMessageContent = (types: any) => { - const typeKey = Object.keys(types).find((key) => key !== 'externalAdReplyBody' && key !== 'messageType' && types[key] !== undefined); + const typeKey = Object.keys(types).find( + (key) => key !== 'externalAdReplyBody' && key !== 'messageType' && types[key] !== undefined, + ); let result = typeKey ? types[typeKey] : undefined; @@ -80,4 +86,4 @@ export const getConversationMessage = (msg: any) => { const types = getTypeMessage(msg); const messageContent = getMessageContent(types); return messageContent; -}; \ No newline at end of file +};