CommandDialog class

veraltete stattdessen ein IntentDialog- verwenden.

Extends

Methoden

addDialogTrigger(ActionSet, string)

Wird einmal für jedes Dialogfeld in einer Bibliothek aufgerufen, um dem Dialogfeld die Möglichkeit zu geben, dem globalen Bibliotheksaktionssatz seine triggerAction() hinzuzufügen. Diese Trigger werden einem beginDialogAction() zugeordnet, der das Dialogfeld startet, wenn die Triggerbedingung erfüllt ist.

begin<T>(Session, T)

Wird aufgerufen, wenn eine neue Dialogsitzung gestartet wird.

beginDialogAction(string, string, IBeginDialogActionOptions)

Bindet eine Aktion an das Dialogfeld, das ein weiteres Dialogfeld startet, wenn es ausgelöst wird. Das neue Dialogfeld wird auf den Stapel verschoben, sodass der aktuelle Vorgang nicht automatisch beendet wird. Die aktuelle Aufgabe wird fortgesetzt, sobald das neue Dialogfeld endet. Die integrierten Eingabeaufforderungen werden den Benutzer automatisch erneut auffordern, sobald dies geschieht, aber dieses Verhalten kann deaktiviert werden, indem das promptAfterAction Flag beim Aufrufen einer integrierten Eingabeaufforderung festgelegt wird.

cancelAction(string, TextOrMessageType, ICancelActionOptions)

Bindet eine Aktion an das Dialogfeld, das das Dialogfeld bei jedem Auslösen abbricht. Wenn der Vorgang abgebrochen wurde, werden die übergeordneten Dialogfelder mit einem fortgesetzt Code fortgesetzt, der angibt, dass es abgebrochenwurde.

clone(ActionSet)

Gibt einen Klon eines vorhandenen ActionSet zurück.

customAction(IDialogActionOptions)

Bindet eine benutzerdefinierte Aktion an das Dialogfeld, das beim Auslösen der übergebenen onSelectAction--Handlers übergeben wird.

dialogInterrupted(Session, string, any)

Wird aufgerufen, wenn ein Stammdialogfeld durch ein anderes Dialogfeld unterbrochen wird. Dadurch wird das Dialogfeld, das unterbrochen wird, die Möglichkeit gegeben, benutzerdefinierte Logik auszuführen, bevor sie aus dem Stapel entfernt wird. Das Dialogfeld selbst ist dafür verantwortlich, den Dialogstapel zu löschen und das neue Dialogfeld zu starten.

dialogResumed<T>(Session, IDialogResult<T>)

Ein untergeordnetes Dialogfeld wurde beendet, und das aktuelle Dialogfeld wird fortgesetzt.

endConversationAction(string, TextOrMessageType, ICancelActionOptions)

Bindet eine Aktion, die die Unterhaltung mit dem Benutzer beendet, wenn sie ausgelöst wird.

findActionRoutes(IRecognizeDialogContext, (err: Error, results: IRouteResult[]) => void)

Wird während des Library.findRoutes() aufgerufen, Aufruf für jedes Dialogfeld im Stapel, um festzustellen, ob eine der Dialogfeldaktionen von den Benutzern ausgelöst wird.

recognize(IRecognizeDialogContext, (err: Error, result: IRecognizeResult) => void)

Analysiert die Äußerung der Benutzer und weist eine Bewertung von 0,0 - 1,0 zu, die angibt, wie sicher das Dialogfeld ist, dass er die Äußerung der Benutzer verstanden hat. Diese Methode wird immer für das aktive Dialogfeld im Stapel aufgerufen. Eine Punktzahl von 1,0 zeigt eine perfekte Übereinstimmung an und beendet jede weitere Erkennung. Wenn die Bewertung kleiner als 1,0 ist, weist jedes Dialogfeld im Stapel seine recognizeAction() Methode auf, um festzustellen, ob benannte Aktionen an das Dialogfeld gebunden sind, die den Benutzern besser entsprechen. Globale Aktionen, die auf Bot-Ebene registriert sind, werden ebenfalls ausgewertet. Wenn das Dialogfeld eine Höhere Bewertung aufweist, werden die Dialogfelder replyReceived() Methode aufgerufen, wobei das ergebnisobjekt aufgerufen wird, das vom Erkennungsaufruf zurückgegeben wird. Auf diese Weise kann das Dialogfeld zusätzliche Daten übergeben, die während der Erkennungsphase an die replyReceived()-Methode zur Behandlung gesammelt werden.

