Freigeben über


WaterfallStepContext class

Kontextobjekt, das an eine WaterfallStepübergeben wurde.

Extends

Konstruktoren

WaterfallStepContext(DialogContext, WaterfallStepInfo<O>)

Erstellt eine neue WasserfallStepContext-Instanz.

Eigenschaften

activeDialog
child
dialogManager
index

Der Index des aktuellen Wasserfallschritts, der ausgeführt wird.

options

Alle Optionen, die beim Start mit DialogContext.beginDialog()an das Dialogfeld "Wasserfallschritt" übergeben wurden.

reason

Der Grund, warum der Wasserfallschritt ausgeführt wird.

result

Ergebnisse, die von einem Dialogfeld oder einer Eingabeaufforderung zurückgegeben wurden, die im vorherigen Wasserfallschritt aufgerufen wurde.

values

Ein Wörterbuch mit Werten, das in allen Wasserfallschritten beibehalten wird.

Geerbte Eigenschaften

context

Ruft das Kontextobjekt für die Drehung ab.

dialogs

Ruft die Dialogfelder ab, die direkt aus diesem Kontext aufgerufen werden können.

parent

Der übergeordnete Dialogfeldkontext für diesen Dialogfeldkontext oder undefined, wenn dieser Kontext nicht über ein übergeordnetes Element verfügt.

services

Ruft die Dienstauflistung ab, die kontextbezogen mit diesem Dialogfeldkontext ist.

stack

Ruft den aktuellen Dialogstapel ab.

state

Ruft den DialogStateManager ab, der die Ansicht aller Speicherbereiche verwaltet.

Methoden

next(any)

Springt zum nächsten Wasserfallschritt.

Geerbte Methoden

beginDialog(string, object)

Startet eine Dialoginstanz und verschiebt sie auf den Dialogstapel. Erstellt eine neue Instanz des Dialogfelds und verschiebt sie auf den Stapel.

cancelAllDialogs(boolean, string, any)

Bricht alle Dialogfelder im Dialogfeldstapel ab und löscht Stapel.

continueDialog()

Setzt die Ausführung des aktiven Dialogfelds fort, falls vorhanden, durch Übergeben dieses Dialogfeldkontexts an die Dialog.continueDialog-Methode.

emitEvent(string, any, boolean, boolean)

Sucht nach einem Dialogfeld mit einer bestimmten ID.

endDialog(any)

Beendet ein Dialogfeld und füllt es aus dem Stapel. Gibt ein optionales Ergebnis an das übergeordnete Element des Dialogfelds zurück.

findDialog(string)

Sucht nach einem Dialogfeld mit einer bestimmten ID.

getLocale()

Rufen Sie die CultureInfo in DialogContext ab.

prompt(string, string | Partial<Activity> | PromptOptions)

Hilfsfunktion zum Vereinfachen der Formatierung der Optionen zum Aufrufen eines Eingabeaufforderungsdialogfelds.

prompt(string, string | Partial<Activity> | PromptOptions, string | Choice[])

Hilfsfunktion zum Vereinfachen der Formatierung der Optionen zum Aufrufen eines Eingabeaufforderungsdialogfelds.

replaceDialog(string, object)

Beendet das aktive Dialogfeld und startet ein neues Dialogfeld an seiner Stelle.

repromptDialog()

Fordert das aktive Dialogfeld an, den Benutzer erneut zur Eingabe aufzufordern.

Details zum Konstruktor

WaterfallStepContext(DialogContext, WaterfallStepInfo<O>)

Erstellt eine neue WasserfallStepContext-Instanz.

new WaterfallStepContext(dc: DialogContext, info: WaterfallStepInfo<O>)

Parameter

dc
DialogContext

Der Dialogkontext für die aktuelle Unterhaltungswende.

info

WaterfallStepInfo<O>

Werte, mit der der Schrittkontext initialisiert werden soll.

Details zur Eigenschaft

activeDialog

