From 65111481b9e6a4792f02784bbeff8d57ba431630 Mon Sep 17 00:00:00 2001 From: OrionDesign Date: Thu, 22 May 2025 00:17:06 -0300 Subject: [PATCH 1/4] fix: remove quebras de linha extras nas mensagens do N8n MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Corrige o problema de formatação nas mensagens do N8n onde quebras de linha extras estavam sendo adicionadas antes e depois das mídias (imagens, vídeos, etc). Agora o texto é enviado mantendo apenas as quebras de linha intencionais. --- src/api/integrations/chatbot/n8n/services/n8n.service.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/api/integrations/chatbot/n8n/services/n8n.service.ts b/src/api/integrations/chatbot/n8n/services/n8n.service.ts index 45516df2..43d00c60 100644 --- a/src/api/integrations/chatbot/n8n/services/n8n.service.ts +++ b/src/api/integrations/chatbot/n8n/services/n8n.service.ts @@ -186,7 +186,7 @@ export class N8nService extends BaseChatbotService { while ((match = linkRegex.exec(message)) !== null) { const [fullMatch, exclamation, altText, url] = match; const mediaType = this.getMediaType(url); - const beforeText = message.slice(lastIndex, match.index); + const beforeText = message.slice(lastIndex, match.index).trim(); if (beforeText) { textBuffer += beforeText; @@ -298,7 +298,7 @@ export class N8nService extends BaseChatbotService { lastIndex = match.index + fullMatch.length; } - const remainingText = message.slice(lastIndex); + const remainingText = message.slice(lastIndex).trim(); if (remainingText) { textBuffer += remainingText; } From da51b6bd76fd5ba7e01530a4e3e6b06f7c4458c4 Mon Sep 17 00:00:00 2001 From: OrionDesign Date: Thu, 22 May 2025 00:54:37 -0300 Subject: [PATCH 2/4] fix: corrige processamento de mensagens subsequentes no Evolution Bot MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Corrige o problema onde o Evolution Bot não processava mensagens subsequentes após a primeira resposta. A correção permite que o bot continue respondendo a todas as mensagens enquanto a sessão estiver ativa, melhorando a continuidade da conversa. --- src/api/integrations/chatbot/base-chatbot.controller.ts | 2 +- src/api/integrations/chatbot/chatbot.controller.ts | 2 +- .../evolutionBot/controllers/evolutionBot.controller.ts | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/api/integrations/chatbot/base-chatbot.controller.ts b/src/api/integrations/chatbot/base-chatbot.controller.ts index 0244184c..dab51e25 100644 --- a/src/api/integrations/chatbot/base-chatbot.controller.ts +++ b/src/api/integrations/chatbot/base-chatbot.controller.ts @@ -876,7 +876,7 @@ export abstract class BaseChatbotController Date: Thu, 22 May 2025 01:01:51 -0300 Subject: [PATCH 3/4] =?UTF-8?q?fix:=20corrige=20comportamento=20de=20sess?= =?UTF-8?q?=C3=A3o=20pausada=20no=20Evolution=20Bot?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Corrige o problema onde o Evolution Bot reativava automaticamente por qualquer mensagem do usuario quando a sessão estava pausada. Agora, quando uma sessão está pausada, o bot ignora completamente as mensagens recebidas até que a sessão seja explicitamente reativada. --- src/api/integrations/chatbot/base-chatbot.service.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/api/integrations/chatbot/base-chatbot.service.ts b/src/api/integrations/chatbot/base-chatbot.service.ts index 212ec250..eddf2a38 100644 --- a/src/api/integrations/chatbot/base-chatbot.service.ts +++ b/src/api/integrations/chatbot/base-chatbot.service.ts @@ -126,11 +126,16 @@ export abstract class BaseChatbotService { ): Promise { try { // For new sessions or sessions awaiting initialization - if (!session || session.status === 'paused') { + if (!session) { await this.initNewSession(instance, remoteJid, bot, settings, session, content, pushName, msg); return; } + // If session is paused, ignore the message + if (session.status === 'paused') { + return; + } + // For existing sessions, keywords might indicate the conversation should end const keywordFinish = (settings as any)?.keywordFinish || ''; const normalizedContent = content.toLowerCase().trim(); From dcb09b87feccb22b59b70134d7d3d55ec9001ba3 Mon Sep 17 00:00:00 2001 From: OrionDesign Date: Thu, 22 May 2025 01:08:48 -0300 Subject: [PATCH 4/4] =?UTF-8?q?fix:=20corrige=20comportamento=20de=20sess?= =?UTF-8?q?=C3=A3o=20pausada=20no=20N8N?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Corrige o problema onde o N8N reativava automaticamente a sessão após receber uma mensagem quando estava pausado. Agora, quando uma sessão está pausada, o bot ignora completamente as mensagens recebidas até que a sessão seja explicitamente reativada através do endpoint de mudança de status. --- .../integrations/chatbot/n8n/services/n8n.service.ts | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/src/api/integrations/chatbot/n8n/services/n8n.service.ts b/src/api/integrations/chatbot/n8n/services/n8n.service.ts index 43d00c60..9017b125 100644 --- a/src/api/integrations/chatbot/n8n/services/n8n.service.ts +++ b/src/api/integrations/chatbot/n8n/services/n8n.service.ts @@ -439,16 +439,6 @@ export class N8nService extends BaseChatbotService { // If session exists but is paused if (session.status === 'paused') { - await this.prismaRepository.integrationSession.update({ - where: { - id: session.id, - }, - data: { - status: 'opened', - awaitUser: true, - }, - }); - return; }