Partager via


ActionContext class

Étend le DialogContext avec des méthodes supplémentaires pour manipuler la séquence d’actions en cours d’exécution pour un AdaptiveDialog.

Extends

DialogContext

Constructeurs

ActionContext(DialogSet, DialogContext, DialogState, ActionState[], symbol)

Initialise une nouvelle instance de la classe ActionContext

Propriétés

actions

Liste des actions en cours d’exécution.

changes

Obtient la liste des modifications qui sont mises en file d’attente pour être appliquées.

Propriétés héritées

activeDialog
child
context

Obtient l’objet de contexte pour le tour.

dialogManager
dialogs

Obtient les boîtes de dialogue qui peuvent être appelées directement à partir de ce contexte.

parent

Contexte de boîte de dialogue parent pour ce contexte de dialogue, ou undefined si ce contexte n’a pas de parent.

services

Obtient la collection de services qui est contextuelle à ce contexte de boîte de dialogue.

stack

Obtient la pile de dialogues actuelle.

state

Obtient le DialogStateManager qui gère l’affichage de toutes les étendues de mémoire.

Méthodes

applyChanges()

Applique toutes les modifications mises en file d’attente.

queueChanges(ActionChangeList)

Met en file d’attente un ensemble de modifications qui seront appliquées lorsque applyChanges() est appelé.

Méthodes héritées

beginDialog(string, object)

Démarre une instance de dialogue et l’envoie dans la pile des dialogues. Crée une instance de la boîte de dialogue et la pousse vers la pile.

cancelAllDialogs(boolean, string, any)

Annule toutes les boîtes de dialogue de la pile de dialogues et efface la pile.

continueDialog()

Poursuit l’exécution du dialogue actif, le cas échéant, en passant ce contexte de dialogue à sa méthode Dialog.continueDialog .

emitEvent(string, any, boolean, boolean)

Recherche une boîte de dialogue avec un ID donné.

endDialog(any)

Termine une boîte de dialogue et la fait apparaître hors de la pile. Retourne un résultat facultatif au parent de la boîte de dialogue.

findDialog(string)

Recherche une boîte de dialogue avec un ID donné.

getLocale()

Obtenez cultureInfo dans DialogContext.

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

Fonction d’assistance pour simplifier la mise en forme des options d’appel d’une boîte de dialogue d’invite.

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

Fonction d’assistance pour simplifier la mise en forme des options d’appel d’une boîte de dialogue d’invite.

replaceDialog(string, object)

Termine le dialogue actif et démarre un nouveau dialogue à sa place.

repromptDialog()

Demande à la boîte de dialogue active d’inviter à nouveau l’utilisateur à entrer une entrée.

Détails du constructeur

ActionContext(DialogSet, DialogContext, DialogState, ActionState[], symbol)

Initialise une nouvelle instance de la classe ActionContext

new ActionContext(dialogs: DialogSet, parentDialogContext: DialogContext, state: DialogState, actions: ActionState[], changeKey: symbol)

Paramètres

dialogs

DialogSet

Jeu de dialogue pour lequel créer le contexte d’action.

parentDialogContext

DialogContext

Contexte de boîte de dialogue parent.

state

DialogState

État actuel de la boîte de dialogue.

actions

ActionState[]

Liste actuelle des actions restantes à exécuter.

changeKey

symbol

Clé TurnState pour l’emplacement où les modifications doivent être conservées.

Détails de la propriété

actions

Liste des actions en cours d’exécution.

actions: ActionState[]

Valeur de propriété

changes

Obtient la liste des modifications qui sont mises en file d’attente pour être appliquées.

ActionChangeList[] changes

Valeur de propriété

Liste des modifications mises en file d’attente.

Détails de la propriété héritée

activeDialog

activeDialog: DialogInstance | undefined

Valeur de propriété

DialogInstance | undefined

Hérité de DialogContext.activeDialog

child

child: DialogContext | undefined

Valeur de propriété

DialogContext | undefined

Hérité de DialogContext.child

context

Obtient l’objet de contexte pour le tour.

context: TurnContext

Valeur de propriété

TurnContext

Hérité de DialogContext.context

dialogManager

dialogManager: DialogManager

Valeur de propriété

DialogManager

Hérité de DialogContext.dialogManager

dialogs

Obtient les boîtes de dialogue qui peuvent être appelées directement à partir de ce contexte.

dialogs: DialogSet

Valeur de propriété

DialogSet

Hérité de DialogContext.dialogs

parent

Contexte de boîte de dialogue parent pour ce contexte de dialogue, ou undefined si ce contexte n’a pas de parent.

parent: DialogContext | undefined

Valeur de propriété

DialogContext | undefined

Remarques

Lorsqu’il tente de démarrer un dialogue, le contexte du dialogue recherche le Dialog.id dans ses boîtes de dialogue. Si le dialogue à démarrer est introuvable dans ce contexte de dialogue, il recherche dans son contexte de dialogue parent, et ainsi de suite.

