AutoSaveStateMiddleware class

Middleware que guardará automáticamente los cambios de estado al final del turno.

Comentarios

La AutoSaveStateMiddleware clase debe agregarse hacia la parte superior de la pila de middleware del bot, antes de cualquier otro componente que use el estado. Los complementos BotState pasados al constructor tendrán su método BotState.saveChanges() llamado después de completar correctamente el turno.

En este ejemplo se muestra código reutilizable para leer y escribir conversaciones y estado de usuario dentro de un 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!
   });
});

Constructores

AutoSaveStateMiddleware(BotState[])

Crea una nueva instancia de AutoSaveStateMiddleware.

Propiedades

botStateSet

Conjunto de complementos de BotState que se guardan automáticamente.

Métodos

add(BotState[])

Agrega complementos de BotState adicionales que se van a guardar.

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

Lo llama el adaptador (por ejemplo, un BotFrameworkAdapter) en tiempo de ejecución para procesar una actividad de entrante.

Detalles del constructor

AutoSaveStateMiddleware(BotState[])

Crea una nueva instancia de AutoSaveStateMiddleware.

new AutoSaveStateMiddleware(botStates: BotState[])

Parámetros

botStates

BotState[]

Uno o varios complementos de BotState para guardar automáticamente al final del turno.

Detalles de las propiedades

botStateSet

Conjunto de complementos de BotState que se guardan automáticamente.

botStateSet: BotStateSet

Valor de propiedad

Detalles del método

add(BotState[])

Agrega complementos de BotState adicionales que se van a guardar.

function add(botStates: BotState[]): this

Parámetros

botStates

BotState[]

Uno o varios complementos de BotState que se van a agregar.

Devoluciones

this

Objeto BotStateSet actualizado.

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

Lo llama el adaptador (por ejemplo, un BotFrameworkAdapter) en tiempo de ejecución para procesar una actividad de entrante.

function onTurn(context: TurnContext, next: () => Promise<void>): Promise<void>

Parámetros

context
TurnContext

Objeto de contexto para este turno.

next

() => Promise<void>

La siguiente función de delegado.

Devoluciones

Promise<void>