Freigeben über


DialogStateManager class

DialogStateManager verwaltet Speicherbereiche und Pfadlöser.

Hinweise

MemoryScopes sind Objekte auf Stammebene, die entweder im Dialogkontext oder im Deaktiviert-Zustand vorhanden sein können. Pfadlöser ermöglichen das Verknüpfungsverhalten zum Zuordnen von Dingen wie $foo –> dialog.foo

Konstruktoren

DialogStateManager(DialogContext, DialogStateManagerConfiguration)

Initialisiert eine neue Instanz der DialogStateManager-Klasse .

Eigenschaften

configuration

Ruft die konfigurierten Pfadlöser und Speicherbereiche für den Dialogstatus-Manager ab oder legt diese fest.

Methoden

anyPathChanged(number, string[])

Überprüfen Sie, ob sich ein Pfad seit dem Wasserzeichen geändert hat.

deleteScopesMemory(string)

Löscht den gesamten Sicherungsspeicher für einen bestimmten Bereich.

deleteValue(string)

Eigenschaft aus dem Arbeitsspeicher löschen

getMemorySnapshot()

Ruft alle Speicherbereiche ab, die für die Protokollierung geeignet sind.

getValue<T>(string, T | () => T)

Rufen Sie den Wert mithilfe des Pfadausdrucks aus dem Arbeitsspeicher ab.

loadAllScopes()

Stellt sicher, dass alle Speicherbereiche für den aktuellen Turn geladen wurden.

parsePath(string, boolean)

Normalisiert die Pfadsegmente eines übergebenen Pfads.

saveAllChanges()

Speichert alle Änderungen, die an Speicherbereichen vorgenommen wurden.

setValue(string, any)

Legen Sie Arbeitsspeicher auf Wert fest.

trackPaths(string[])

Nachverfolgen, wann bestimmte Pfade geändert werden.

transformPath(string)

Transformieren Sie den Pfad mithilfe der registrierten Pfadtransformatoren.

version()

Ruft die Versionsnummer ab.

Details zum Konstruktor

DialogStateManager(DialogContext, DialogStateManagerConfiguration)

Initialisiert eine neue Instanz der DialogStateManager-Klasse .

new DialogStateManager(dc: DialogContext, configuration?: DialogStateManagerConfiguration)

Parameter

dc
DialogContext

Der Dialogkontext für den aktuellen Gesprächsverlauf.

configuration
DialogStateManagerConfiguration

Konfiguration für den Dialogstatus-Manager.

Details zur Eigenschaft

configuration

Ruft die konfigurierten Pfadlöser und Speicherbereiche für den Dialogstatus-Manager ab oder legt diese fest.

configuration: DialogStateManagerConfiguration

Eigenschaftswert

Hinweise

Es gibt einen einzelnen Satz von Konfigurationsinformationen für eine bestimmte Kette von Dialogkontexten. Durch Zuweisen einer neuen Konfiguration zu einem DialogStateManager innerhalb der Kette wird die Konfiguration für die gesamte Kette aktualisiert.

Details zur Methode

anyPathChanged(number, string[])

Überprüfen Sie, ob sich ein Pfad seit dem Wasserzeichen geändert hat.

function anyPathChanged(counter: number, paths: string[]): boolean

Parameter

counter

number

Zu vergleichende Zeitzähler.

paths

string[]

Zu überprüfende Pfade von trackPaths()

Gibt zurück

boolean

True, wenn sich ein Pfad seit dem Zähler geändert hat.

deleteScopesMemory(string)

Löscht den gesamten Sicherungsspeicher für einen bestimmten Bereich.

function deleteScopesMemory(name: string): Promise<void>

Parameter

name

string

Name des Bereichs.

Gibt zurück

Promise<void>

deleteValue(string)

Eigenschaft aus dem Arbeitsspeicher löschen

function deleteValue(pathExpression: string)

Parameter

pathExpression

string

Die zu entfernende Leaf-Eigenschaft.

getMemorySnapshot()

Ruft alle Speicherbereiche ab, die für die Protokollierung geeignet sind.

function getMemorySnapshot(): object

Gibt zurück

object

Objekt, das alle Speicherbereiche darstellt.

getValue<T>(string, T | () => T)

Rufen Sie den Wert mithilfe des Pfadausdrucks aus dem Arbeitsspeicher ab.

function getValue<T>(pathExpression: string, defaultValue?: T | () => T): T

Parameter

pathExpression

string

Zu verwendende Pfadausdruck.

defaultValue

T | () => T

(Optional) Standardwert, der verwendet werden soll, wenn der Pfad nicht gefunden wird. Kann eine Funktion sein, die den zu verwendenden Standardwert zurückgibt.

Gibt zurück

T

Der gefundene Wert oder undefiniert, wenn nicht gefunden und nicht defaultValue angegeben.

Hinweise

Dadurch wird immer ein CLONE des Arbeitsspeichers zurückgegeben. Änderungen am Ergebnis wirken sich nicht auf den Arbeitsspeicher aus.

loadAllScopes()

Stellt sicher, dass alle Speicherbereiche für den aktuellen Turn geladen wurden.

function loadAllScopes(): Promise<void>

Gibt zurück

Promise<void>

Hinweise

Dies sollte am Anfang des Turnes aufgerufen werden.

parsePath(string, boolean)

Normalisiert die Pfadsegmente eines übergebenen Pfads.

function parsePath(pathExpression: string, allowNestedPaths?: boolean): string | number[]

Parameter

pathExpression

string

Der zu normalisierende Pfad.

allowNestedPaths

boolean

Optional. Wenn false dann die Erkennung eines geschachtelten Pfads dazu führt, dass ein leerer Pfad zurückgegeben wird. Standardmäßig wird "true" festgelegt.

Gibt zurück

string | number[]

Der normalisierte Pfad.

Hinweise

Ein Pfad von profile.address[0] wird in profile.address.0normalisiert.

saveAllChanges()

Speichert alle Änderungen, die an Speicherbereichen vorgenommen wurden.

function saveAllChanges(): Promise<void>

Gibt zurück

Promise<void>

Hinweise

Dies sollte am Ende des Umdrehens aufgerufen werden.

setValue(string, any)

Legen Sie Arbeitsspeicher auf Wert fest.

function setValue(pathExpression: string, value: any)

Parameter

pathExpression

string

Pfad zum Arbeitsspeicher.

value

any

Der festzulegende Wert.

trackPaths(string[])

Nachverfolgen, wann bestimmte Pfade geändert werden.

function trackPaths(paths: string[]): string[]

Parameter

paths

string[]

Zu verfolgende Pfade.

Gibt zurück

string[]

Normalisierte Pfade, die an anyPathChanged()übergeben werden sollen.

transformPath(string)

Transformieren Sie den Pfad mithilfe der registrierten Pfadtransformatoren.

function transformPath(pathExpression: string): string

Parameter

pathExpression

string

Der Pfad, der transformiert werden soll.

Gibt zurück

string

Der transformierte Pfad.

version()

Ruft die Versionsnummer ab.

function version(): string

Gibt zurück

string

Eine Zeichenfolge mit der Versionsnummer.