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
|
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'