Botframework V4:在Messenger中重置Bot

时间:2019-01-11 08:23:44

标签: c# botframework messenger

您好,我最近将我的机器人发布到了蔚蓝,并将其部署到Messenger中进行测试。该机器人的第一部分要求用户输入姓名和年龄。用户键入“重置”时,如何重置整个对话?就像删除所有保存在内存中的数据一样。我正在使用C#,并将用户数据保存到内存中。

     IStorage dataStore = new MemoryStorage();          
     var conversationState = new ConversationState(dataStore);
     options.State.Add(conversationState);

2 个答案:

答案 0 :(得分:2)

首先,我会回应@JJ_Wailes所说的在生产机器人中使用MemoryStorage提供程序的观点:只是不要。

也就是说,要直接回答您的问题,是的,您可以使用the DeleteAsync API删除给定BotState(例如ConversationStateUserState等)的所有状态。 / p>

答案 1 :(得分:1)

嗨!

内存中数据存储仅用于测试。此存储是易失性和临时的。每次重新启动bot时都会清除数据。无需“删除”它,它会在您重新启动bot时删除它自己。话虽这么说,当您进入https://www.messenger.com页面时,要在FB Messenger通道中“重置”机器人,请导航至右上方的齿轮图标:

enter image description here

将有一个“删除”对话的选项。单击此按钮,然后转到右侧的人员列表。再次搜索您的机器人名称,机器人对话将重新开始。

enter image description here

瞧!重置:

enter image description here