Hérité de DialogContext.parent

services

Obtient la collection de services qui est contextuelle à ce contexte de boîte de dialogue.

services: TurnContextStateCollection

Valeur de propriété

TurnContextStateCollection

Hérité de DialogContext.services

stack

Obtient la pile de dialogues actuelle.

stack: DialogInstance[]

Valeur de propriété

DialogInstance[]

Hérité de DialogContext.stack

state

Obtient le DialogStateManager qui gère l’affichage de toutes les étendues de mémoire.

state: DialogStateManager

Valeur de propriété

DialogStateManager

Hérité de DialogContext.state

Détails de la méthode

applyChanges()

Applique toutes les modifications mises en file d’attente.

function applyChanges(): Promise<boolean>

Retours

Promise<boolean>

True s’il y a eu des modifications à appliquer.

queueChanges(ActionChangeList)

Met en file d’attente un ensemble de modifications qui seront appliquées lorsque applyChanges() est appelé.

function queueChanges(changes: ActionChangeList)

Paramètres

changes
ActionChangeList

Planifiez les modifications à mettre en file d’attente.

Détails de la méthode héritée

beginDialog(string, object)

Démarre une instance de dialogue et l’envoie dans la pile des dialogues. Crée une instance de la boîte de dialogue et la pousse vers la pile.

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

Paramètres

dialogId

string

ID de la boîte de dialogue à démarrer.

options

object

facultatif. Arguments à passer dans la boîte de dialogue au démarrage.

Retours

Promise<DialogTurnResult>

promesse résolvant le résultat du tour de boîte de dialogue.

Remarques

S’il existe déjà un dialogue actif sur la pile, ce dialogue est suspendu jusqu’à ce qu’il soit à nouveau le dialogue supérieur de la pile.

L’état de l’objet retourné décrit l’état de la pile de dialogues une fois cette méthode terminée.

Cette méthode lève une exception si le dialogue demandé est introuvable dans ce contexte de dialogue ou dans l’un de ses ancêtres.

Par exemple :

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

Voir aussi

Hérité de DialogContext.beginDialog

cancelAllDialogs(boolean, string, any)

Annule toutes les boîtes de dialogue de la pile de dialogues et efface la pile.

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

Paramètres

cancelParents

boolean

facultatif. Si true toutes les boîtes de dialogue parentes sont également annulées.

eventName

string

facultatif. Nom d’un événement personnalisé à déclencher au fur et à mesure que les boîtes de dialogue sont annulées. La valeur par défaut est cancelDialog.

eventValue

any

facultatif. Valeur à transmettre avec l’événement d’annulation personnalisé.

Retours

Promise<DialogTurnResult>

promesse résolvant le résultat du tour de boîte de dialogue.

Remarques

Cela appelle la méthode Dialog.endDialog de chaque dialogue avant de supprimer le dialogue de la pile.

S’il y avait des boîtes de dialogue sur la pile initialement, l’état de la valeur de retour est annulé ; sinon, il est vide.

Cet exemple efface une pile de dialogues, dc, avant de démarrer une boîte de dialogue « bookFlight ».

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

Voir aussi

Hérité de DialogContext.cancelAllDialogs

continueDialog()

Poursuit l’exécution du dialogue actif, le cas échéant, en passant ce contexte de dialogue à sa méthode Dialog.continueDialog .

function continueDialog(): Promise<DialogTurnResult>

Retours

Promise<DialogTurnResult>

promesse résolvant le résultat du tour de boîte de dialogue.

Remarques

Une fois l’appel terminé, vous pouvez vérifier la propriété répondue du contexte de tour pour déterminer si la boîte de dialogue a envoyé une réponse à l’utilisateur.

L’état de l’objet retourné décrit l’état de la pile de dialogues une fois cette méthode terminée.

En règle générale, vous l’appelez à partir du gestionnaire de tour de votre bot.

