ActionContext class
Étend le DialogContext avec des méthodes supplémentaires pour manipuler la séquence d’actions en cours d’exécution d’un AdaptiveDialog.
- Extends
-
DialogContext
Constructeurs
| Action |
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 à appliquer. |
Propriétés héritées
| active |
|
| child | |
| context | Obtient l’objet de contexte pour le tour. |
| dialog |
|
| dialogs | Obtient les dialogues qui peuvent être appelés directement à partir de ce contexte. |
| parent | Contexte de dialogue parent pour ce contexte de dialogue ou |
| services | Obtient la collection de services contextuelle à ce contexte 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
| apply |
Applique les modifications mises en file d’attente. |
| queue |
Met en file d’attente un ensemble de modifications qui seront appliquées lorsque applyChanges() est appelé. |
Méthodes héritées
| begin |
Démarre une instance de dialogue et l’envoie (push) sur la pile de dialogues. Crée une instance de la boîte de dialogue et l’envoie (push) sur la pile. |
| cancel |
Annule tous les dialogues de la pile de dialogues et efface la pile. |
| continue |
Poursuit l’exécution du dialogue actif, s’il en existe un, en transmettant ce contexte de dialogue à sa méthode Dialog.continueDialog. |
| emit |
Recherche une boîte de dialogue avec un ID donné. |
| end |
Termine une boîte de dialogue et l’affiche hors de la pile. Retourne un résultat facultatif au parent du dialogue. |
| find |
Recherche une boîte de dialogue avec un ID donné. |
| get |
Obtenez cultureInfo dans DialogContext. |
| prompt(string, string | Partial<Activity> | Prompt |
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> | Prompt |
Fonction d’assistance pour simplifier la mise en forme des options d’appel d’une boîte de dialogue d’invite. |
| replace |
Termine le dialogue actif et démarre un nouveau dialogue à sa place. |
| reprompt |
Demande à l’utilisateur de réinscrire l’entrée dans la boîte de dialogue active. |
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
Boîte de dialogue pour laquelle 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
Liste actuelle des actions restantes à exécuter.
- changeKey
-
symbol
Clé TurnState pour l’emplacement où conserver les modifications.
Détails de la propriété
actions
changes
Obtient la liste des modifications qui sont mises en file d’attente à appliquer.
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ée de DialogContext.activeDialog
child
child: DialogContext | undefined
Valeur de propriété
DialogContext | undefined
héritée de DialogContext.child
context
Obtient l’objet de contexte pour le tour.
context: TurnContext
Valeur de propriété
TurnContext
héritée de DialogContext.context
dialogManager
dialogManager: DialogManager
Valeur de propriété
DialogManager
héritée de DialogContext.dialogManager
dialogs
Obtient les dialogues qui peuvent être appelés directement à partir de ce contexte.
dialogs: DialogSet
Valeur de propriété
DialogSet
héritée de DialogContext.dialogs
parent
Contexte 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 de dialogue recherche le Dialog.id dans ses dialogues . Si la boîte de dialogue à démarrer est introuvable dans ce contexte de dialogue, elle recherche dans son contexte de dialogue parent, et ainsi de suite.
héritée de DialogContext.parent
services
Obtient la collection de services contextuelle à ce contexte de dialogue.
services: TurnContextStateCollection
Valeur de propriété
TurnContextStateCollection
héritée de DialogContext.services
stack
Obtient la pile de dialogues actuelle.
stack: DialogInstance[]
Valeur de propriété
DialogInstance[]
héritée 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ée de DialogContext.state
Détails de la méthode
applyChanges()
Applique 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 apportées à la file d’attente.
Détails de la méthode héritée
beginDialog(string, object)
Démarre une instance de dialogue et l’envoie (push) sur la pile de dialogues. Crée une instance de la boîte de dialogue et l’envoie (push) sur 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
Optionnel. Arguments à passer dans la boîte de dialogue au démarrage.
Retours
Promise<DialogTurnResult>
une promesse de résolution du résultat du tour de dialogue.
Remarques
S’il existe déjà un dialogue actif sur la pile, ce dialogue sera 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 également
- endDialog
- invite
- replaceDialog
- Dialog.beginDialog
héritée de DialogContext.beginDialog
cancelAllDialogs(boolean, string, any)
Annule tous les dialogues de la pile de dialogues et efface la pile.
function cancelAllDialogs(cancelParents?: boolean, eventName?: string, eventValue?: any): Promise<DialogTurnResult>
Paramètres
- cancelParents
-
boolean
Optionnel. Si true tous les dialogues parents sont également annulés.
- eventName
-
string
Optionnel. Nom d’un événement personnalisé à déclencher en tant que dialogues annulés. Cette valeur par défaut est cancelDialog.
- eventValue
-
any
Optionnel. Valeur à transmettre avec l’événement d’annulation personnalisé.
Retours
Promise<DialogTurnResult>
une promesse de résolution du résultat du tour 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 dialogues 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 également
héritée de DialogContext.cancelAllDialogs
continueDialog()
Poursuit l’exécution du dialogue actif, s’il en existe un, en transmettant ce contexte de dialogue à sa méthode Dialog.continueDialog.
function continueDialog(): Promise<DialogTurnResult>
Retours
Promise<DialogTurnResult>
une promesse de résolution du résultat du tour de dialogue.
Remarques
Une fois l’appel terminé, vous pouvez vérifier l'du contexte de tour a répondu propriété 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 appelez cela à 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ée 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
Optionnel. Valeur à envoyer avec l’événement.
- bubble
-
boolean
Optionnel. Indicateur pour contrôler si l’événement doit être en bulles à son parent s’il n’est pas géré localement. La valeur par défaut est true.
- fromLeaf
-
boolean
Optionnel. 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, pour gérer.
héritée de DialogContext.emitEvent
endDialog(any)
Termine une boîte de dialogue et l’affiche hors de la pile. Retourne un résultat facultatif au parent du dialogue.
function endDialog(result?: any): Promise<DialogTurnResult>
Paramètres
- result
-
any
Optionnel. Résultat à passer à la logique parente. Il peut s’agir du dialogue suivant sur la pile, ou s’il s’agissait du dernier dialogue de la pile, d’un contexte de dialogue parent ou du gestionnaire de tour du bot.
Retours
Promise<DialogTurnResult>
une promesse de résolution du résultat du tour de dialogue.
Remarques
Le dialogue parent est le dialogue suivant de la pile de dialogues, s’il en existe un. Cette méthode appelle la méthode Dialog.resumeDialog du parent, en passant le résultat retourné par la boîte de 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 le résultat de l’objet retourné propriété.
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 devez appeler cela dans la logique d’un dialogue spécifique pour signaler au contexte de dialogue que le dialogue a terminé, le dialogue doit être supprimé de la pile et le dialogue parent doit reprendre.
Par exemple:
return await dc.endDialog(returnValue);
Voir également
héritée 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 la boîte de dialogue à démarrer est introuvable dans le DialogSet associée à ce contexte de dialogue, elle tente de trouver le dialogue dans son contexte de dialogue parent.
Voir également
héritée de DialogContext.findDialog
getLocale()
Obtenez cultureInfo dans DialogContext.
function getLocale(): string
Retours
string
chaîne de paramètres régionaux.
héritée 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 pour envoyer l’utilisateur, l’activité à envoyer en tant qu’invite initiale ou l’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 paramètre options, 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ée 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 pour envoyer l’utilisateur, l’activité à envoyer en tant qu’invite initiale ou l’objet avec lequel mettre en forme la boîte de dialogue d’invite.
- choices
-
string | Choice[]
Optionnel. Tableau de choix pour l’utilisateur parmi lequel choisir, à utiliser avec un ChoicePrompt.
Retours
Promise<DialogTurnResult>
Remarques
Cette méthode d’assistance met en forme l’objet à utiliser comme paramètre options, 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ée 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
Optionnel. Arguments à passer dans la nouvelle boîte de dialogue au démarrage.
Retours
Promise<DialogTurnResult>
une promesse de résolution du résultat du tour 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 du dialogue actuel et commence immédiatement la nouvelle. Toutefois, la boîte de dialogue parente n’est ni reprise ni avertie.
Voir également
- beginDialog
- endDialog
héritée de DialogContext.replaceDialog
repromptDialog()
Demande à l’utilisateur de réinscrire l’entrée dans la boîte de dialogue active.
function repromptDialog(): Promise<void>
Retours
Promise<void>
Remarques
Cela appelle la méthode repromptDialog du dialogue actif.
Par exemple:
await dc.repromptDialog();
héritée de DialogContext.repromptDialog