Поделиться через


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

Конструкторы

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>