Freigeben über


AutoSaveStateMiddleware class

Middleware, die alle Zustandsänderungen automatisch am Ende der Reihe speichert.

Hinweise

Die AutoSaveStateMiddleware-Klasse sollte am Anfang des Middleware-Stapels Ihres Bots vor allen anderen Komponenten hinzugefügt werden, die den Zustand verwenden. Alle an den Konstruktor übergebenen BotState Plug-Ins haben ihre BotState.saveChanges() Methode, die nach erfolgreichem Abschluss der Drehung aufgerufen wird.

Dieses Beispiel zeigt Codebausteine zum Lesen und Schreiben von Unterhaltungen und Benutzerzuständen in einem 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!
   });
});

Konstruktoren

AutoSaveStateMiddleware(BotState[])

Erstellt eine neue AutoSaveStateMiddleware-Instanz.

Eigenschaften

botStateSet

Satz von BotState Plug-Ins automatisch gespeichert werden.

Methoden

add(BotState[])

Fügt zusätzliche BotState Plug-Ins hinzu, die gespeichert werden sollen.

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

Wird vom Adapter (z. B. ein BotFrameworkAdapter) zur Laufzeit aufgerufen, um ein eingehendes Activityzu verarbeiten.

Details zum Konstruktor

AutoSaveStateMiddleware(BotState[])

Erstellt eine neue AutoSaveStateMiddleware-Instanz.

new AutoSaveStateMiddleware(botStates: BotState[])

Parameter

botStates

BotState[]

Mindestens ein BotState-Plug-In, das am Ende der Reihe automatisch gespeichert werden soll.

Details zur Eigenschaft

botStateSet

Satz von BotState Plug-Ins automatisch gespeichert werden.

botStateSet: BotStateSet

Eigenschaftswert

Details zur Methode

add(BotState[])

Fügt zusätzliche BotState Plug-Ins hinzu, die gespeichert werden sollen.

function add(botStates: BotState[]): this

Parameter

botStates

BotState[]

Mindestens ein BotState-Plug-In, das hinzugefügt werden soll.

Gibt zurück

this

Das aktualisierte BotStateSet-Objekt.

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

Wird vom Adapter (z. B. ein BotFrameworkAdapter) zur Laufzeit aufgerufen, um ein eingehendes Activityzu verarbeiten.

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

Parameter

context
TurnContext

Das Kontextobjekt für diese Drehung.

next

() => Promise<void>

Die nächste Stellvertretungsfunktion.

Gibt zurück

Promise<void>