From d67ab1f57335849567e8e6af353f57d9a9ed9bc1 Mon Sep 17 00:00:00 2001 From: Lei OT Date: Tue, 31 Dec 2024 09:08:59 +0800 Subject: [PATCH 1/2] =?UTF-8?q?perf(=E5=89=8D=E7=AB=AF):=20wai=E8=A7=A3?= =?UTF-8?q?=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/channel/bubbleMsgUtils.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/channel/bubbleMsgUtils.js b/src/channel/bubbleMsgUtils.js index 5182575..e7953a0 100644 --- a/src/channel/bubbleMsgUtils.js +++ b/src/channel/bubbleMsgUtils.js @@ -325,7 +325,7 @@ const whatsappMsgMapped = { 'wai.message.received': { getMsg: (result) => { const data1 = pick(result, ['conversationid', 'opi_sn', 'coli_sn', 'coli_id']); - return isEmpty(result?.waiMessage) ? null : { ...result.waiMessage, ...data1, messageorigin: result.messageorigin, msg_source: 'wai', ...objectMapper(result.waiMessage, { direction: 'msg_direction' }) }; + return isEmpty(result?.waiMessage) ? null : { ...result.waiMessage, ...data1, messageorigin: result.messageorigin, msg_source: 'wai', ...objectMapper(result.waiMessage, { direction: {key: 'msg_direction'} }) }; }, contentToRender: (contentObj) => { return parseRenderMessageItem(contentObj); @@ -336,7 +336,7 @@ const whatsappMsgMapped = { getMsg: (result) => { return isEmpty(result?.waiMessage) ? null - : { ...result.waiMessage, conversationid: result.conversationid, messageorigin: result.messageorigin, msg_source: 'wai', ...objectMapper(result.waiMessage, { direction: 'msg_direction' }) } + : { ...result.waiMessage, conversationid: result.conversationid, messageorigin: result.messageorigin, msg_source: 'wai', ...objectMapper(result.waiMessage, { direction: {key: 'msg_direction'} }) } }, contentToRender: (contentObj) => { if (contentObj?.status === 'failed') { From 7a1e11a752cb497532e4b38ad42f44eccd8892c0 Mon Sep 17 00:00:00 2001 From: Lei OT Date: Tue, 31 Dec 2024 09:45:03 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=89=8D=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/channel/bubbleMsgUtils.js | 6 +++++- src/views/Conversations/Online/Components/BubbleIM.jsx | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/channel/bubbleMsgUtils.js b/src/channel/bubbleMsgUtils.js index e7953a0..c1059e3 100644 --- a/src/channel/bubbleMsgUtils.js +++ b/src/channel/bubbleMsgUtils.js @@ -594,6 +594,10 @@ export const whatsappMsgTypeMapped = { data: (msg) => ({ id: msg.wamid, text: `[暂不支持此消息类型](${msg.wamid})`, dateString: `${dayjs(msg.sendTime).format('MM-DD HH:mm')} [ WhatsApp未提供消息内容 ] 可能是客人删除消息/会话, \n可询问客人截图/详细内容 或 忽略 📌` }), renderForReply: (msg) => ({ id: msg?.wamid || msg.id, text: `[Message type unsupported](${msg.wamid})` }), }, + unresolvable: { + type: 'text', + data: (msg) => ({ id: msg.wamid, text: `[无法解析](${msg.wamid})`, }), + }, reaction: { type: 'text', data: (msg) => ({ id: msg.wamid, text: msg.reaction?.emoji || '' }), @@ -745,7 +749,7 @@ export const parseRenderMessageList = (messages) => { // } } const msgContent = typeof msgtext === 'string' ? JSON.parse(msgContentString) : (msgtext || {}); - const msgType = isEmpty(msgContent) ? msg.msgtype : (Object.keys(whatsappMsgTypeMapped).includes(msgContent.type) ? msgContent.type : 'unsupported') + const msgType = isEmpty(msgContent) ? msg.msgtype : (Object.keys(whatsappMsgTypeMapped).includes(msgContent.type) ? msgContent.type : 'unresolvable') msgContent.template = msg.msgtype === 'template' ? { ...msgContent.template, ...template } : {}; // const parseMethod = msgContent.bizType === 'whatsapp' ? cloneDeep(whatsappMsgTypeMapped) : {}; let waCode, waError = ''; diff --git a/src/views/Conversations/Online/Components/BubbleIM.jsx b/src/views/Conversations/Online/Components/BubbleIM.jsx index da42b83..5bb9226 100644 --- a/src/views/Conversations/Online/Components/BubbleIM.jsx +++ b/src/views/Conversations/Online/Components/BubbleIM.jsx @@ -119,7 +119,7 @@ const BubbleIM = ({ handlePreview, handleContactClick, setNewChatModalVisible, s ? { // styles: { backgroundColor: '#ccd4ae' }, notchStyle: { fill: outboundStyle[message.msg_source.toLowerCase()].color }, - title: <>{message.wabaName ? ` ${message.wabaName} - ${message.title}` : ` ${message.title || message.from}`}, + title: <>{message.wabaName ? ` ${message.wabaName} - ${message.title || ''}` : ` ${message.title || message.from}`}, } : { // title: <>  {message.title},