BotFrameworkAdapter Klass

Definierar ett kort för att ansluta en robot till en tjänstslutpunkt.

Initierar en ny instans av klassen BotFrameworkAdapter.

Konstruktor

BotFrameworkAdapter(settings: BotFrameworkAdapterSettings)

Parametrar

Name Description
settings
Obligatorisk

Inställningarna för att initiera adaptern

Kommentarer

Robotkortet kapslar in autentiseringsprocesser och skickar aktiviteter till och tar emot aktiviteter från Bot Connector-tjänsten. När roboten tar emot en aktivitet skapar adaptern ett kontextobjekt, skickar det till robotens programlogik och skickar svar tillbaka till användarens kanal. Adaptern bearbetar och dirigerar inkommande aktiviteter via robotens mellanprogramspipeline till robotens logik och backar sedan ut igen. När varje aktivitet flödar in och ut ur roboten kan varje mellanprogram inspektera eller agera på aktiviteten, både före och efter att robotlogik körs.

Metoder

can_process_outgoing_activity
continue_conversation

Fortsätter en konversation med en användare.

och finns vanligtvis i parametern MicrosoftAppId i config.py. :type bot_id: <xref:typing.str> :p aram claims_identity: Roboten hävdar identitet :type claims_identity: <xref:botframework.connector.auth.ClaimsIdentity> :p aram audience: :type audience: <xref:typing.str>

create_connector_client

Implementering av ConnectorClientProvider.create_connector_client.

create_conversation

Startar en ny konversation med en användare. Används för att dirigera meddelanden till en medlem i en grupp.

delete_activity

Tar bort en aktivitet som tidigare skickades till en kanal. Det bör noteras att inte alla kanaler stöder den här funktionen.

Not

Activity_id i ConversationReference identifierar aktiviteten som ska tas bort.

delete_conversation_member

Tar bort en medlem från den aktuella konversationen.

exchange_token
exchange_token_from_credentials
get_aad_tokens

Hämtar Azure Active Directory-token för specifika resurser på en konfigurerad anslutning.

från aktiviteten i TurnContext. :type user_id: str :p aram oauth_app_credentials: (Valfritt) AppCredentials för OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential>

get_activity_members

Visar en lista över medlemmar i en viss aktivitet.

Om det inte anges används det aktuella aktivitets-ID:t.

get_conversation_member

Hämta en medlem i en aktuell konversation.

get_conversation_members

Visar en lista över medlemmar i en aktuell konversation.

get_conversations

Visar en lista över konversationer där den här roboten har deltagit för en viss kanalserver.

context.activity.serviceUrl :type service_url: str

get_oauth_sign_in_link

Hämtar den råa inloggningslänken som ska skickas till användaren för inloggning för ett anslutningsnamn.

get_sign_in_resource_from_user
get_sign_in_resource_from_user_and_credentials
get_token_status

Hämtar tokenstatusen för varje konfigurerad anslutning för den angivna användaren.

Tom returnerar tokenstatus för alla konfigurerade anslutningar. :type include_filter: str :p aram oauth_app_credentials: (Valfritt) AppCredentials för OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential>

get_user_token

Försöker hämta token för en användare som finns i ett inloggningsflöde.

:p aram magic_code" (Valfritt) har användaren angett kod för att verifiera :str magic_code" str :p aram oauth_app_credentials: (Valfritt) AppCredentials för OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential>

key_for_app_credentials
key_for_connector_client
parse_request

Parsar och validerar begäran :p aram req: :return:

process_activity

Skapar en turkontext och kör pipelinen för mellanprogram för en inkommande aktivitet.

process_activity_with_identity
process_outgoing_activity
send_activities
sign_out_user

Loggar ut användaren med tokenservern.

update_activity

Ersätter en aktivitet som tidigare skickades till en kanal. Det bör noteras att inte alla kanaler stöder den här funktionen.

can_process_outgoing_activity

can_process_outgoing_activity(activity: Activity) -> bool

Parametrar

Name Description
activity
Obligatorisk

continue_conversation

Fortsätter en konversation med en användare.

och finns vanligtvis i parametern MicrosoftAppId i config.py. :type bot_id: <xref:typing.str> :p aram claims_identity: Roboten hävdar identitet :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)