DialogInstance | undefined activeDialog

Eigenschaftswert

DialogInstance | undefined

Die Statusinformationen für das Dialogfeld oben im Dialogfeldstapel oder undefined, wenn der Stapel leer ist.

child

DialogContext | undefined child

Eigenschaftswert

DialogContext | undefined

Dialogfeldkontext für untergeordnete Elemente, wenn das aktive Dialogfeld ein Container ist.

dialogManager

Warnung

Diese API ist nun veraltet.

This property serves no function.

DialogManager dialogManager

Eigenschaftswert

Die aktuelle Dialog-Manager-Instanz. Diese Eigenschaft ist veraltet.

index

Der Index des aktuellen Wasserfallschritts, der ausgeführt wird.

number index

Eigenschaftswert

number

Der Index des aktuellen Wasserfallschritts, der ausgeführt wird.

options

Alle Optionen, die beim Start mit DialogContext.beginDialog()an das Dialogfeld "Wasserfallschritt" übergeben wurden.

O options

Eigenschaftswert

O

Alle Optionen, mit der das Wasserfalldialogfeld aufgerufen wurde.

reason

Der Grund, warum der Wasserfallschritt ausgeführt wird.

DialogReason reason

Eigenschaftswert

Der Grund, warum der Wasserfallschritt ausgeführt wird.

result

Ergebnisse, die von einem Dialogfeld oder einer Eingabeaufforderung zurückgegeben wurden, die im vorherigen Wasserfallschritt aufgerufen wurde.

any result

Eigenschaftswert

any

Das Ergebnis aus dem vorherigen Wasserfallschritt.

values

Ein Wörterbuch mit Werten, das in allen Wasserfallschritten beibehalten wird.

object values

Eigenschaftswert

object

Ein Wörterbuch mit Werten, das in allen Wasserfallschritten beibehalten wird.

Geerbte Eigenschaftsdetails

context

Ruft das Kontextobjekt für die Drehung ab.

context: TurnContext

Eigenschaftswert

TurnContext

vonDialogContext.context geerbt

dialogs

Ruft die Dialogfelder ab, die direkt aus diesem Kontext aufgerufen werden können.

dialogs: DialogSet

Eigenschaftswert

vonDialogContext.dialogs geerbt

parent

Der übergeordnete Dialogfeldkontext für diesen Dialogfeldkontext oder undefined, wenn dieser Kontext nicht über ein übergeordnetes Element verfügt.

parent: DialogContext | undefined

Eigenschaftswert

DialogContext | undefined

Hinweise

Wenn versucht wird, ein Dialogfeld zu starten, sucht der Dialogfeldkontext in den Dialogfeldernnach dem Dialog.id. Wenn das zu startende Dialogfeld in diesem Dialogfeldkontext nicht gefunden wird, sucht es im übergeordneten Dialogfeldkontext usw.

geerbt vonDialogContext.parent-

services

Ruft die Dienstauflistung ab, die kontextbezogen mit diesem Dialogfeldkontext ist.

services: TurnContextStateCollection

Eigenschaftswert

TurnContextStateCollection

vonDialogContext.services geerbt

stack

Ruft den aktuellen Dialogstapel ab.

stack: DialogInstance[]

Eigenschaftswert

vonDialogContext.stack geerbt

state

Ruft den DialogStateManager ab, der die Ansicht aller Speicherbereiche verwaltet.

state: DialogStateManager

Eigenschaftswert

geerbt vonDialogContext.state

Details zur Methode

next(any)

Springt zum nächsten Wasserfallschritt.

function next(result?: any): Promise<DialogTurnResult>

Parameter

result

any

(Optional) Ergebnis, das an den nächsten Schritt übergeben werden soll.

Gibt zurück

Promise<DialogTurnResult>

Eine Zusage mit dem DialogTurnResult.

Hinweise

return await step.skip();

Details zur geerbten Methode

beginDialog(string, object)

