ComponentDialog Klass

En Dialog som består av andra dialogrutor

Initierar en ny instans av ComponentDialog

Konstruktor

ComponentDialog(dialog_id: str)

Parametrar

Name Description
dialog_id
Obligatorisk
str

ID:t som ska tilldelas till den nya dialogrutan i den överordnade dialogrutan.

Variabler

Name Description
state
<xref:persisted_dialog>

Metoder

add_dialog

Lägger till en Dialog i komponentdialogrutan och returnerar den uppdaterade komponenten.

begin_dialog

Anropas när dialogrutan startas och skickas till den överordnade dialogrutans stack.

Om uppgiften lyckas anger resultatet om dialogrutan fortfarande är aktiv efter att svängen har bearbetats av dialogrutan.

continue_dialog

Anropas när dialogrutan fortsätter, där det är den aktiva dialogrutan och användaren svarar med en ny aktivitet.

end_component

Avslutar komponentdialogrutan i den överordnade kontexten.

end_dialog

Anropas när dialogrutan slutar.

find_dialog

Söker efter en dialogruta efter ID.

on_begin_dialog

Anropas när dialogrutan startas och skickas till den överordnade dialogrutans stack.

on_continue_dialog

Anropas när dialogrutan fortsätter, där det är den aktiva dialogrutan och användaren svarar med en ny aktivitet.

on_end_dialog

Avslutar komponentdialogrutan i den överordnade kontexten.

on_reprompt_dialog
reprompt_dialog

Anropas när dialogrutan ska uppmana användaren att ange indata igen.

resume_dialog

Anropades när en underordnad dialogruta i den överordnade dialogstacken slutförde den här svängen och returnerade kontrollen till den här dialogkomponenten.

add_dialog

Lägger till en Dialog i komponentdialogrutan och returnerar den uppdaterade komponenten.

add_dialog(dialog: Dialog) -> object

Parametrar

Name Description
dialog
Obligatorisk

Dialogrutan som ska läggas till.

Returer

Typ Description

Den uppdaterade ComponentDialog.

begin_dialog

Anropas när dialogrutan startas och skickas till den överordnade dialogrutans stack.

Om uppgiften lyckas anger resultatet om dialogrutan fortfarande är aktiv efter att svängen har bearbetats av dialogrutan.

async begin_dialog(dialog_context: DialogContext, options: object = None) -> DialogTurnResult

Parametrar

Name Description
dialog_context
Obligatorisk

DialogContext för konversationens aktuella tur.

options

Valfri, initial information som ska skickas till dialogrutan.

Standardvärde: None

Returer

Typ Description

Signalerar slutet av svängen

continue_dialog

Anropas när dialogrutan fortsätter, där det är den aktiva dialogrutan och användaren svarar med en ny aktivitet.

async continue_dialog(dialog_context: DialogContext) -> DialogTurnResult

Parametrar

Name Description
dialog_context
Obligatorisk

Den överordnade dialogkontexten för konversationens aktuella vändning.

Returer

Typ Description

Signalerar slutet av svängen

Kommentarer

Om uppgiften lyckas anger resultatet om dialogrutan fortfarande är aktiv efter att svängen har bearbetats av dialogrutan. Resultatet kan också innehålla ett returvärde.

Om den här metoden inte åsidosätta komponentdialogrutan anropar continue_dialog-metoden i den inre dialogkontexten. Om den inre dialogrutan är tom avslutas komponentdialogrutan och om en result är tillgänglig använder komponentdialogrutan det som returvärde.

end_component

Avslutar komponentdialogrutan i den överordnade kontexten.

async end_component(outer_dc: DialogContext, result: object) -> DialogTurnResult

Parametrar

Name Description
outer_dc
Obligatorisk

Den överordnade dialogkontexten för den aktuella konversationen.

result
Obligatorisk

Valfritt värde som ska returneras från dialogkomponenten till den överordnade kontexten.

Returer

Typ Description

Värde som ska returneras.

Kommentarer

Om uppgiften lyckas anger resultatet att dialogrutan avslutades efter att svängen bearbetats av dialogrutan.

end_dialog

