From 7ea7aa04541dab330c9ce3272881fa952e277121 Mon Sep 17 00:00:00 2001 From: OrionDesign Date: Mon, 19 May 2025 13:20:31 -0300 Subject: [PATCH] =?UTF-8?q?Corre=C3=A7=C3=A3o=20no=20tratamento=20no=20men?= =?UTF-8?q?sagens=20do=20EvolutionBot=20com=20Markdown?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Descrição Esta PR corrige um problema no tratamento de mensagens retornadas na integração do EvolutionBot, onde aspas extras estavam sendo incluídas no início e fim das mensagens quando acompanhado de Markdown. ## Solução Foi implementada uma lógica inteligente para tratar as aspas nas mensagens: - Verifica se a mensagem inteira está entre aspas simples - Se estiver, verifica se há aspas simples dentro do conteúdo - Remove as aspas externas apenas se não houver aspas/apóstrofos dentro do conteúdo Isso garante que: - Mensagens com aspas extras são corrigidas: `'texto'` -> `texto` - Mensagens com aspas/apóstrofos legítimos são preservadas: `'texto com "aspas" e don't'` -> `'texto com "aspas" e don't'` ## Impacto - Melhora a formatação das mensagens enviadas pelo bot - Preserva aspas e apóstrofos que fazem parte legítima do conteúdo - Mantém a compatibilidade com o formato de mensagens do n8n --- .../evolutionBot/services/evolutionBot.service.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/api/integrations/chatbot/evolutionBot/services/evolutionBot.service.ts b/src/api/integrations/chatbot/evolutionBot/services/evolutionBot.service.ts index 5275f9e1..0091f86d 100644 --- a/src/api/integrations/chatbot/evolutionBot/services/evolutionBot.service.ts +++ b/src/api/integrations/chatbot/evolutionBot/services/evolutionBot.service.ts @@ -101,7 +101,17 @@ export class EvolutionBotService { if (instance.integration === Integration.WHATSAPP_BAILEYS) await instance.client.sendPresenceUpdate('paused', remoteJid); - const message = response?.data?.message; + let message = response?.data?.message; + + if (message && typeof message === 'string') { + + if (message.startsWith("'") && message.endsWith("'")) { + const innerContent = message.slice(1, -1); + if (!innerContent.includes("'")) { + message = innerContent; + } + } + } return message; }