Estoy usando la acción de desencadenar y finalizar la conversación para finalizar mi chat... pero cierra el cuadro de diálogo actual del chat... quiero finalizar el historial o los datos del chat...
y estoy probando este código ..
bot.dialog('/end', function (session) { session.endConversation("End Conversation"); }).triggerAction({ matches: /^(exit)|(quit)/i });Podrías intentar usar
session.clearDialogStack()o
session.reset(); session.endDialog();Aquí encontrará información sobre el reinicio y aquí sobre clearDialogStack .
Puede usar este middleware simple para borrar bolsas de datos de usuario/datos de conversación:
export interface IResetDataSettings { resetCommand: RegExp; } export class ResetMiddleware { public static data(settings: IResetDataSettings): IMiddlewareMap { return { botbuilder: (session, next) => { if (settings.resetCommand && session.message.text && settings.resetCommand.test(session.message.text)) { session.userData = {}; session.conversationData = {}; session.privateConversationData = {}; session.endConversation("Your conversation state was reset."); } else { next(); } } }; } }Luego configúralo así:
this.bot.use(ResetMiddleware.data({ resetCommand: /^reset data$/i }));Puede usar el comando "/deleteprofile" para eliminar el estado de la bolsa de datos del bot User/PrivateConversation y restablecer su bot. Tenga en cuenta que algunos canales interpretan los comandos de barra de forma nativa, por lo que puede ser necesario enviar el comando con un espacio al frente ("/eliminar perfil")
Desde aquí: https://docs.botframework.com/en-us/technical-faq#my-bot-is-stuck--how-can-i-reset-the-conversation