Startet eine Dialoginstanz und verschiebt sie auf den Dialogstapel. Erstellt eine neue Instanz des Dialogfelds und verschiebt sie auf den Stapel.

function beginDialog(dialogId: string, options?: object): Promise<DialogTurnResult>

Parameter

dialogId

string

ID des zu startenden Dialogfelds.

options

object

Wahlfrei. Argumente, die beim Start in das Dialogfeld übergeben werden sollen.

Gibt zurück

Promise<DialogTurnResult>

eine Zusage, die in das Dialogdrehergebnis aufgelöst wird.

Hinweise

Wenn bereits ein aktives Dialogfeld im Stapel vorhanden ist, wird dieses Dialogfeld angehalten, bis es wieder das obere Dialogfeld im Stapel ist.

Der Status des zurückgegebenen Objekts beschreibt den Status des Dialogstapels, nachdem diese Methode abgeschlossen wurde.

Diese Methode löst eine Ausnahme aus, wenn das angeforderte Dialogfeld in diesem Dialogfeldkontext oder einem seiner Vorgänger nicht gefunden werden kann.

Zum Beispiel:

const result = await dc.beginDialog('greeting', { name: user.name });

Siehe auch

geerbt vonDialogContext.beginDialog

cancelAllDialogs(boolean, string, any)

Bricht alle Dialogfelder im Dialogfeldstapel ab und löscht Stapel.

function cancelAllDialogs(cancelParents?: boolean, eventName?: string, eventValue?: any): Promise<DialogTurnResult>

Parameter

cancelParents

boolean

Wahlfrei. Wenn true alle übergeordneten Dialogfelder ebenfalls abgebrochen werden.

eventName

string

Wahlfrei. Der Name eines benutzerdefinierten Ereignisses, das als Dialogfelder ausgelöst werden soll, wird abgebrochen. Dies wird standardmäßig auf cancelDialog-festgelegt.

eventValue

any

Wahlfrei. Wert, der zusammen mit einem benutzerdefinierten Abbruchereignis übergeben werden soll.

Gibt zurück

Promise<DialogTurnResult>

eine Zusage, die in das Dialogdrehergebnis aufgelöst wird.

Hinweise

Dadurch wird die Dialog.endDialog-Methode jedes Dialogfelds aufgerufen, bevor das Dialogfeld aus dem Stapel entfernt wird.

Wenn anfänglich Dialogfelder im Stapel vorhanden waren, wird der Status des Rückgabewerts abgebrochen; andernfalls ist es leer.

In diesem Beispiel wird ein Dialogfeldstapel gelöscht, dc, bevor ein Dialogfeld "bookFlight" gestartet wird.

await dc.cancelAllDialogs();
return await dc.beginDialog('bookFlight');

Siehe auch

vonDialogContext.cancelAllDialogs geerbt

continueDialog()

Setzt die Ausführung des aktiven Dialogfelds fort, falls vorhanden, durch Übergeben dieses Dialogfeldkontexts an die Dialog.continueDialog-Methode.

function continueDialog(): Promise<DialogTurnResult>

Gibt zurück

Promise<DialogTurnResult>

eine Zusage, die in das Dialogdrehergebnis aufgelöst wird.

Hinweise

Nach Abschluss des Aufrufs können Sie die des Turnkontexts Eigenschaft überprüfen, um festzustellen, ob das Dialogfeld eine Antwort an den Benutzer gesendet hat.

Der Status des zurückgegebenen Objekts beschreibt den Status des Dialogstapels, nachdem diese Methode abgeschlossen wurde.

In der Regel würden Sie dies innerhalb des Turnhandlers Ihres Bots aufrufen.

Zum Beispiel:

const result = await dc.continueDialog();
if (result.status == DialogTurnStatus.empty && dc.context.activity.type == ActivityTypes.message) {
    // Send fallback message
    await dc.context.sendActivity(`I'm sorry. I didn't understand.`);
}

