我正在使用Microsoft bot开发框架,使用其node.js sdk.我一直在寻找一种方法来保存对话的所有消息.我将persistConversationData设置为true,并尝试使用session.conversationData访问conversationData.但是,它是空的.
1-是否有内置方法来访问对话中的所有消息?
2-如果persistConversationData不适用于此,任何人都可以解释它的用法.
非常感谢.
默认情况下,Microsoft Bot Framework不会保留邮件.对于有状态操作,您可以通过以下方式使用Bot State API:
userData.持久化数据将在不同对话中提供给同一用户.conversationData.持久化数据将可供同一对话中的所有用户使用.privateConversationData.持久化数据将在给定对话中供给给定用户.dialogData用于在瀑布的步骤之间存储临时信息.根据文档,conversationData默认情况下禁用.如果要使用它,则必须设置persistConversationData为true.
tl; dr你必须为自己照顾持久性.例如
// ...
var bot = new builder.UniversalBot(connector, { persistConversationData: true });
bot.dialog('/', function (session) {
let messages = session.conversationData || [];
messages.push(session.message);
session.conversationData = messages;
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2707 次 |
| 最近记录: |