Sollte eine Aktion mit einer höheren Bewertung vorhanden sein, wird die Aktion anstelle der Dialoge replyReceived()-Methode aufgerufen. Das Dialogfeld bleibt im Stapel und kann an einem bestimmten Punkt fortgesetzt werden, wenn die Aktion ein neues Dialogfeld aufruft, sodass Dialogfelder auf unerwartete Aufrufe an dialogResumed()vorbereiten sollten.

reloadAction(string, TextOrMessageType, IBeginDialogActionOptions)

Bindet eine Aktion an das Dialogfeld, das bewirkt, dass das Dialogfeld bei jedem Auslösen erneut geladen wird. Dies ist nützlich, um Logik zu implementieren, die Benutzerutterancen wie "Start over" behandelt.

replyReceived(Session, IRecognizeResult)
selectActionRoute(Session, IRouteResult)

Wählt die Route mit dem höchsten Konfidenzwert für die Äußerung aus.

triggerAction(ITriggerActionOptions)

Bindet eine Aktion an das Dialogfeld, das es zum aktiven Dialogfeld macht, wenn es ausgelöst wird. Das Standardverhalten besteht darin, ein vorhandenes Dialogfeld durch Löschen des Stapels und Starten des Dialogfelds am Stamm des Stapels zu interupieren. Das zu unterbrechende Dialogfeld kann diese Unterbrechung abfangen, indem ein benutzerdefinierter onInterrupted-Handler zu den Triggeraktionsoptionen hinzugefügt wird. Darüber hinaus können Sie die Art und Weise anpassen, wie das ausgelöste Dialogfeld gestartet wird, indem Sie eine benutzerdefinierte onSelectAction Handler für die Triggeraktionsoptionen bereitstellen.

Details zur Methode

addDialogTrigger(ActionSet, string)

Wird einmal für jedes Dialogfeld in einer Bibliothek aufgerufen, um dem Dialogfeld die Möglichkeit zu geben, dem globalen Bibliotheksaktionssatz seine triggerAction() hinzuzufügen. Diese Trigger werden einem beginDialogAction() zugeordnet, der das Dialogfeld startet, wenn die Triggerbedingung erfüllt ist.

function addDialogTrigger(actions: ActionSet, dialogId: string)

Parameter

actions
ActionSet

Globaler Aktionssatz "Bibliotheken".

dialogId

string

Die vollqualifizierte ID des auszulösenden Dialogfelds.

begin<T>(Session, T)

Wird aufgerufen, wenn eine neue Dialogsitzung gestartet wird.

function begin<T>(session: Session, args?: T)

Parameter

session
Session

Session-Objekt für die aktuelle Unterhaltung.

args

T

(Optional) Argumente, die vom übergeordneten Element an das Dialogfeld übergeben werden.

beginDialogAction(string, string, IBeginDialogActionOptions)

Bindet eine Aktion an das Dialogfeld, das ein weiteres Dialogfeld startet, wenn es ausgelöst wird. Das neue Dialogfeld wird auf den Stapel verschoben, sodass der aktuelle Vorgang nicht automatisch beendet wird. Die aktuelle Aufgabe wird fortgesetzt, sobald das neue Dialogfeld endet. Die integrierten Eingabeaufforderungen werden den Benutzer automatisch erneut auffordern, sobald dies geschieht, aber dieses Verhalten kann deaktiviert werden, indem das promptAfterAction Flag beim Aufrufen einer integrierten Eingabeaufforderung festgelegt wird.

function beginDialogAction(name: string, id: string, options?: IBeginDialogActionOptions)

Parameter

name

string

Eindeutiger Name zum Zuweisen der Aktion.

id

string

ID des zu startenden Dialogfelds.

options
IBeginDialogActionOptions

(Optional) Optionen, die zum Konfigurieren der Aktion verwendet werden. Wenn Übereinstimmungen angegeben ist, lauscht der Benutzer auf ein Wort oder einen Ausdruck, der die Aktion auslöst, andernfalls muss die Aktion mit CardAction.dialogAction() an eine Schaltfläche gebunden werden, die Aktion auszulösen. Sie können auch dialogArgs verwenden, um zusätzliche Params an das zu startende Dialogfeld zu übergeben.

Gibt zurück

cancelAction(string, TextOrMessageType, ICancelActionOptions)

Bindet eine Aktion an das Dialogfeld, das das Dialogfeld bei jedem Auslösen abbricht. Wenn der Vorgang abgebrochen wurde, werden die übergeordneten Dialogfelder mit einem fortgesetzt Code fortgesetzt, der angibt, dass es abgebrochenwurde.

function cancelAction(name: string, msg?: TextOrMessageType, options?: ICancelActionOptions)

Parameter

name

string

Eindeutiger Name zum Zuweisen der Aktion.

msg
TextOrMessageType

