AutoSaveStateMiddleware class
将在轮次结束时自动保存任何状态更改的中间件。
注解
在任何其他使用状态的组件之前,应将 AutoSaveStateMiddleware 类添加到机器人中间件堆栈的顶部。 传递给构造函数的任何 BotState 插件都将在成功完成轮次后调用其 BotState.saveChanges() 方法。
此示例演示用于在机器人中读取和写入聊天和用户状态的样本代码:
const { AutoSaveStateMiddleware, ConversationState, UserState, MemoryStorage } = require('botbuilder');
const storage = new MemoryStorage();
const conversationState = new ConversationState(storage);
const userState = new UserState(storage);
adapter.use(new AutoSaveStateMiddleware(conversationState, userState));
server.post('/api/messages', (req, res) => {
adapter.processActivity(req, res, async (turnContext) => {
// Get state
const convo = await conversationState.load(turnContext);
const user = await userState.load(turnContext);
// ... route activity ...
// ...make changes to state objects...
// ... no need to call userState.saveChanges() or conversationState.saveChanges() anymore!
});
});
构造函数
| Auto |
创建新的 AutoSaveStateMiddleware 实例。 |
属性
| bot |
自动保存 |
方法
| add(Bot |
添加要保存的其他 |
| on |
适配器(例如,运行时 |
构造函数详细信息
AutoSaveStateMiddleware(BotState[])
创建新的 AutoSaveStateMiddleware 实例。
new AutoSaveStateMiddleware(botStates: BotState[])
参数
- botStates
-
BotState[]
一个或多个 BotState 插件在轮次结束时自动保存。
属性详细信息
botStateSet
方法详细信息
add(BotState[])
添加要保存的其他 BotState 插件。
function add(botStates: BotState[]): this
参数
- botStates
-
BotState[]
要添加的一个或多个 BotState 插件。
返回
this
更新的 BotStateSet 对象。
onTurn(TurnContext, () => Promise<void>)
适配器(例如,运行时 BotFrameworkAdapter)调用,以处理入站 活动。
function onTurn(context: TurnContext, next: () => Promise<void>): Promise<void>
参数
- context
- TurnContext
此轮次的上下文对象。
- next
-
() => Promise<void>
下一个委托函数。
返回
Promise<void>