geerbt vonDialogContext.continueDialog

emitEvent(string, any, boolean, boolean)

Sucht nach einem Dialogfeld mit einer bestimmten ID.

function emitEvent(name: string, value?: any, bubble?: boolean, fromLeaf?: boolean): Promise<boolean>

Parameter

name

string

Der Name des ereignisses, das ausgelöst werden soll.

value

any

Wahlfrei. Wert, der zusammen mit dem Ereignis gesendet werden soll.

bubble

boolean

Wahlfrei. Kennzeichnen Sie, um zu steuern, ob das Ereignis an das übergeordnete Element übergeben werden soll, wenn es nicht lokal behandelt wird. Der Standardwert ist ein Wert von true.

fromLeaf

boolean

Wahlfrei. Gibt an, ob das Ereignis von einem Blattknoten ausgegeben wird.

Gibt zurück

Promise<boolean>

true, ob das Ereignis behandelt wurde.

Hinweise

Gibt ein benanntes Ereignis für das aktuelle Dialogfeld oder eine Person aus, die es gestartet hat, um dies zu behandeln.

geerbt vonDialogContext.emitEvent-

endDialog(any)

Beendet ein Dialogfeld und füllt es aus dem Stapel. Gibt ein optionales Ergebnis an das übergeordnete Element des Dialogfelds zurück.

function endDialog(result?: any): Promise<DialogTurnResult>

Parameter

result

any

Wahlfrei. Ein Ergebnis, das an die übergeordnete Logik übergeben werden soll. Dies kann das nächste Dialogfeld im Stapel sein, oder wenn es sich um das letzte Dialogfeld im Stapel, einen übergeordneten Dialogkontext oder den Turnhandler des Bots handelt.

Gibt zurück

Promise<DialogTurnResult>

eine Zusage, die in das Dialogdrehergebnis aufgelöst wird.

Hinweise

Das dialogfeld übergeordneten ist das nächste Dialogfeld im Dialogstapel, falls vorhanden. Diese Methode ruft die Dialog.resumeDialog-Methode des übergeordneten Elements auf und übergibt das vom endeden Dialogfeld zurückgegebene Ergebnis. Wenn kein übergeordnetes Dialogfeld vorhanden ist, endet die Drehung, und das Ergebnis steht dem Bot über das Ergebnis des zurückgegebenen Objekts Eigenschaft zur Verfügung.

Der Status des zurückgegebenen Objekts beschreibt den Status des Dialogstapels, nachdem diese Methode abgeschlossen wurde.

In der Regel würden Sie dies aus der Logik für ein bestimmtes Dialogfeld aufrufen, um wieder in den Dialogkontext zurückzukehren, den das Dialogfeld abgeschlossen hat, das Dialogfeld sollte aus dem Stapel entfernt werden, und das übergeordnete Dialogfeld sollte fortgesetzt werden.

Zum Beispiel:

return await dc.endDialog(returnValue);

Siehe auch

geerbt vonDialogContext.endDialog

findDialog(string)

Sucht nach einem Dialogfeld mit einer bestimmten ID.

function findDialog(dialogId: string): Dialog | undefined

Parameter

dialogId

string

ID des dialogfelds, nach dem gesucht werden soll.

Gibt zurück

Dialog | undefined

Das Dialogfeld für die angegebene ID.

Hinweise

Wenn das zu startende Dialogfeld im DialogSet diesem Dialogfeldkontext nicht gefunden wird, wird versucht, das Dialogfeld im übergeordneten Dialogfeldkontext zu finden.

Siehe auch

Geerbt vonDialogContext.findDialog

getLocale()

Rufen Sie die CultureInfo in DialogContext ab.

function getLocale(): string

Gibt zurück

string

eine Gebietsschemazeichenfolge.

geerbt vonDialogContext.getLocale

prompt(string, string | Partial<Activity> | PromptOptions)

Hilfsfunktion zum Vereinfachen der Formatierung der Optionen zum Aufrufen eines Eingabeaufforderungsdialogfelds.