(Optional) Nachricht, die dem Benutzer vor dem Abbrechen des Dialogfelds gesendet werden soll.

options
ICancelActionOptions

(Optional) Optionen, die zum Konfigurieren der Aktion verwendet werden. Wenn Übereinstimmungen angegeben ist, lauscht der Benutzer auf ein Wort oder einen Ausdruck, der die Aktion auslöst, andernfalls muss die Aktion mit CardAction.dialogAction() an eine Schaltfläche gebunden werden, die Aktion auszulösen.

Gibt zurück

clone(ActionSet)

Gibt einen Klon eines vorhandenen ActionSet zurück.

function clone(copyTo?: ActionSet)

Parameter

copyTo
ActionSet

(Optional) Instanz, in die das aktuelle Objekt kopiert werden soll. Wenn eine neue Instanz fehlt, wird eine neue Instanz erstellt.

Gibt zurück

customAction(IDialogActionOptions)

Bindet eine benutzerdefinierte Aktion an das Dialogfeld, das beim Auslösen der übergebenen onSelectAction--Handlers übergeben wird.

function customAction(options: IDialogActionOptions)

Parameter

options
IDialogActionOptions

Die Zum Konfigurieren der Aktion verwendeten Optionen. Wenn Übereinstimmungen angegeben ist, lauscht die Aktion dem Benutzer, um ein Wort oder einen Ausdruck zu sagen, der die Aktion auslöst. Benutzerdefinierte Abgleichslogik kann mithilfe von onFindActionbereitgestellt werden.

Gibt zurück

dialogInterrupted(Session, string, any)

Wird aufgerufen, wenn ein Stammdialogfeld durch ein anderes Dialogfeld unterbrochen wird. Dadurch wird das Dialogfeld, das unterbrochen wird, die Möglichkeit gegeben, benutzerdefinierte Logik auszuführen, bevor sie aus dem Stapel entfernt wird. Das Dialogfeld selbst ist dafür verantwortlich, den Dialogstapel zu löschen und das neue Dialogfeld zu starten.

function dialogInterrupted(session: Session, dialogId: string, dialogArgs: any)

Parameter

session
Session

Session-Objekt für die aktuelle Unterhaltung.

dialogId

string

ID des Dialogfelds, das gestartet werden soll.

dialogArgs

any

Argumente, die an das neue Dialogfeld übergeben werden sollen.

dialogResumed<T>(Session, IDialogResult<T>)

Ein untergeordnetes Dialogfeld wurde beendet, und das aktuelle Dialogfeld wird fortgesetzt.

function dialogResumed<T>(session: Session, result: IDialogResult<T>)

Parameter

session
Session

Session-Objekt für die aktuelle Unterhaltung.

result

IDialogResult<T>

Vom untergeordneten Dialogfeld zurückgegebenes Ergebnis.

endConversationAction(string, TextOrMessageType, ICancelActionOptions)

Bindet eine Aktion, die die Unterhaltung mit dem Benutzer beendet, wenn sie ausgelöst wird.

function endConversationAction(name: string, msg?: TextOrMessageType, options?: ICancelActionOptions)

Parameter

name

string

Eindeutiger Name zum Zuweisen der Aktion.

msg
TextOrMessageType

(Optional) Nachricht, die den Benutzer vor dem Beenden der Unterhaltung sendet.

options
ICancelActionOptions

(Optional) Optionen, die zum Konfigurieren der Aktion verwendet werden. Wenn Übereinstimmungen angegeben ist, lauscht der Benutzer auf ein Wort oder einen Ausdruck, der die Aktion auslöst, andernfalls muss die Aktion mit CardAction.dialogAction() an eine Schaltfläche gebunden werden, die Aktion auszulösen.

Gibt zurück

findActionRoutes(IRecognizeDialogContext, (err: Error, results: IRouteResult[]) => void)

Wird während des Library.findRoutes() aufgerufen, Aufruf für jedes Dialogfeld im Stapel, um festzustellen, ob eine der Dialogfeldaktionen von den Benutzern ausgelöst wird.

function findActionRoutes(context: IRecognizeDialogContext, callback: (err: Error, results: IRouteResult[]) => void)

Parameter

context
IRecognizeDialogContext

Der Kontext der eingehenden Nachricht sowie die dialogData- für das ausgewertete Dialogfeld.

callback

(err: Error, results: IRouteResult[]) => void

Funktion, die mit den wichtigsten Kandidatenrouten aufgerufen werden soll.

recognize(IRecognizeDialogContext, (err: Error, result: IRecognizeResult) => void)

