From 6a32fa946072d8252f02bf37643b4b6c604e8102 Mon Sep 17 00:00:00 2001 From: caneppelevitor Date: Wed, 24 Jul 2024 14:12:56 -0300 Subject: [PATCH] Removed possibilite to respond NO in the end of the conversation and changed chatbot flow --- server/chat-bot/chat-bot-actions.ts | 2 +- server/chat-bot/chat-bot.machine.ts | 17 ++++++++++++++++- server/chat-bot/chat-bot.service.ts | 15 +++++++++++++++ 3 files changed, 32 insertions(+), 2 deletions(-) diff --git a/server/chat-bot/chat-bot-actions.ts b/server/chat-bot/chat-bot-actions.ts index 53b5e5844..a4957ddd4 100644 --- a/server/chat-bot/chat-bot-actions.ts +++ b/server/chat-bot/chat-bot-actions.ts @@ -14,7 +14,7 @@ const MESSAGES = { "Desculpe, não entendi sua resposta. Para continuar, preciso que você digite SIM se deseja fazer uma denúncia, ou NÃO se não deseja.\n\nVocê gostaria de fazer uma denúncia agora?", askForVerificationRequest: "Por favor, me conte com detalhes o que você gostaria de denunciar.\n\nPor favor, inclua todas as informações que considerar relevantes para que possamos verificar a denúncia de forma eficiente 👀", - thanks: "Muito obrigada por sua contribuição!\n\nSua informação será analisada pela nossa equipe ✅Para saber mais, visite nosso site: https://aletheiafact.org.\n\nDeseja relatar outra denúncia? Responda SIM para continuar ou NÃO para encerrar.", + thanks: "Muito obrigada por sua contribuição!\n\nSua informação será analisada pela nossa equipe ✅Para saber mais, visite nosso site: https://aletheiafact.org.\n\nDeseja relatar outra denúncia? Responda SIM para continuar.", noTextMessageGreeting: "Desculpe, só podemos processar mensagens de texto. Por favor, envie sua mensagem em formato de texto.\n\nOlá! Sou o assistente virtual da AletheiaFact.org, estou aqui para ajudá-lo(a) a combater desinformações 🙂 Você gostaria de fazer uma denúncia agora?\n\nResponda SIM para continuar ou NÃO se não deseja denunciar.", noTextMessageAskForVerificationRequest: diff --git a/server/chat-bot/chat-bot.machine.ts b/server/chat-bot/chat-bot.machine.ts index d9e921597..55ff88489 100644 --- a/server/chat-bot/chat-bot.machine.ts +++ b/server/chat-bot/chat-bot.machine.ts @@ -66,7 +66,7 @@ export const createChatBotMachine = ( askingForVerificationRequest: { on: { RECEIVE_REPORT: { - target: "askingIfVerificationRequest", + target: "finishedReport", actions: [ "saveVerificationRequest", "sendThanks", @@ -83,6 +83,21 @@ export const createChatBotMachine = ( }, }, }, + finishedReport: { + on: { + RECEIVE_YES: { + target: "askingForVerificationRequest", + actions: [ + "askForVerificationRequest", + "setResponseMessage", + ], + }, + ANY_TEXT_MESSAGE: { + target: "askingIfVerificationRequest", + actions: ["sendGreeting", "setResponseMessage"], + }, + }, + }, sendingNoMessage: { on: { ASK_TO_REPORT: { diff --git a/server/chat-bot/chat-bot.service.ts b/server/chat-bot/chat-bot.service.ts index dc92375b1..6ad57b13d 100644 --- a/server/chat-bot/chat-bot.service.ts +++ b/server/chat-bot/chat-bot.service.ts @@ -117,6 +117,12 @@ export class ChatbotService { chatBotMachineService ); break; + case "finishedReport": + this.handleMachineFinishEventSend( + parsedMessage, + chatBotMachineService + ); + break; default: console.warn(`Unhandled state: ${currentState}`); } @@ -138,6 +144,15 @@ export class ChatbotService { ); } + private handleMachineFinishEventSend( + parsedMessage: string, + chatBotMachineService + ): void { + chatBotMachineService.send( + parsedMessage === "sim" ? "RECEIVE_YES" : "ANY_TEXT_MESSAGE" + ); + } + private handleSendingNoMessage( parsedMessage: string, chatBotMachineService