ComponentDialog Classe
Un Dialog composé d’autres dialogues
Initialise une nouvelle instance du ComponentDialog
Constructeur
ComponentDialog(dialog_id: str)
Paramètres
| Nom | Description |
|---|---|
|
dialog_id
Obligatoire
|
ID à affecter à la nouvelle boîte de dialogue dans le jeu de dialogues parent. |
Variables
| Nom | Description |
|---|---|
|
state
|
<xref:persisted_dialog>
|
Méthodes
| add_dialog |
Ajoute une <xref:botbuilder.dialogs.component_dialog.Dialog> à la boîte de dialogue composant et retourne le composant mis à jour. |
| begin_dialog |
Appelé lorsque le dialogue est démarré et envoyé (push) sur la pile de dialogues du parent. Si la tâche réussit, le résultat indique si la boîte de dialogue est toujours active une fois le tour traité par la boîte de dialogue. |
| continue_dialog |
Appelé lorsque le dialogue est continué, où il s’agit du dialogue actif et que l’utilisateur répond avec une nouvelle activité. |
| end_component |
Termine la boîte de dialogue composant dans le contexte de son parent. |
| end_dialog |
Appelé lorsque la boîte de dialogue se termine. |
| find_dialog |
Recherche une boîte de dialogue par ID. |
| on_begin_dialog |
Appelé lorsque le dialogue est démarré et envoyé (push) sur la pile de dialogues du parent. |
| on_continue_dialog |
Appelé lorsque le dialogue est continué, où il s’agit du dialogue actif et que l’utilisateur répond avec une nouvelle activité. |
| on_end_dialog |
Termine la boîte de dialogue composant dans le contexte de son parent. |
| on_reprompt_dialog | |
| reprompt_dialog |
Appelé lorsque la boîte de dialogue doit inviter à nouveau l’utilisateur à entrer. |
| resume_dialog |
Appelé lorsqu’un dialogue enfant sur la pile de dialogues parent a terminé ce tour, retournant le contrôle à ce composant de dialogue. |
add_dialog
Ajoute une <xref:botbuilder.dialogs.component_dialog.Dialog> à la boîte de dialogue composant et retourne le composant mis à jour.
add_dialog(dialog: Dialog) -> object
Paramètres
| Nom | Description |
|---|---|
|
dialog
Obligatoire
|
Boîte de dialogue à ajouter. |
Retours
| Type | Description |
|---|---|
|
La ComponentDialogmise à jour . |
begin_dialog
Appelé lorsque le dialogue est démarré et envoyé (push) sur la pile de dialogues du parent.
Si la tâche réussit, le résultat indique si la boîte de dialogue est toujours active une fois le tour traité par la boîte de dialogue.
async begin_dialog(dialog_context: DialogContext, options: object = None) -> DialogTurnResult
Paramètres
| Nom | Description |
|---|---|
|
dialog_context
Obligatoire
|
DialogContext pour le tour actuel de la conversation. |
|
options
|
Informations initiales facultatives à transmettre à la boîte de dialogue. Valeur par défaut: None
|
Retours
| Type | Description |
|---|---|
|
Signale la fin du tour |
continue_dialog
Appelé lorsque le dialogue est continué, où il s’agit du dialogue actif et que l’utilisateur répond avec une nouvelle activité.
async continue_dialog(dialog_context: DialogContext) -> DialogTurnResult
Paramètres
| Nom | Description |
|---|---|
|
dialog_context
Obligatoire
|
Contexte de boîte de dialogue parent pour le tour actuel de la conversation. |
Retours
| Type | Description |
|---|---|
|
Signale la fin du tour |
Remarques
Si la tâche réussit, le résultat indique si la boîte de dialogue est toujours active une fois le tour traité par la boîte de dialogue. Le résultat peut également contenir une valeur de retour.
Si cette méthode n’est pas remplacer la boîte de dialogue composant appelle la méthode continue_dialog sur son contexte de dialogue interne. Si la pile de dialogues interne est vide, la boîte de dialogue du composant se termine et, si une result est disponible, la boîte de dialogue du composant utilise cette valeur comme valeur de retour.
end_component
Termine la boîte de dialogue composant dans le contexte de son parent.
async end_component(outer_dc: DialogContext, result: object) -> DialogTurnResult
Paramètres
| Nom | Description |
|---|---|
|
outer_dc
Obligatoire
|
Contexte de boîte de dialogue parent pour le tour actuel de la conversation. |
|
result
Obligatoire
|
Facultatif, valeur à retourner du composant de boîte de dialogue au contexte parent. |
Retours
| Type | Description |
|---|---|
|
Valeur à retourner. |
Remarques
Si la tâche réussit, le résultat indique que le dialogue s’est terminé après le traitement du tour par la boîte de dialogue.
end_dialog
Appelé lorsque la boîte de dialogue se termine.
async end_dialog(context: TurnContext, instance: DialogInstance, reason: DialogReason) -> None
Paramètres
| Nom | Description |
|---|---|
|
context
Obligatoire
|
Objet de contexte pour ce tour. |
|
instance
Obligatoire
|
Informations d’état associées à l’instance de cette boîte de dialogue de composant. |
|
reason
Obligatoire
|
Raison pour laquelle le dialogue s’est terminé. |
find_dialog
Recherche une boîte de dialogue par ID.
async find_dialog(dialog_id: str) -> Dialog
Paramètres
| Nom | Description |
|---|---|
|
dialog_id
Obligatoire
|
Boîte de dialogue à ajouter. |
Retours
| Type | Description |
|---|---|
|
Boîte de dialogue ; ou Aucun s’il n’y a pas de correspondance pour l’ID. |
on_begin_dialog
Appelé lorsque le dialogue est démarré et envoyé (push) sur la pile de dialogues du parent.
async on_begin_dialog(inner_dc: DialogContext, options: object) -> DialogTurnResult
Paramètres
| Nom | Description |
|---|---|
|
inner_dc
Obligatoire
|
Contexte de dialogue interne pour le tour actuel de la conversation. |
|
options
Obligatoire
|
Informations initiales facultatives à transmettre à la boîte de dialogue. |
Remarques
Si la tâche réussit, le résultat indique si la boîte de dialogue est toujours active une fois le tour traité par la boîte de dialogue.
Par défaut, cela appelle la méthode begin_dialog de la boîte de dialogue initiale du composant.
Remplacez cette méthode dans une classe dérivée pour implémenter la logique d’interruption.
on_continue_dialog
Appelé lorsque le dialogue est continué, où il s’agit du dialogue actif et que l’utilisateur répond avec une nouvelle activité.
async on_continue_dialog(inner_dc: DialogContext) -> DialogTurnResult
Paramètres
| Nom | Description |
|---|---|
|
inner_dc
Obligatoire
|
Contexte de dialogue interne pour le tour actuel de la conversation. |
on_end_dialog
Termine la boîte de dialogue composant dans le contexte de son parent.
async on_end_dialog(context: TurnContext, instance: DialogInstance, reason: DialogReason) -> None
Paramètres
| Nom | Description |
|---|---|
|
turn_context
Obligatoire
|
TurnContext pour le tour actuel de la conversation. |
|
instance
Obligatoire
|
Informations d’état associées à la pile de dialogues interne de ce dialogue de composant. |
|
reason
Obligatoire
|
Raison pour laquelle le dialogue s’est terminé. |
|
context
Obligatoire
|
|
on_reprompt_dialog
async on_reprompt_dialog(turn_context: TurnContext, instance: DialogInstance) -> None
Paramètres
| Nom | Description |
|---|---|
|
turn_context
Obligatoire
|
TurnContext pour le tour actuel de la conversation. |
|
instance
Obligatoire
|
Informations d’état associées à la pile de dialogues interne de ce dialogue de composant. |
reprompt_dialog
Appelé lorsque la boîte de dialogue doit inviter à nouveau l’utilisateur à entrer.
async reprompt_dialog(context: TurnContext, instance: DialogInstance) -> None
Paramètres
| Nom | Description |
|---|---|
|
context
Obligatoire
|
Objet de contexte pour ce tour. |
|
instance
Obligatoire
|
Informations d’état pour cette boîte de dialogue. |
resume_dialog
Appelé lorsqu’un dialogue enfant sur la pile de dialogues parent a terminé ce tour, retournant le contrôle à ce composant de dialogue.
async resume_dialog(dialog_context: DialogContext, reason: DialogReason, result: object = None) -> DialogTurnResult
Paramètres
| Nom | Description |
|---|---|
|
dialog_context
Obligatoire
|
Contexte de boîte de dialogue pour le tour actuel de la conversation. |
|
reason
Obligatoire
|
Raison pour laquelle le dialogue a repris. |
|
result
|
Facultatif, valeur retournée à partir de la boîte de dialogue appelée. Valeur par défaut: None
|
Retours
| Type | Description |
|---|---|
|
Signale la fin du tour |
Remarques
Les conteneurs sont généralement des nœuds feuilles sur la pile, mais le développement est libre d’envoyer (push) d’autres boîtes de dialogue au-dessus de la pile, ce qui entraîne la réception d’un appel inattendu à resume_dialog lorsque le message push sur la boîte de dialogue se termine. Pour éviter que le conteneur se termine prématurément, nous devons implémenter cette méthode et demander simplement à notre pile de dialogue interne de réinscrire.
Attributs
persisted_dialog_state
persisted_dialog_state = 'dialogs'