Analysiert die Äußerung der Benutzer und weist eine Bewertung von 0,0 - 1,0 zu, die angibt, wie sicher das Dialogfeld ist, dass er die Äußerung der Benutzer verstanden hat. Diese Methode wird immer für das aktive Dialogfeld im Stapel aufgerufen. Eine Punktzahl von 1,0 zeigt eine perfekte Übereinstimmung an und beendet jede weitere Erkennung. Wenn die Bewertung kleiner als 1,0 ist, weist jedes Dialogfeld im Stapel seine recognizeAction() Methode auf, um festzustellen, ob benannte Aktionen an das Dialogfeld gebunden sind, die den Benutzern besser entsprechen. Globale Aktionen, die auf Bot-Ebene registriert sind, werden ebenfalls ausgewertet. Wenn das Dialogfeld eine Höhere Bewertung aufweist, werden die Dialogfelder replyReceived() Methode aufgerufen, wobei das ergebnisobjekt aufgerufen wird, das vom Erkennungsaufruf zurückgegeben wird. Auf diese Weise kann das Dialogfeld zusätzliche Daten übergeben, die während der Erkennungsphase an die replyReceived()-Methode zur Behandlung gesammelt werden.

Sollte eine Aktion mit einer höheren Bewertung vorhanden sein, wird die Aktion anstelle der Dialoge replyReceived()-Methode aufgerufen. Das Dialogfeld bleibt im Stapel und kann an einem bestimmten Punkt fortgesetzt werden, wenn die Aktion ein neues Dialogfeld aufruft, sodass Dialogfelder auf unerwartete Aufrufe an dialogResumed()vorbereiten sollten.

function recognize(context: IRecognizeDialogContext, callback: (err: Error, result: IRecognizeResult) => void)

Parameter

context
IRecognizeDialogContext

Der Kontext der Anforderung.

callback

(err: Error, result: IRecognizeResult) => void

Funktion, die mit den Erkennungsergebnissen aufgerufen werden soll.

reloadAction(string, TextOrMessageType, IBeginDialogActionOptions)

Bindet eine Aktion an das Dialogfeld, das bewirkt, dass das Dialogfeld bei jedem Auslösen erneut geladen wird. Dies ist nützlich, um Logik zu implementieren, die Benutzerutterancen wie "Start over" behandelt.

function reloadAction(name: string, msg?: TextOrMessageType, options?: IBeginDialogActionOptions)

Parameter

name

string

Eindeutiger Name zum Zuweisen der Aktion.

msg
TextOrMessageType

(Optional) Nachricht, die den Benutzer vor dem Erneutladen des Dialogfelds sendet.

options
IBeginDialogActionOptions

(Optional) Optionen, die zum Konfigurieren der Aktion verwendet werden. Wenn Übereinstimmungen angegeben ist, lauscht der Benutzer auf ein Wort oder einen Ausdruck, der die Aktion auslöst, andernfalls muss die Aktion mit CardAction.dialogAction() an eine Schaltfläche gebunden werden, die Aktion auszulösen. Sie können auch dialogArgs verwenden, um zusätzliche Params an das Dialogfeld zu übergeben, wenn sie neu geladen werden.

Gibt zurück

replyReceived(Session, IRecognizeResult)

function replyReceived(session: Session, recognizeResult?: IRecognizeResult)

Parameter

session
Session
recognizeResult
IRecognizeResult

selectActionRoute(Session, IRouteResult)

Wählt die Route mit dem höchsten Konfidenzwert für die Äußerung aus.

function selectActionRoute(session: Session, route: IRouteResult)

Parameter

session
Session

Session-Objekt für die aktuelle Unterhaltung.

route
IRouteResult

Ergebnisse, die vom Aufruf von findActionRoutes()zurückgegeben werden.

triggerAction(ITriggerActionOptions)

Bindet eine Aktion an das Dialogfeld, das es zum aktiven Dialogfeld macht, wenn es ausgelöst wird. Das Standardverhalten besteht darin, ein vorhandenes Dialogfeld durch Löschen des Stapels und Starten des Dialogfelds am Stamm des Stapels zu interupieren. Das zu unterbrechende Dialogfeld kann diese Unterbrechung abfangen, indem ein benutzerdefinierter onInterrupted-Handler zu den Triggeraktionsoptionen hinzugefügt wird. Darüber hinaus können Sie die Art und Weise anpassen, wie das ausgelöste Dialogfeld gestartet wird, indem Sie eine benutzerdefinierte onSelectAction Handler für die Triggeraktionsoptionen bereitstellen.

function triggerAction(options: ITriggerActionOptions)

Parameter

options
ITriggerActionOptions

Optionen zum Konfigurieren der Aktion.

Gibt zurück