Parametrar

Name Description
reference
Obligatorisk
callback
Obligatorisk
bot_id
Standardvärde: None
claims_identity
Standardvärde: None
audience
Standardvärde: None

Returer

Typ Description

En uppgift som representerar det arbete som ska köras i kö.

Undantag

Typ Description
It raises an argument null exception.

Kommentarer

Detta kallas ofta för robotar proaktiva meddelanden flöde eftersom roboten proaktivt kan skicka meddelanden till en konversation eller användare som redan är i en kommunikation. Scenarier som att skicka meddelanden eller kuponger till en användare aktiveras av den här funktionen.

create_connector_client

Implementering av ConnectorClientProvider.create_connector_client.

async create_connector_client(service_url: str, identity: ClaimsIdentity = None, audience: str = None) -> ConnectorClient

Parametrar

Name Description
service_url
Obligatorisk

Tjänstens URL

identity

Anspråksidentiteten

Standardvärde: None
audience
Standardvärde: None

Returer

Typ Description

En instans av klassen <xref:botbuilder.core.ConnectorClient>

create_conversation

Startar en ny konversation med en användare. Används för att dirigera meddelanden till en medlem i en grupp.

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)

Parametrar

Name Description
reference
Obligatorisk

Konversationsreferensen som innehåller klientorganisationen

logic

Logiken som ska användas för att skapa konversationen

Standardvärde: None
conversation_parameters

Den information som ska användas för att skapa konversationen

Standardvärde: None
channel_id
<xref:typing.str>

ID:t för kanalen.

Standardvärde: None
service_url
<xref:typing.str>

Kanalens tjänst-URL-slutpunkt.

Standardvärde: None
credentials
<xref:botframework.connector.auth.AppCredentials>

Autentiseringsuppgifterna för roboten.

Standardvärde: None

Returer

Typ Description

En uppgift som representerar det arbete som ska köras i kö.

Undantag

Typ Description
It raises a generic exception error.

Kommentarer

För att starta en konversation måste roboten känna till kontoinformationen och användarens kontoinformation på kanalen. De flesta kanaler har endast stöd för att initiera en direktmeddelandekonversation (icke-grupp). Adaptern försöker skapa en ny konversation i kanalen och skickar sedan en konversationsuppdateringsaktivitet via sin mellanprogramspipeline till motringningsmetoden. Om konversationen upprättas med de angivna användarna innehåller aktivitetens ID ID för den nya konversationen.

delete_activity

Tar bort en aktivitet som tidigare skickades till en kanal. Det bör noteras att inte alla kanaler stöder den här funktionen.

Not

Activity_id i ConversationReference identifierar aktiviteten som ska tas bort.

async delete_activity(context: TurnContext, reference: ConversationReference)

Parametrar

Name Description
context
Obligatorisk

Kontextobjektet för svängen

reference
Obligatorisk

Konversationsreferens för aktiviteten som ska tas bort

Returer

Typ Description

En uppgift som representerar det arbete som ska köras i kö

Undantag

Typ Description
A exception error

delete_conversation_member

Tar bort en medlem från den aktuella konversationen.

async delete_conversation_member(context: TurnContext, member_id: str) -> None

Parametrar

Name Description
context
Obligatorisk

Kontextobjektet för svängen

member_id
Obligatorisk
str

ID:t för medlemmen som ska ta bort från konversationen

Returer

Typ Description

En uppgift som representerar det arbete som ska köras i kö.</returns

Undantag

Typ Description
A exception error

exchange_token

async exchange_token(turn_context: TurnContext, connection_name: str, user_id: str, exchange_request: TokenExchangeRequest) -> TokenResponse

Parametrar

Name Description
turn_context
Obligatorisk
connection_name
Obligatorisk
user_id
Obligatorisk
exchange_request
Obligatorisk

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

Parametrar

Name Description
turn_context
Obligatorisk
oauth_app_credentials
Obligatorisk
connection_name
Obligatorisk
user_id
Obligatorisk
exchange_request
Obligatorisk

get_aad_tokens

Hämtar Azure Active Directory-token för specifika resurser på en konfigurerad anslutning.

från aktiviteten i TurnContext. :type user_id: str :p aram oauth_app_credentials: (Valfritt) AppCredentials för 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]

