ComponentDialog Klasa

Dialog składa się z innych okien dialogowych

Inicjuje nowe wystąpienie ComponentDialog

Konstruktor

ComponentDialog(dialog_id: str)

Parametry

Nazwa Opis
dialog_id
Wymagane
str

Identyfikator do przypisania do nowego okna dialogowego w zestawie okien dialogowych nadrzędnych.

Zmienne

Nazwa Opis
state
<xref:persisted_dialog>

Metody

add_dialog

Dodaje Dialog do okna dialogowego składnika i zwraca zaktualizowany składnik.

begin_dialog

Wywoływana po uruchomieniu okna dialogowego i wypchnięciu do stosu okna dialogowego elementu nadrzędnego.

Jeśli zadanie zakończy się pomyślnie, wynik wskazuje, czy okno dialogowe jest nadal aktywne po przetworzeniu obrotu przez okno dialogowe.

continue_dialog

Wywoływana po kontynuowaniu okna dialogowego, w którym jest aktywne okno dialogowe, a użytkownik odpowiada za pomocą nowego działania.

end_component

Kończy okno dialogowe składnika w kontekście elementu nadrzędnego.

end_dialog

Wywoływana po zakończeniu okna dialogowego.

find_dialog

Znajduje okno dialogowe według identyfikatora.

on_begin_dialog

Wywoływana po uruchomieniu okna dialogowego i wypchnięciu do stosu okna dialogowego elementu nadrzędnego.

on_continue_dialog

Wywoływana po kontynuowaniu okna dialogowego, w którym jest aktywne okno dialogowe, a użytkownik odpowiada za pomocą nowego działania.

on_end_dialog

Kończy okno dialogowe składnika w kontekście elementu nadrzędnego.

on_reprompt_dialog
reprompt_dialog

Wywoływana, gdy okno dialogowe powinno ponownie monitować użytkownika o podanie danych wejściowych.

resume_dialog

Wywoływana, gdy okno dialogowe podrzędne w stosie okna dialogowego nadrzędnego zakończyło się tym kolei, zwracając kontrolkę do tego składnika okna dialogowego.

add_dialog

Dodaje Dialog do okna dialogowego składnika i zwraca zaktualizowany składnik.

add_dialog(dialog: Dialog) -> object

Parametry

Nazwa Opis
dialog
Wymagane

Okno dialogowe do dodania.

Zwraca

Typ Opis

Zaktualizowany ComponentDialog.

begin_dialog

Wywoływana po uruchomieniu okna dialogowego i wypchnięciu do stosu okna dialogowego elementu nadrzędnego.

Jeśli zadanie zakończy się pomyślnie, wynik wskazuje, czy okno dialogowe jest nadal aktywne po przetworzeniu obrotu przez okno dialogowe.

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

Parametry

Nazwa Opis
dialog_context
Wymagane

DialogContext dla bieżącego kolei konwersacji.

options

Opcjonalne, początkowe informacje, które mają być przekazywane do okna dialogowego.

Domyślna wartość: None

Zwraca

Typ Opis

Sygnalizuje koniec kolei

continue_dialog

Wywoływana po kontynuowaniu okna dialogowego, w którym jest aktywne okno dialogowe, a użytkownik odpowiada za pomocą nowego działania.

async continue_dialog(dialog_context: DialogContext) -> DialogTurnResult

Parametry

Nazwa Opis
dialog_context
Wymagane

Kontekst okna dialogowego nadrzędnego dla bieżącego zwrotu konwersacji.

Zwraca

Typ Opis

Sygnalizuje koniec kolei

Uwagi

Jeśli zadanie zakończy się pomyślnie, wynik wskazuje, czy okno dialogowe jest nadal aktywne po przetworzeniu obrotu przez okno dialogowe. Wynik może również zawierać wartość zwracaną.

Jeśli ta metoda nie jest zastąpić okno dialogowe składnika wywołuje metodę continue_dialog w wewnętrznym kontekście okna dialogowego. Jeśli wewnętrzny stos okna dialogowego jest pusty, okno dialogowe składnika kończy się, a jeśli jest dostępna result, okno dialogowe składnika używa tego elementu jako zwracanej wartości.

end_component

Kończy okno dialogowe składnika w kontekście elementu nadrzędnego.

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

Parametry

Nazwa Opis
outer_dc
Wymagane

Kontekst okna dialogowego nadrzędnego dla bieżącego zwrotu konwersacji.

result
Wymagane