function prompt(dialogId: string, promptOrOptions: string | Partial<Activity> | PromptOptions): Promise<DialogTurnResult>

Parameter

dialogId

string

ID des zu startenden Eingabeaufforderungsdialogfelds.

promptOrOptions

string | Partial<Activity> | PromptOptions

Der Text der anfänglichen Eingabeaufforderung, um den Benutzer zu senden, die Aktivität, die als erste Eingabeaufforderung gesendet werden soll, oder das Objekt, mit dem das Eingabeaufforderungsdialogfeld formatiert werden soll.

Gibt zurück

Promise<DialogTurnResult>

Hinweise

Diese Hilfsmethode formatiert das Objekt, das als options-Parameter verwendet werden soll, und ruft dann beginDialog- auf, um das angegebene Eingabeaufforderungsdialogfeld zu starten.

return await dc.prompt('confirmPrompt', `Are you sure you'd like to quit?`);

vonDialogContext.prompt geerbt

prompt(string, string | Partial<Activity> | PromptOptions, string | Choice[])

Hilfsfunktion zum Vereinfachen der Formatierung der Optionen zum Aufrufen eines Eingabeaufforderungsdialogfelds.

function prompt(dialogId: string, promptOrOptions: string | Partial<Activity> | PromptOptions, choices: string | Choice[]): Promise<DialogTurnResult>

Parameter

dialogId

string

ID des zu startenden Eingabeaufforderungsdialogfelds.

promptOrOptions

string | Partial<Activity> | PromptOptions

Der Text der ersten Eingabeaufforderung, die der Benutzer senden soll, die Aktivität, die als erste Eingabeaufforderung gesendet werden soll, oder das Objekt, mit dem das Eingabeaufforderungsdialogfeld formatiert werden soll.

choices

string | Choice[]

Wahlfrei. Array von Auswahlmöglichkeiten für den Benutzer, für die Verwendung mit einem ChoicePrompt.

Gibt zurück

Promise<DialogTurnResult>

Hinweise

Diese Hilfsmethode formatiert das Objekt, das als options-Parameter verwendet werden soll, und ruft dann beginDialog- auf, um das angegebene Eingabeaufforderungsdialogfeld zu starten.

return await dc.prompt('confirmPrompt', `Are you sure you'd like to quit?`);

vonDialogContext.prompt geerbt

replaceDialog(string, object)

Beendet das aktive Dialogfeld und startet ein neues Dialogfeld an seiner Stelle.

function replaceDialog(dialogId: string, options?: object): Promise<DialogTurnResult>

Parameter

dialogId

string

ID des zu startenden Dialogfelds.

options

object

Wahlfrei. Argumente, die beim Start in das neue Dialogfeld übergeben werden sollen.

Gibt zurück

Promise<DialogTurnResult>

eine Zusage, die in das Dialogdrehergebnis aufgelöst wird.

Hinweise

Dies ist besonders hilfreich, um eine Schleife zu erstellen oder an ein anderes Dialogfeld umzuleiten.

Der Status des zurückgegebenen Objekts beschreibt den Status des Dialogstapels, nachdem diese Methode abgeschlossen wurde.

Diese Methode ähnelt dem Beenden des aktuellen Dialogfelds und dem sofortigen Starten des neuen Dialogfelds. Das übergeordnete Dialogfeld wird jedoch weder fortgesetzt noch anderweitig benachrichtigt.

Siehe auch

Geerbt vonDialogContext.replaceDialog

repromptDialog()

Fordert das aktive Dialogfeld an, den Benutzer erneut zur Eingabe aufzufordern.

function repromptDialog(): Promise<void>

Gibt zurück

Promise<void>

Hinweise

Dadurch wird die repromptDialog Methode des aktiven Dialogfelds aufgerufen.

Zum Beispiel:

await dc.repromptDialog();

vonDialogContext.repromptDialog