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.
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 do Bot Connector. 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 de bot para a lógica do bot e, em seguida, volta para fora novamente. À medida que cada atividade entra e sai do bot, cada parte do middleware pode inspecionar ou agir sobre a atividade, antes e depois da execução da lógica do bot.
Métodos
| can_process_outgoing_activity | |
| continue_conversation |
Continua uma conversa com um usuário. e geralmente é encontrado no parâmetro MicrosoftAppId no config.py. :type bot_id: <xref:typing.str> :p aram claims_identity: The bot claims identity :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. Observe que nem todos os canais dão suporte a esse recurso. Nota 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 |
Lista 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 |
Lista os membros de uma conversa atual. |
| get_conversations |
Lista as conversas nas quais esse bot participou para 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 status do token para cada conexão configurada para o usuário fornecido. Em branco retornará o status do 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. Observe 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 no config.py. :type bot_id: <xref:typing.str> :p aram claims_identity: The bot claims identity :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 a ser executado. |
Exceções
| Tipo | Description |
|---|---|
|
It raises an argument null exception.
|
Comentários
Isso geralmente é chamado de bots fluxo proativo de mensagens, pois permite que o bot envie mensagens proativamente para uma conversa ou usuário que já está 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 a ser executado. |
Exceções
| Tipo | Description |
|---|---|
|
It raises a generic exception error.
|
Comentários
Para iniciar uma conversa, o 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 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. Observe que nem todos os canais dão suporte a esse recurso.
Nota
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 a ser executado |
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 a ser executado.</returns |
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
Lista 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
Lista 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
Lista as conversas nas quais esse bot participou para 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 dos resultados Valor padrão: None
|
|
service_url
Obrigatório
|
|
|
credentials
Obrigatório
|
|
Retornos
| Tipo | Description |
|---|---|
|
Uma tarefa que representa o trabalho enfileirado a ser executado |
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 somente 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 atual da conversa 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 status do token para cada conexão configurada para o usuário fornecido.
Em branco retornará o status do 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 a ser executado. |
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 bots fluxo de mensagens reativas. Chame esse método para enviar novamente uma mensagem 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 atual da conversa com o usuário |
|
connection_name
|
Nome da conexão de autenticação a ser usada Valor padrão: None
|
|
user_id
|
ID 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. Observe 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 a ser executado |
Exceções
| Tipo | Description |
|---|---|
|
A generic exception error
|
Comentários
Se a atividade for enviada com êxito, o resultado da tarefa conterá um objeto ResourceResponse 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.