ComponentDialog Classe
Um Dialog composto por outros diálogos
Inicializa uma nova instância do ComponentDialog
Construtor
ComponentDialog(dialog_id: str)
Parâmetros
| Name | Description |
|---|---|
|
dialog_id
Necessário
|
A ID a ser atribuída à nova caixa de diálogo dentro do conjunto de diálogos pai. |
Variáveis
| Name | Description |
|---|---|
|
state
|
<xref:persisted_dialog>
|
Métodos
| add_dialog |
Adiciona um <xref:botbuilder.dialogs.component_dialog.Dialog> à caixa de diálogo do componente e retorna o componente atualizado. |
| begin_dialog |
Chamado quando a caixa de diálogo é iniciada e empurrada para a pilha de diálogo do pai. Se a tarefa for bem-sucedida, o resultado indica se a caixa de diálogo ainda está ativa após o turno ter sido processado pela caixa de diálogo. |
| continue_dialog |
Chamado quando a caixa de diálogo é continuada, onde é a caixa de diálogo ativa e o usuário responde com uma nova atividade. |
| end_component |
Termina a caixa de diálogo do componente no contexto do pai. |
| end_dialog |
Chamado quando a caixa de diálogo está terminando. |
| find_dialog |
Localiza uma caixa de diálogo por ID. |
| on_begin_dialog |
Chamado quando a caixa de diálogo é iniciada e empurrada para a pilha de diálogo do pai. |
| on_continue_dialog |
Chamado quando a caixa de diálogo é continuada, onde é a caixa de diálogo ativa e o usuário responde com uma nova atividade. |
| on_end_dialog |
Termina a caixa de diálogo do componente no contexto do pai. |
| on_reprompt_dialog | |
| reprompt_dialog |
Chamado quando a caixa de diálogo deve solicitar novamente a entrada do usuário. |
| resume_dialog |
Chamado quando uma caixa de diálogo filho na pilha de diálogo do pai concluiu esse turno, retornando o controle para esse componente de diálogo. |
add_dialog
Adiciona um <xref:botbuilder.dialogs.component_dialog.Dialog> à caixa de diálogo do componente e retorna o componente atualizado.
add_dialog(dialog: Dialog) -> object
Parâmetros
| Name | Description |
|---|---|
|
dialog
Necessário
|
A caixa de diálogo a ser adicionada. |
Devoluções
| Tipo | Description |
|---|---|
|
O ComponentDialogatualizado . |
begin_dialog
Chamado quando a caixa de diálogo é iniciada e empurrada para a pilha de diálogo do pai.
Se a tarefa for bem-sucedida, o resultado indica se a caixa de diálogo ainda está ativa após o turno ter sido processado pela caixa de diálogo.
async begin_dialog(dialog_context: DialogContext, options: object = None) -> DialogTurnResult
Parâmetros
| Name | Description |
|---|---|
|
dialog_context
Necessário
|
O DialogContext para a virada atual da conversa. |
|
options
|
Opcional, informações iniciais para passar para a caixa de diálogo. Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
|
Sinaliza o fim da curva |
continue_dialog
Chamado quando a caixa de diálogo é continuada, onde é a caixa de diálogo ativa e o usuário responde com uma nova atividade.
async continue_dialog(dialog_context: DialogContext) -> DialogTurnResult
Parâmetros
| Name | Description |
|---|---|
|
dialog_context
Necessário
|
O contexto da caixa de diálogo pai para o turno atual da conversa. |
Devoluções
| Tipo | Description |
|---|---|
|
Sinaliza o fim da curva |
Observações
Se a tarefa for bem-sucedida, o resultado indica se a caixa de diálogo ainda está ativa após o turno ter sido processado pela caixa de diálogo. O resultado também pode conter um valor de retorno.
Se esse método não for substituído, a caixa de diálogo do componente chamará o método continue_dialog em seu contexto de diálogo interno. Se a pilha de diálogo interna estiver vazia, a caixa de diálogo do componente terminará e, se um result estiver disponível, a caixa de diálogo do componente usará isso como valor de retorno.
end_component
Termina a caixa de diálogo do componente no contexto do pai.
async end_component(outer_dc: DialogContext, result: object) -> DialogTurnResult
Parâmetros
| Name | Description |
|---|---|
|
outer_dc
Necessário
|
O contexto da caixa de diálogo pai para o turno atual da conversa. |
|
result
Necessário
|
Opcional, valor a ser retornado do componente de diálogo para o contexto pai. |
Devoluções
| Tipo | Description |
|---|---|
|
Valor a devolver. |
Observações
Se a tarefa for bem-sucedida, o resultado indica que a caixa de diálogo terminou depois que o turno foi processado pela caixa de diálogo.
end_dialog
Chamado quando a caixa de diálogo está terminando.
async end_dialog(context: TurnContext, instance: DialogInstance, reason: DialogReason) -> None
Parâmetros
| Name | Description |
|---|---|
|
context
Necessário
|
O objeto de contexto para esta viragem. |
|
instance
Necessário
|
Informações de estado associadas à instância desta caixa de diálogo de componente. |
|
reason
Necessário
|
Razão pela qual o diálogo terminou. |
find_dialog
Localiza uma caixa de diálogo por ID.
async find_dialog(dialog_id: str) -> Dialog
Parâmetros
| Name | Description |
|---|---|
|
dialog_id
Necessário
|
A caixa de diálogo a ser adicionada. |
Devoluções
| Tipo | Description |
|---|---|
|
O diálogo; ou Nenhum, se não houver uma correspondência para o ID. |
on_begin_dialog
Chamado quando a caixa de diálogo é iniciada e empurrada para a pilha de diálogo do pai.
async on_begin_dialog(inner_dc: DialogContext, options: object) -> DialogTurnResult
Parâmetros
| Name | Description |
|---|---|
|
inner_dc
Necessário
|
O contexto de diálogo interno para a virada atual da conversa. |
|
options
Necessário
|
Opcional, informações iniciais para passar para a caixa de diálogo. |
Observações
Se a tarefa for bem-sucedida, o resultado indica se a caixa de diálogo ainda está ativa após o turno ter sido processado pela caixa de diálogo.
Por padrão, isso chama o método begin_dialog da caixa de diálogo inicial do componente.
Substitua esse método em uma classe derivada para implementar a lógica de interrupção.
on_continue_dialog
Chamado quando a caixa de diálogo é continuada, onde é a caixa de diálogo ativa e o usuário responde com uma nova atividade.
async on_continue_dialog(inner_dc: DialogContext) -> DialogTurnResult
Parâmetros
| Name | Description |
|---|---|
|
inner_dc
Necessário
|
O contexto de diálogo interno para a virada atual da conversa. |
on_end_dialog
Termina a caixa de diálogo do componente no contexto do pai.
async on_end_dialog(context: TurnContext, instance: DialogInstance, reason: DialogReason) -> None
Parâmetros
| Name | Description |
|---|---|
|
turn_context
Necessário
|
O TurnContext para a virada atual da conversa. |
|
instance
Necessário
|
Informações de estado associadas à pilha de diálogo interna desta caixa de diálogo de componente. |
|
reason
Necessário
|
Razão pela qual o diálogo terminou. |
|
context
Necessário
|
|
on_reprompt_dialog
async on_reprompt_dialog(turn_context: TurnContext, instance: DialogInstance) -> None
Parâmetros
| Name | Description |
|---|---|
|
turn_context
Necessário
|
O TurnContext para a virada atual da conversa. |
|
instance
Necessário
|
Informações de estado associadas à pilha de diálogo interna desta caixa de diálogo de componente. |
reprompt_dialog
Chamado quando a caixa de diálogo deve solicitar novamente a entrada do usuário.
async reprompt_dialog(context: TurnContext, instance: DialogInstance) -> None
Parâmetros
| Name | Description |
|---|---|
|
context
Necessário
|
O objeto de contexto para esta viragem. |
|
instance
Necessário
|
Indique as informações para esta caixa de diálogo. |
resume_dialog
Chamado quando uma caixa de diálogo filho na pilha de diálogo do pai concluiu esse turno, retornando o controle para esse componente de diálogo.
async resume_dialog(dialog_context: DialogContext, reason: DialogReason, result: object = None) -> DialogTurnResult
Parâmetros
| Name | Description |
|---|---|
|
dialog_context
Necessário
|
O contexto de diálogo para o turno atual da conversa. |
|
reason
Necessário
|
Motivo pelo qual a caixa de diálogo foi retomada. |
|
result
|
Opcional, valor retornado da caixa de diálogo que foi chamada. Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
|
Sinaliza o fim da curva |
Observações
Os contêineres são normalmente nós folha na pilha, mas o desenvolvedor é livre para empurrar outras caixas de diálogo no topo da pilha, o que resultará no contêiner recebendo uma chamada inesperada para resume_dialog quando a caixa de diálogo pressionada terminar. Para evitar que o contêiner termine prematuramente, precisamos implementar esse método e simplesmente pedir à nossa pilha de diálogo interna para solicitar novamente.
Atributos
persisted_dialog_state
persisted_dialog_state = 'dialogs'