Par exemple :

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.`);
}

Hérité de DialogContext.continueDialog

emitEvent(string, any, boolean, boolean)

Recherche une boîte de dialogue avec un ID donné.

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

Paramètres

name

string

Nom de l’événement à déclencher.

value

any

facultatif. Valeur à envoyer avec l’événement.

bubble

boolean

facultatif. Indicateur permettant de contrôler si l’événement doit être en bulles sur son parent s’il n’est pas géré localement. La valeur truepar défaut est .

fromLeaf

boolean

facultatif. Indique si l’événement est émis à partir d’un nœud feuille.

Retours

Promise<boolean>

true si l’événement a été géré.

Remarques

Émet un événement nommé pour la boîte de dialogue active ou une personne qui l’a démarrée à gérer.

Hérité de DialogContext.emitEvent

endDialog(any)

Termine une boîte de dialogue et la fait apparaître hors de la pile. Retourne un résultat facultatif au parent de la boîte de dialogue.

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

Paramètres

result

any

facultatif. Résultat à passer à la logique parente. Il peut s’agir du dialogue suivant sur la pile, ou s’il s’agit du dernier dialogue de la pile, d’un contexte de dialogue parent ou du gestionnaire de tour du bot.

Retours

Promise<DialogTurnResult>

promesse résolvant le résultat du tour de boîte de dialogue.

Remarques

Le dialogue parent est le dialogue suivant sur la pile de dialogues, le cas échéant. Cette méthode appelle la méthode Dialog.resumeDialog du parent, en transmettant le résultat retourné par le dialogue de fin. S’il n’existe aucune boîte de dialogue parente, le tour se termine et le résultat est disponible pour le bot via la propriété de résultat de l’objet retourné.

L’état de l’objet retourné décrit l’état de la pile de dialogues une fois cette méthode terminée.

En règle générale, vous l’appelez à partir de la logique d’un dialogue spécifique pour signaler au contexte de dialogue que le dialogue est terminé, que le dialogue doit être supprimé de la pile et que le dialogue parent doit reprendre.

Par exemple :

return await dc.endDialog(returnValue);

Voir aussi

Hérité de DialogContext.endDialog

findDialog(string)

Recherche une boîte de dialogue avec un ID donné.

function findDialog(dialogId: string): Dialog | undefined

Paramètres

dialogId

string

ID de la boîte de dialogue à rechercher.

Retours

Dialog | undefined

Boîte de dialogue de l’ID fourni.

Remarques

Si le dialogue à démarrer est introuvable dans le DialogSet associé à ce contexte de dialogue, il tente de trouver le dialogue dans son contexte de dialogue parent.

Voir aussi

Hérité de DialogContext.findDialog

getLocale()

Obtenez cultureInfo dans DialogContext.

function getLocale(): string

Retours

string

chaîne de paramètres régionaux.

Hérité de DialogContext.getLocale

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

Fonction d’assistance pour simplifier la mise en forme des options d’appel d’une boîte de dialogue d’invite.

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

Paramètres

dialogId

string

ID de la boîte de dialogue d’invite à démarrer.

promptOrOptions

string | Partial<Activity> | PromptOptions

Texte de l’invite initiale à envoyer à l’utilisateur, activité à envoyer en tant qu’invite initiale ou objet avec lequel mettre en forme la boîte de dialogue d’invite.

Retours

Promise<DialogTurnResult>

Remarques

Cette méthode d’assistance met en forme l’objet à utiliser comme options paramètre, puis appelle beginDialog pour démarrer la boîte de dialogue d’invite spécifiée.

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

Hérité de DialogContext.prompt

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

Fonction d’assistance pour simplifier la mise en forme des options d’appel d’une boîte de dialogue d’invite.

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

Paramètres

dialogId

string

ID de la boîte de dialogue d’invite à démarrer.

promptOrOptions

string | Partial<Activity> | PromptOptions

Texte de l’invite initiale à envoyer à l’utilisateur, activité à envoyer en tant qu’invite initiale ou objet avec lequel mettre en forme la boîte de dialogue d’invite.

choices

string | Choice[]

facultatif. Tableau de choix parmi lesquels l’utilisateur peut choisir, à utiliser avec un ChoicePrompt.

Retours

Promise<DialogTurnResult>

Remarques

Cette méthode d’assistance met en forme l’objet à utiliser comme options paramètre, puis appelle beginDialog pour démarrer la boîte de dialogue d’invite spécifiée.

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

Hérité de DialogContext.prompt

replaceDialog(string, object)

Termine le dialogue actif et démarre un nouveau dialogue à sa place.

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

Paramètres

dialogId

string

ID de la boîte de dialogue à démarrer.

options

object

facultatif. Arguments à passer dans la nouvelle boîte de dialogue au démarrage.

Retours

Promise<DialogTurnResult>

promesse résolvant le résultat du tour de boîte de dialogue.

Remarques

Cela est particulièrement utile pour créer une boucle ou rediriger vers un autre dialogue.

L’état de l’objet retourné décrit l’état de la pile de dialogues une fois cette méthode terminée.

Cette méthode est similaire à la fin de la boîte de dialogue actuelle et au début immédiat de la nouvelle. Toutefois, la boîte de dialogue parente n’est ni reprise ni avertie.

Voir aussi

Hérité de DialogContext.replaceDialog

repromptDialog()

Demande à la boîte de dialogue active d’inviter à nouveau l’utilisateur à entrer une entrée.

function repromptDialog(): Promise<void>

Retours

Promise<void>

Remarques

Cela appelle la méthode repromptDialog du dialogue actif.

Par exemple :

await dc.repromptDialog();

Hérité de DialogContext.repromptDialog