Opcjonalnie wartość, która ma być zwracana ze składnika okna dialogowego do kontekstu nadrzędnego.

Zwraca

Typ Opis

Wartość do zwrócenia.

Uwagi

Jeśli zadanie zakończy się pomyślnie, wynik wskazuje, że okno dialogowe zakończone po zakończeniu obrotu zostało przetworzone przez okno dialogowe.

end_dialog

Wywoływana po zakończeniu okna dialogowego.

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

Parametry

Nazwa Opis
context
Wymagane

Obiekt kontekstu dla tego kolei.

instance
Wymagane

Informacje o stanie skojarzone z wystąpieniem tego składnika okna dialogowego.

reason
Wymagane

Przyczyna zakończenia okna dialogowego.

find_dialog

Znajduje okno dialogowe według identyfikatora.

async find_dialog(dialog_id: str) -> Dialog

Parametry

Nazwa Opis
dialog_id
Wymagane

Okno dialogowe do dodania.

Zwraca

Typ Opis

Okno dialogowe; lub Brak, jeśli identyfikator nie jest zgodny.

on_begin_dialog

Wywoływana po uruchomieniu okna dialogowego i wypchnięciu do stosu okna dialogowego elementu nadrzędnego.

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

Parametry

Nazwa Opis
inner_dc
Wymagane

Wewnętrzny kontekst okna dialogowego dla bieżącego kolei konwersacji.

options
Wymagane

Opcjonalne, początkowe informacje, które mają być przekazywane do okna dialogowego.

Uwagi

Jeśli zadanie zakończy się pomyślnie, wynik wskazuje, czy okno dialogowe jest nadal aktywne po przetworzeniu obrotu przez okno dialogowe.

Domyślnie wywołuje to metodę begin_dialog początkowego okna dialogowego składnika.

Zastąp tę metodę w klasie pochodnej, aby zaimplementować logikę przerwania.

on_continue_dialog

Wywoływana po kontynuowaniu okna dialogowego, w którym jest aktywne okno dialogowe, a użytkownik odpowiada za pomocą nowego działania.

async on_continue_dialog(inner_dc: DialogContext) -> DialogTurnResult

Parametry

Nazwa Opis
inner_dc
Wymagane

Wewnętrzny kontekst okna dialogowego dla bieżącego kolei konwersacji.

on_end_dialog

Kończy okno dialogowe składnika w kontekście elementu nadrzędnego.

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

Parametry

Nazwa Opis
turn_context
Wymagane

TurnContext dla bieżącego kolei konwersacji.

instance
Wymagane

Informacje o stanie skojarzone z wewnętrznym stosem okna dialogowego tego składnika.

reason
Wymagane

Przyczyna zakończenia okna dialogowego.

context
Wymagane

on_reprompt_dialog

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

Parametry

Nazwa Opis
turn_context
Wymagane

TurnContext dla bieżącego kolei konwersacji.

instance
Wymagane

Informacje o stanie skojarzone z wewnętrznym stosem okna dialogowego tego składnika.

reprompt_dialog

Wywoływana, gdy okno dialogowe powinno ponownie monitować użytkownika o podanie danych wejściowych.

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

Parametry

Nazwa Opis
context
Wymagane

Obiekt kontekstu dla tego kolei.

instance
Wymagane

Informacje o stanie dla tego okna dialogowego.

resume_dialog

Wywoływana, gdy okno dialogowe podrzędne w stosie okna dialogowego nadrzędnego zakończyło się tym kolei, zwracając kontrolkę do tego składnika okna dialogowego.

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

Parametry

Nazwa Opis
dialog_context
Wymagane

Kontekst okna dialogowego bieżącego kolei konwersacji.

reason
Wymagane

Przyczyna wznowienia okna dialogowego.

result

Opcjonalnie wartość zwrócona z okna dialogowego, które zostało wywołane.

Domyślna wartość: None

Zwraca

Typ Opis

Sygnalizuje koniec kolei

Uwagi

Kontenery są zazwyczaj węzłami liścia w stosie, ale deweloper może wypchnąć inne okna dialogowe na stosie, co spowoduje, że kontener odbiera nieoczekiwane wywołanie, aby resume_dialog po zakończeniu wypchnięcia w oknie dialogowym. Aby uniknąć przedwczesnego zakończenia kontenera, musimy zaimplementować tę metodę i po prostu poprosić nasz wewnętrzny stos okien dialogowych o ponowne wyświetlenie monitu.

Atrybuty

persisted_dialog_state

persisted_dialog_state = 'dialogs'