共用方式為


AutoSaveStateMiddleware class

中介軟體,會在回合結束時自動儲存任何狀態變更。

備註

AutoSaveStateMiddleware 任何其他使用狀態的元件之前,應該將 類別新增至 Bot 中介軟體堆疊頂端。 BotState任何傳遞至建構函式的外掛程式都會在回合成功完成時呼叫其 BotState.saveChanges() 方法。

此範例顯示用於讀取和寫入 Bot 內交談和使用者狀態的未定案程式碼:

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!
   });
});

建構函式

AutoSaveStateMiddleware(BotState[])

建立新的 AutoSaveStateMiddleware 實例。

屬性

botStateSet

自動儲存的 BotState 外掛程式集。

方法

add(BotState[])

新增要儲存的其他 BotState 外掛程式。

onTurn(TurnContext, () => Promise<void>)

例如,配接器 (呼叫, BotFrameworkAdapter 在執行時間) 以處理輸入 活動

建構函式詳細資料

AutoSaveStateMiddleware(BotState[])

建立新的 AutoSaveStateMiddleware 實例。

new AutoSaveStateMiddleware(botStates: BotState[])

參數

botStates

BotState[]

一或多個 BotState 外掛程式,可在回合結束時自動儲存。

屬性詳細資料

botStateSet

自動儲存的 BotState 外掛程式集。

botStateSet: 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>