Parametrar

Name Description
context
Obligatorisk
connection_name
Obligatorisk
resource_urls
Obligatorisk
user_id
Standardvärde: None
oauth_app_credentials
Standardvärde: None

Returer

Typ Description

Ordlista över resurs-URL:er till motsvarande :class:'botbuilder.schema.TokenResponse'

get_activity_members

Visar en lista över medlemmar i en viss aktivitet.

Om det inte anges används det aktuella aktivitets-ID:t.

async get_activity_members(context: TurnContext, activity_id: str)

Parametrar

Name Description
context
Obligatorisk
activity_id
Obligatorisk

Returer

Typ Description

Lista över medlemmar i aktiviteten

Undantag

Typ Description
An exception error

get_conversation_member

Hämta en medlem i en aktuell konversation.

async get_conversation_member(context: TurnContext, member_id: str) -> ChannelAccount

Parametrar

Name Description
context
Obligatorisk

Kontextobjektet för svängen

member_id
Obligatorisk
str

Medlems-ID:t

Returer

Typ Description

En medlem i den aktuella konversationen

Undantag

Typ Description
<xref:A TypeError if missing member_id>, <xref:service_url>, <xref:or conversation.id>

get_conversation_members

Visar en lista över medlemmar i en aktuell konversation.

async get_conversation_members(context: TurnContext)

Parametrar

Name Description
context
Obligatorisk

Kontextobjektet för svängen

Returer

Typ Description

Lista över medlemmar i den aktuella konversationen

Undantag

Typ Description
TypeError if missing service_url or conversation.id

get_conversations

Visar en lista över konversationer där den här roboten har deltagit för en viss kanalserver.

context.activity.serviceUrl :type service_url: str

async get_conversations(service_url: str, credentials: AppCredentials, continuation_token: str = None)

Parametrar

Name Description
continuation_token
str

Fortsättningstoken från föregående resultatsida

Standardvärde: None
service_url
Obligatorisk
credentials
Obligatorisk

Returer

Typ Description

En uppgift som representerar det arbete som ska köras i kö

Undantag

Typ Description
A generic exception error

Kommentarer

Kanalservern returnerar resultat på sidor och varje sida innehåller en fortsättningToken som kan användas för att hämta nästa sida med resultat från servern. Om uppgiften slutförs innehåller resultatet en sida med medlemmarna i den aktuella konversationen. Den här överlagringen kan anropas utanför kontexten för en konversation eftersom endast robotens tjänst-URL och autentiseringsuppgifter krävs.

Hämtar den råa inloggningslänken som ska skickas till användaren för inloggning för ett anslutningsnamn.

async get_oauth_sign_in_link(context: TurnContext, connection_name: str, final_redirect: str = None, oauth_app_credentials: AppCredentials = None) -> str

Parametrar

Name Description
context
Obligatorisk

Kontext för den aktuella konversationsvändningen med användaren

connection_name
Obligatorisk
str

Namnet på den autentiseringsanslutning som ska användas

final_redirect

Den sista URL:en som OAuth-flödet omdirigeras till.

Standardvärde: None
oauth_app_credentials
<xref:botframework.connector.auth.AppCredential>

(Valfritt) AppCredentials för OAuth.

Standardvärde: None

Returer

Typ Description

Om uppgiften har slutförts innehåller resultatet länken för rå inloggning

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

Parametrar

Name Description
turn_context
Obligatorisk
connection_name
Obligatorisk
user_id
Obligatorisk
final_redirect
Standardvärde: 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

Parametrar

Name Description
turn_context
Obligatorisk
oauth_app_credentials
Obligatorisk
connection_name
Obligatorisk
user_id
Obligatorisk
final_redirect
Standardvärde: None

get_token_status

Hämtar tokenstatusen för varje konfigurerad anslutning för den angivna användaren.

Tom returnerar tokenstatus för alla konfigurerade anslutningar. :type include_filter: str :p aram oauth_app_credentials: (Valfritt) AppCredentials för 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]

Parametrar

Name Description
context
Obligatorisk
connection_name
Standardvärde: None
user_id
Standardvärde: None
include_filter
Standardvärde: None
oauth_app_credentials
Standardvärde: None

