BotFrameworkAdapter Classe
Define um adaptador para conectar um bot a um ponto de extremidade de serviço.
Inicializa uma nova instância da classe BotFrameworkAdapter.
- Herança
-
BotFrameworkAdapterBotFrameworkAdapterBotFrameworkAdapter
Construtor
BotFrameworkAdapter(settings: BotFrameworkAdapterSettings)
Parâmetros
Nome | Description |
---|---|
settings
Obrigatório
|
As configurações para inicializar o adaptador |
Comentários
O adaptador de bot encapsula processos de autenticação e envia atividades para e recebe atividades do Serviço de Conector de Bot. Quando o bot recebe uma atividade, o adaptador cria um objeto de contexto, passa-o para a lógica do aplicativo do bot e envia respostas de volta para o canal do usuário. O adaptador processa e direciona as atividades de entrada por meio do pipeline de middleware do bot para a lógica do bot e, em seguida, recua novamente. O adaptador processa e direciona atividades de entrada através do pipeline de middleware de bot para a lógica do seu bot e, em seguida, recua novamente.
Métodos
can_process_outgoing_activity | |
continue_conversation |
Continua uma conversa com um usuário. e geralmente é encontrado no parâmetro MicrosoftAppId em config.py. :type bot_id: <xref:typing.str> :p aram claims_identity: o bot declara identidade :type claims_identity: <xref:botframework.connector.auth.ClaimsIdentity> :p aram audience: :type audience: <xref:typing.str> |
create_connector_client |
Implementação de ConnectorClientProvider.create_connector_client. |
create_conversation |
Inicia uma nova conversa com um usuário. Usado para direcionar a mensagem para um membro de um grupo. |
delete_activity |
Exclui uma atividade que foi enviada anteriormente para um canal. Deve-se observar que nem todos os canais dão suporte a esse recurso. Observação O activity_id do ConversationReference identifica a atividade a ser excluída. |
delete_conversation_member |
Exclui um membro da conversa atual. |
exchange_token | |
exchange_token_from_credentials | |
get_aad_tokens |
Recupera tokens do Azure Active Directory para recursos específicos em uma conexão configurada. da Atividade no TurnContext. :type user_id: str :p aram oauth_app_credentials: (Opcional) AppCredentials for OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential> |
get_activity_members |
Listas os membros de uma determinada atividade. Se não for especificado, a ID das atividades atuais será usada. |
get_conversation_member |
Recuperar um membro de uma conversa atual. |
get_conversation_members |
Listas os membros de uma conversa atual. |
get_conversations |
Listas conversas nas quais esse bot participou de um determinado servidor de canal. context.activity.serviceUrl :type service_url: str |
get_oauth_sign_in_link |
Obtém o link de entrada bruto a ser enviado ao usuário para entrar para um nome de conexão. |
get_sign_in_resource_from_user | |
get_sign_in_resource_from_user_and_credentials | |
get_token_status |
Recupera o token status para cada conexão configurada para o usuário determinado. Em branco retornará status de token para todas as conexões configuradas. :type include_filter: str :p aram oauth_app_credentials: (Opcional) AppCredentials for OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential> |
get_user_token |
Tenta recuperar o token de um usuário que está em um fluxo de logon. :p aram magic_code" (Opcional) o usuário inseriu o código para validar :str magic_code" str :p aram oauth_app_credentials: (Opcional) AppCredentials for OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential> |
key_for_app_credentials | |
key_for_connector_client | |
parse_request |
Analisa e valida a solicitação :p aram req: :return: |
process_activity |
Cria um contexto de turno e executa o pipeline de middleware para uma atividade de entrada. |
process_activity_with_identity | |
process_outgoing_activity | |
send_activities | |
sign_out_user |
Desconscreve o usuário com o servidor de token. |
update_activity |
Substitui uma atividade que foi enviada anteriormente para um canal. Deve-se observar que nem todos os canais dão suporte a esse recurso. |
can_process_outgoing_activity
can_process_outgoing_activity(activity: Activity) -> bool
Parâmetros
Nome | Description |
---|---|
activity
Obrigatório
|
|
continue_conversation
Continua uma conversa com um usuário.
e geralmente é encontrado no parâmetro MicrosoftAppId em config.py. :type bot_id: <xref:typing.str> :p aram claims_identity: o bot declara identidade :type claims_identity: <xref:botframework.connector.auth.ClaimsIdentity> :p aram audience: :type audience: <xref:typing.str>
async continue_conversation(reference: ConversationReference, callback: Callable, bot_id: str = None, claims_identity: ClaimsIdentity = None, audience: str = None)
Parâmetros
Nome | Description |
---|---|
reference
Obrigatório
|
|
callback
Obrigatório
|
|
bot_id
|
valor padrão: None
|
claims_identity
|
valor padrão: None
|
audience
|
valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Uma tarefa que representa o trabalho enfileirado para execução. |
Exceções
Tipo | Description |
---|---|
It raises an argument null exception.
|
Comentários
Isso geralmente é chamado de fluxo proativo de mensagens de bots, pois permite que o bot envie mensagens proativamente para uma conversa ou usuário que já esteja em uma comunicação. Cenários como enviar notificações ou cupons para um usuário são habilitados por essa função.
create_connector_client
Implementação de ConnectorClientProvider.create_connector_client.
async create_connector_client(service_url: str, identity: ClaimsIdentity = None, audience: str = None) -> ConnectorClient
Parâmetros
Nome | Description |
---|---|
service_url
Obrigatório
|
A URL do serviço |
identity
|
A identidade das declarações valor padrão: None
|
audience
|
valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Uma instância da classe <xref:botbuilder.core.ConnectorClient> |
create_conversation
Inicia uma nova conversa com um usuário. Usado para direcionar a mensagem para um membro de um grupo.
async create_conversation(reference: ConversationReference, logic: Callable[[TurnContext], Awaitable] = None, conversation_parameters: ConversationParameters = None, channel_id: str = None, service_url: str = None, credentials: AppCredentials = None)
Parâmetros
Nome | Description |
---|---|
reference
Obrigatório
|
A referência de conversa que contém o locatário |
logic
|
A lógica a ser usada para a criação da conversa valor padrão: None
|
conversation_parameters
|
As informações a serem usadas para criar a conversa valor padrão: None
|
channel_id
|
<xref:typing.str>
A ID do canal. valor padrão: None
|
service_url
|
<xref:typing.str>
O ponto de extremidade da URL de serviço do canal. valor padrão: None
|
credentials
|
<xref:botframework.connector.auth.AppCredentials>
As credenciais do aplicativo para o bot. valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Uma tarefa que representa o trabalho enfileirado para execução. |
Exceções
Tipo | Description |
---|---|
It raises a generic exception error.
|
Comentários
Para iniciar uma conversa, seu bot deve saber suas informações de conta e as informações da conta do usuário nesse canal. A maioria dos canais dá suporte apenas ao início de uma conversa de mensagem direta (não em grupo). O adaptador tenta criar uma nova conversa no canal e envia uma atividade de atualização de conversa por meio de seu pipeline de middleware para o método de retorno de chamada. Se a conversa for estabelecida com os usuários especificados, a ID da atividade conterá a ID da nova conversa.
delete_activity
Exclui uma atividade que foi enviada anteriormente para um canal. Deve-se observar que nem todos os canais dão suporte a esse recurso.
Observação
O activity_id do ConversationReference identifica a atividade a ser excluída.
async delete_activity(context: TurnContext, reference: ConversationReference)
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
O objeto de contexto para a curva |
reference
Obrigatório
|
Referência de conversa para a atividade a ser excluída |
Retornos
Tipo | Description |
---|---|
Uma tarefa que representa o trabalho enfileirado para execução |
Exceções
Tipo | Description |
---|---|
A exception error
|
delete_conversation_member
Exclui um membro da conversa atual.
async delete_conversation_member(context: TurnContext, member_id: str) -> None
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
O objeto de contexto para a curva |
member_id
Obrigatório
|
A ID do membro a ser removido da conversa |
Retornos
Tipo | Description |
---|---|
Uma tarefa que representa o trabalho enfileirado para execução.</Retorna |
Exceções
Tipo | Description |
---|---|
A exception error
|
exchange_token
async exchange_token(turn_context: TurnContext, connection_name: str, user_id: str, exchange_request: TokenExchangeRequest) -> TokenResponse
Parâmetros
Nome | Description |
---|---|
turn_context
Obrigatório
|
|
connection_name
Obrigatório
|
|
user_id
Obrigatório
|
|
exchange_request
Obrigatório
|
|
exchange_token_from_credentials
async exchange_token_from_credentials(turn_context: TurnContext, oauth_app_credentials: AppCredentials, connection_name: str, user_id: str, exchange_request: TokenExchangeRequest) -> TokenResponse
Parâmetros
Nome | Description |
---|---|
turn_context
Obrigatório
|
|
oauth_app_credentials
Obrigatório
|
|
connection_name
Obrigatório
|
|
user_id
Obrigatório
|
|
exchange_request
Obrigatório
|
|
get_aad_tokens
Recupera tokens do Azure Active Directory para recursos específicos em uma conexão configurada.
da Atividade no TurnContext. :type user_id: str :p aram oauth_app_credentials: (Opcional) AppCredentials for OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential>
async get_aad_tokens(context: TurnContext, connection_name: str, resource_urls: List[str], user_id: str = None, oauth_app_credentials: AppCredentials = None) -> Dict[str, TokenResponse]
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
|
connection_name
Obrigatório
|
|
resource_urls
Obrigatório
|
|
user_id
|
valor padrão: None
|
oauth_app_credentials
|
valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Dicionário de URLs de recurso para o correspondente :class:'botbuilder.schema.TokenResponse' |
get_activity_members
Listas os membros de uma determinada atividade.
Se não for especificado, a ID das atividades atuais será usada.
async get_activity_members(context: TurnContext, activity_id: str)
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
|
activity_id
Obrigatório
|
|
Retornos
Tipo | Description |
---|---|
Lista de membros da atividade |
Exceções
Tipo | Description |
---|---|
An exception error
|
get_conversation_member
Recuperar um membro de uma conversa atual.
async get_conversation_member(context: TurnContext, member_id: str) -> ChannelAccount
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
O objeto de contexto para a curva |
member_id
Obrigatório
|
A ID do membro |
Retornos
Tipo | Description |
---|---|
Um membro da conversa atual |
Exceções
Tipo | Description |
---|---|
<xref:A TypeError if missing member_id>, <xref:service_url>, <xref:or conversation.id>
|
get_conversation_members
Listas os membros de uma conversa atual.
async get_conversation_members(context: TurnContext)
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
O objeto de contexto para a curva |
Retornos
Tipo | Description |
---|---|
Lista de membros da conversa atual |
Exceções
Tipo | Description |
---|---|
TypeError if missing service_url or conversation.id
|
get_conversations
Listas conversas nas quais esse bot participou de um determinado servidor de canal.
context.activity.serviceUrl :type service_url: str
async get_conversations(service_url: str, credentials: AppCredentials, continuation_token: str = None)
Parâmetros
Nome | Description |
---|---|
continuation_token
|
O token de continuação da página anterior de resultados valor padrão: None
|
service_url
Obrigatório
|
|
credentials
Obrigatório
|
|
Retornos
Tipo | Description |
---|---|
Uma tarefa que representa o trabalho enfileirado para execução |
Exceções
Tipo | Description |
---|---|
A generic exception error
|
Comentários
O servidor de canal retorna resultados em páginas e cada página incluirá um continuationToken que pode ser usado para buscar a próxima página de resultados do servidor. Se a tarefa for concluída com êxito, o resultado conterá uma página dos membros da conversa atual. Essa sobrecarga pode ser chamada de fora do contexto de uma conversa, pois apenas a URL de serviço e as credenciais do bot são necessárias.
get_oauth_sign_in_link
Obtém o link de entrada bruto a ser enviado ao usuário para entrar para um nome de conexão.
async get_oauth_sign_in_link(context: TurnContext, connection_name: str, final_redirect: str = None, oauth_app_credentials: AppCredentials = None) -> str
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
Contexto para a virada de conversa atual com o usuário |
connection_name
Obrigatório
|
Nome da conexão de autenticação a ser usada |
final_redirect
|
A URL final para a qual o fluxo OAuth será redirecionada. valor padrão: None
|
oauth_app_credentials
|
<xref:botframework.connector.auth.AppCredential>
(Opcional) AppCredentials para OAuth. valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Se a tarefa for concluída com êxito, o resultado conterá o link de entrada bruto |
get_sign_in_resource_from_user
async get_sign_in_resource_from_user(turn_context: TurnContext, connection_name: str, user_id: str, final_redirect: str = None) -> SignInUrlResponse
Parâmetros
Nome | Description |
---|---|
turn_context
Obrigatório
|
|
connection_name
Obrigatório
|
|
user_id
Obrigatório
|
|
final_redirect
|
valor padrão: None
|
get_sign_in_resource_from_user_and_credentials
async get_sign_in_resource_from_user_and_credentials(turn_context: TurnContext, oauth_app_credentials: AppCredentials, connection_name: str, user_id: str, final_redirect: str = None) -> SignInUrlResponse
Parâmetros
Nome | Description |
---|---|
turn_context
Obrigatório
|
|
oauth_app_credentials
Obrigatório
|
|
connection_name
Obrigatório
|
|
user_id
Obrigatório
|
|
final_redirect
|
valor padrão: None
|
get_token_status
Recupera o token status para cada conexão configurada para o usuário determinado.
Em branco retornará status de token para todas as conexões configuradas. :type include_filter: str :p aram oauth_app_credentials: (Opcional) AppCredentials for OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential>
async get_token_status(context: TurnContext, connection_name: str = None, user_id: str = None, include_filter: str = None, oauth_app_credentials: AppCredentials = None) -> List[TokenStatus]
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
|
connection_name
|
valor padrão: None
|
user_id
|
valor padrão: None
|
include_filter
|
valor padrão: None
|
oauth_app_credentials
|
valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Matriz de <xref:botframework.connector.token_api.modelsTokenStatus> |
get_user_token
Tenta recuperar o token de um usuário que está em um fluxo de logon.
:p aram magic_code" (Opcional) o usuário inseriu o código para validar :str magic_code" str :p aram oauth_app_credentials: (Opcional) AppCredentials for OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential>
async get_user_token(context: TurnContext, connection_name: str, magic_code: str = None, oauth_app_credentials: AppCredentials = None) -> TokenResponse
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
|
connection_name
Obrigatório
|
|
magic_code
|
valor padrão: None
|
oauth_app_credentials
|
valor padrão: None
|
Retornos
Tipo | Description |
---|---|
:<xref:class>:’TokenResponse`
|
Resposta de token |
Exceções
Tipo | Description |
---|---|
An exception error
|
key_for_app_credentials
static key_for_app_credentials(app_id: str, scope: str)
Parâmetros
Nome | Description |
---|---|
app_id
Obrigatório
|
|
scope
Obrigatório
|
|
key_for_connector_client
static key_for_connector_client(service_url: str, app_id: str, scope: str)
Parâmetros
Nome | Description |
---|---|
service_url
Obrigatório
|
|
app_id
Obrigatório
|
|
scope
Obrigatório
|
|
parse_request
Analisa e valida a solicitação :p aram req: :return:
async static parse_request(req)
Parâmetros
Nome | Description |
---|---|
req
Obrigatório
|
|
process_activity
Cria um contexto de turno e executa o pipeline de middleware para uma atividade de entrada.
async process_activity(req, auth_header: str, logic: Callable)
Parâmetros
Nome | Description |
---|---|
req
Obrigatório
|
<xref:typing.str>
A atividade de entrada |
auth_header
Obrigatório
|
<xref:typing.str>
O cabeçalho de autenticação HTTP da solicitação |
logic
Obrigatório
|
A lógica a ser executada no final do pipeline de middleware do adaptador. |
Retornos
Tipo | Description |
---|---|
Uma tarefa que representa o trabalho enfileirado para execução. |
Comentários
Essa classe processa uma atividade recebida pelo servidor Web de bots. Isso inclui todas as mensagens enviadas de um usuário e é o método que conduz o que geralmente é chamado de fluxo de mensagens reativas de bots. Chame esse método para enviar uma mensagem novamente para uma conversa. Se a tarefa for concluída com êxito, um InvokeResponse será retornado; caso contrário, . nulo é retornado.
process_activity_with_identity
async process_activity_with_identity(activity: Activity, identity: ClaimsIdentity, logic: Callable)
Parâmetros
Nome | Description |
---|---|
activity
Obrigatório
|
|
identity
Obrigatório
|
|
logic
Obrigatório
|
|
process_outgoing_activity
async process_outgoing_activity(turn_context: TurnContext, activity: Activity) -> ResourceResponse
Parâmetros
Nome | Description |
---|---|
turn_context
Obrigatório
|
|
activity
Obrigatório
|
|
send_activities
async send_activities(context: TurnContext, activities: List[Activity]) -> List[ResourceResponse]
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
|
activities
Obrigatório
|
|
sign_out_user
Desconscreve o usuário com o servidor de token.
async sign_out_user(context: TurnContext, connection_name: str = None, user_id: str = None, oauth_app_credentials: AppCredentials = None)
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
Contexto para a virada de conversa atual com o usuário |
connection_name
|
Nome da conexão de autenticação a ser usada valor padrão: None
|
user_id
|
ID de usuário do usuário para sair valor padrão: None
|
oauth_app_credentials
|
<xref:botframework.connector.auth.AppCredential>
(Opcional) AppCredentials para OAuth. valor padrão: None
|
update_activity
Substitui uma atividade que foi enviada anteriormente para um canal. Deve-se observar que nem todos os canais dão suporte a esse recurso.
async update_activity(context: TurnContext, activity: Activity)
Parâmetros
Nome | Description |
---|---|
context
Obrigatório
|
O objeto de contexto para a curva |
activity
Obrigatório
|
Nova atividade de substituição |
Retornos
Tipo | Description |
---|---|
Uma tarefa que representa o trabalho enfileirado para execução |
Exceções
Tipo | Description |
---|---|
A generic exception error
|
Comentários
Se a atividade for enviada com êxito, o resultado da tarefa conterá um ResourceResponse objeto que contém a ID que o canal de recebimento atribuiu à atividade. Antes de chamar essa função, defina a ID da atividade de substituição como a ID da atividade a ser substituída.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de