Anropas när dialogrutan slutar.

async end_dialog(context: TurnContext, instance: DialogInstance, reason: DialogReason) -> None

Parametrar

Name Description
context
Obligatorisk

Kontextobjektet för den här svängen.

instance
Obligatorisk

Tillståndsinformation som är associerad med instansen av den här komponentdialogrutan.

reason
Obligatorisk

Orsak till att dialogrutan avslutades.

find_dialog

Söker efter en dialogruta efter ID.

async find_dialog(dialog_id: str) -> Dialog

Parametrar

Name Description
dialog_id
Obligatorisk

Dialogrutan som ska läggas till.

Returer

Typ Description

Dialogrutan; eller Ingen om det inte finns någon matchning för ID:t.

on_begin_dialog

Anropas när dialogrutan startas och skickas till den överordnade dialogrutans stack.

async on_begin_dialog(inner_dc: DialogContext, options: object) -> DialogTurnResult

Parametrar

Name Description
inner_dc
Obligatorisk

Den inre dialogkontexten för den aktuella konversationen.

options
Obligatorisk

Valfri, initial information som ska skickas till dialogrutan.

Kommentarer

Om uppgiften lyckas anger resultatet om dialogrutan fortfarande är aktiv efter att svängen har bearbetats av dialogrutan.

Som standard anropar detta metoden begin_dialog i komponentdialogrutans inledande dialogruta.

Åsidosätt den här metoden i en härledd klass för att implementera avbrottslogik.

on_continue_dialog

Anropas när dialogrutan fortsätter, där det är den aktiva dialogrutan och användaren svarar med en ny aktivitet.

async on_continue_dialog(inner_dc: DialogContext) -> DialogTurnResult

Parametrar

Name Description
inner_dc
Obligatorisk

Den inre dialogkontexten för den aktuella konversationen.

on_end_dialog

Avslutar komponentdialogrutan i den överordnade kontexten.

async on_end_dialog(context: TurnContext, instance: DialogInstance, reason: DialogReason) -> None

Parametrar

Name Description
turn_context
Obligatorisk

TurnContext för konversationens aktuella tur.

instance
Obligatorisk

Tillståndsinformation som är associerad med den inre dialogrutan i den här komponentdialogrutan.

reason
Obligatorisk

Orsak till att dialogrutan avslutades.

context
Obligatorisk

on_reprompt_dialog

async on_reprompt_dialog(turn_context: TurnContext, instance: DialogInstance) -> None

Parametrar

Name Description
turn_context
Obligatorisk

TurnContext för konversationens aktuella tur.

instance
Obligatorisk

Tillståndsinformation som är associerad med den inre dialogrutan i den här komponentdialogrutan.

reprompt_dialog

Anropas när dialogrutan ska uppmana användaren att ange indata igen.

async reprompt_dialog(context: TurnContext, instance: DialogInstance) -> None

Parametrar

Name Description
context
Obligatorisk

Kontextobjektet för den här svängen.

instance
Obligatorisk

Tillståndsinformation för den här dialogrutan.

resume_dialog

Anropades när en underordnad dialogruta i den överordnade dialogstacken slutförde den här svängen och returnerade kontrollen till den här dialogkomponenten.

async resume_dialog(dialog_context: DialogContext, reason: DialogReason, result: object = None) -> DialogTurnResult

Parametrar

Name Description
dialog_context
Obligatorisk

Dialogkontexten för konversationens aktuella tur.

reason
Obligatorisk

Orsak till att dialogrutan återupptogs.

result

Valfritt värde som returnerades från dialogrutan som anropades.

Standardvärde: None

Returer

Typ Description

Signalerar slutet av svängen

Kommentarer

Containrar är vanligtvis lövnoder i stacken, men utvecklaren kan skicka andra dialogrutor ovanpå stacken, vilket resulterar i att containern får ett oväntat anrop till resume_dialog när den pushade dialogrutan avslutas. För att undvika att containern slutar i förtid måste vi implementera den här metoden och helt enkelt be vår inre dialogstack att fråga igen.

Attribut

persisted_dialog_state

persisted_dialog_state = 'dialogs'