Returer

Typ Description

Matris med <xref:botframework.connector.token_api.modelsTokenStatus>

get_user_token

Försöker hämta token för en användare som finns i ett inloggningsflöde.

:p aram magic_code" (Valfritt) har användaren angett kod för att verifiera :str magic_code" str :p aram oauth_app_credentials: (Valfritt) AppCredentials för 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

Parametrar

Name Description
context
Obligatorisk
connection_name
Obligatorisk
magic_code
Standardvärde: None
oauth_app_credentials
Standardvärde: None

Returer

Typ Description
:<xref:class>:’TokenResponse`

Tokensvar

Undantag

Typ Description
An exception error

key_for_app_credentials

static key_for_app_credentials(app_id: str, scope: str)

Parametrar

Name Description
app_id
Obligatorisk
scope
Obligatorisk

key_for_connector_client

static key_for_connector_client(service_url: str, app_id: str, scope: str)

Parametrar

Name Description
service_url
Obligatorisk
app_id
Obligatorisk
scope
Obligatorisk

parse_request

Parsar och validerar begäran :p aram req: :return:

async static parse_request(req)

Parametrar

Name Description
req
Obligatorisk

process_activity

Skapar en turkontext och kör pipelinen för mellanprogram för en inkommande aktivitet.

async process_activity(req, auth_header: str, logic: Callable)

Parametrar

Name Description
req
Obligatorisk
<xref:typing.str>

Den inkommande aktiviteten

auth_header
Obligatorisk
<xref:typing.str>

HTTP-autentiseringshuvudet för begäran

logic
Obligatorisk

Logiken som ska köras i slutet av adapterns mellanprogramspipeline.

Returer

Typ Description

En uppgift som representerar det arbete som ska köras i kö.

Kommentarer

Den här klassen bearbetar en aktivitet som tas emot av robotwebbservern. Detta omfattar alla meddelanden som skickas från en användare och är den metod som driver det som ofta kallas robotar reaktiva meddelanden flöde. Anropa den här metoden för att skicka ett meddelande till en konversation reaktivt. Om uppgiften har slutförts returneras en InvokeResponse. annars. null- returneras.

process_activity_with_identity

async process_activity_with_identity(activity: Activity, identity: ClaimsIdentity, logic: Callable)

Parametrar

Name Description
activity
Obligatorisk
identity
Obligatorisk
logic
Obligatorisk

process_outgoing_activity

async process_outgoing_activity(turn_context: TurnContext, activity: Activity) -> ResourceResponse

Parametrar

Name Description
turn_context
Obligatorisk
activity
Obligatorisk

send_activities

async send_activities(context: TurnContext, activities: List[Activity]) -> List[ResourceResponse]

Parametrar

Name Description
context
Obligatorisk
activities
Obligatorisk

sign_out_user

Loggar ut användaren med tokenservern.

async sign_out_user(context: TurnContext, connection_name: str = None, user_id: str = None, oauth_app_credentials: AppCredentials = None)

Parametrar

Name Description
context
Obligatorisk

Kontext för den aktuella konversationsvändningen med användaren

connection_name
str

Namnet på den autentiseringsanslutning som ska användas

Standardvärde: None
user_id
str

Användar-ID för användare att logga ut

Standardvärde: None
oauth_app_credentials
<xref:botframework.connector.auth.AppCredential>

(Valfritt) AppCredentials för OAuth.

Standardvärde: None

update_activity

Ersätter en aktivitet som tidigare skickades till en kanal. Det bör noteras att inte alla kanaler stöder den här funktionen.

async update_activity(context: TurnContext, activity: Activity)

Parametrar

Name Description
context
Obligatorisk

Kontextobjektet för svängen

activity
Obligatorisk

Ny ersättningsaktivitet

Returer

Typ Description

En uppgift som representerar det arbete som ska köras i kö

Undantag

Typ Description
A generic exception error

Kommentarer

Om aktiviteten har skickats innehåller aktivitetsresultatet ett ResourceResponse objekt som innehåller det ID som den mottagande kanalen tilldelade aktiviteten. Innan du anropar den här funktionen anger du ID för ersättningsaktiviteten till ID:t för aktiviteten som ska ersättas.