您好,我最近将我的机器人发布到了蔚蓝,并将其部署到Messenger中进行测试。该机器人的第一部分要求用户输入姓名和年龄。用户键入“重置”时,如何重置整个对话?就像删除所有保存在内存中的数据一样。我正在使用C#,并将用户数据保存到内存中。
IStorage dataStore = new MemoryStorage();
var conversationState = new ConversationState(dataStore);
options.State.Add(conversationState);
答案 0 :(得分:2)
首先,我会回应@JJ_Wailes所说的在生产机器人中使用MemoryStorage
提供程序的观点:只是不要。
也就是说,要直接回答您的问题,是的,您可以使用the DeleteAsync
API删除给定BotState
(例如ConversationState
,UserState
等)的所有状态。 / p>
答案 1 :(得分:1)
嗨!
内存中数据存储仅用于测试。此存储是易失性和临时的。每次重新启动bot时都会清除数据。无需“删除”它,它会在您重新启动bot时删除它自己。话虽这么说,当您进入https://www.messenger.com页面时,要在FB Messenger通道中“重置”机器人,请导航至右上方的齿轮图标:
将有一个“删除”对话的选项。单击此按钮,然后转到右侧的人员列表。再次搜索您的机器人名称,机器人对话将重新开始。
瞧!重置: