BotFrameworkAdapter Kelas
Menentukan adaptor untuk menyambungkan bot ke titik akhir layanan.
Menginisialisasi instans baru kelas BotFrameworkAdapter.
Konstruktor
BotFrameworkAdapter(settings: BotFrameworkAdapterSettings)
Parameter
| Nama | Deskripsi |
|---|---|
|
settings
Diperlukan
|
Pengaturan untuk menginisialisasi adaptor |
Keterangan
Adaptor bot merangkum proses autentikasi dan mengirim aktivitas ke dan menerima aktivitas dari Bot Connector Service. Saat bot Anda menerima aktivitas, adaptor membuat objek konteks, meneruskannya ke logika aplikasi bot Anda, dan mengirim respons kembali ke saluran pengguna. Adaptor memproses dan mengarahkan aktivitas masuk melalui alur middleware bot ke logika bot Anda dan kemudian kembali keluar lagi. Saat setiap aktivitas mengalir masuk dan keluar dari bot, setiap bagian middleware dapat memeriksa atau bertindak berdasarkan aktivitas, baik sebelum dan sesudah logika bot berjalan.
Metode
| can_process_outgoing_activity | |
| continue_conversation |
Melanjutkan percakapan dengan pengguna. dan umumnya ditemukan dalam parameter MicrosoftAppId di config.py. :type bot_id: <xref:typing.str> :p aram claims_identity: Identitas klaim bot :ketik claims_identity: audiens <xref:botframework.connector.auth.ClaimsIdentity> :p aram: :ketik audiens: <xref:typing.str> |
| create_connector_client |
Implementasi ConnectorClientProvider.create_connector_client. |
| create_conversation |
Memulai percakapan baru dengan pengguna. Digunakan untuk mengarahkan pesan ke anggota grup. |
| delete_activity |
Menghapus aktivitas yang sebelumnya dikirim ke saluran. Perlu dicatat bahwa tidak semua saluran mendukung fitur ini. Nota Activity_id ConversationReference mengidentifikasi aktivitas yang akan dihapus. |
| delete_conversation_member |
Menghapus anggota dari percakapan saat ini. |
| exchange_token | |
| exchange_token_from_credentials | |
| get_aad_tokens |
Mengambil token Azure Active Directory untuk sumber daya tertentu pada koneksi yang dikonfigurasi. dari Aktivitas di TurnContext. :type user_id: str :p aram oauth_app_credentials: (Opsional) AppCredentials untuk OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential> |
| get_activity_members |
Mencantumkan anggota aktivitas tertentu. Jika tidak ditentukan, ID aktivitas saat ini akan digunakan. |
| get_conversation_member |
Mengambil anggota percakapan saat ini. |
| get_conversation_members |
Mencantumkan anggota percakapan saat ini. |
| get_conversations |
Mencantumkan Percakapan di mana bot ini telah berpartisipasi untuk server saluran tertentu. context.activity.serviceUrl :type service_url: str |
| get_oauth_sign_in_link |
Mendapatkan tautan masuk mentah untuk dikirim ke pengguna untuk masuk untuk nama koneksi. |
| get_sign_in_resource_from_user | |
| get_sign_in_resource_from_user_and_credentials | |
| get_token_status |
Mengambil status token untuk setiap koneksi yang dikonfigurasi untuk pengguna tertentu. Kosong akan mengembalikan status token untuk semua koneksi yang dikonfigurasi. :type include_filter: str :p aram oauth_app_credentials: (Opsional) AppCredentials untuk OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential> |
| get_user_token |
Mencoba mengambil token untuk pengguna yang berada dalam alur masuk. pengguna :p aram magic_code" (Opsional) memasukkan kode untuk memvalidasi :str magic_code" str :p aram oauth_app_credentials: (Opsional) AppCredentials untuk OAuth. :type oauth_app_credentials: <xref:botframework.connector.auth.AppCredential> |
| key_for_app_credentials | |
| key_for_connector_client | |
| parse_request |
Mengurai dan memvalidasi permintaan :p aram req: :return: |
| process_activity |
Membuat konteks giliran dan menjalankan alur middleware untuk aktivitas masuk. |
| process_activity_with_identity | |
| process_outgoing_activity | |
| send_activities | |
| sign_out_user |
Mengeluarkan pengguna dengan server token. |
| update_activity |
Mengganti aktivitas yang sebelumnya dikirim ke saluran. Perlu dicatat bahwa tidak semua saluran mendukung fitur ini. |
can_process_outgoing_activity
can_process_outgoing_activity(activity: Activity) -> bool
Parameter
| Nama | Deskripsi |
|---|---|
|
activity
Diperlukan
|
|
continue_conversation
Melanjutkan percakapan dengan pengguna.
dan umumnya ditemukan dalam parameter MicrosoftAppId di config.py. :type bot_id: <xref:typing.str> :p aram claims_identity: Identitas klaim bot :ketik claims_identity: audiens <xref:botframework.connector.auth.ClaimsIdentity> :p aram: :ketik audiens: <xref:typing.str>
async continue_conversation(reference: ConversationReference, callback: Callable, bot_id: str = None, claims_identity: ClaimsIdentity = None, audience: str = None)
Parameter
| Nama | Deskripsi |
|---|---|
|
reference
Diperlukan
|
|
|
callback
Diperlukan
|
|
|
bot_id
|
Nilai default: None
|
|
claims_identity
|
Nilai default: None
|
|
audience
|
Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Tugas yang mewakili pekerjaan yang diantrekan untuk dijalankan. |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
It raises an argument null exception.
|
Keterangan
Ini sering disebut sebagai bot olahpesan proaktif alur karena memungkinkan bot secara proaktif mengirim pesan ke percakapan atau pengguna yang sudah berada dalam komunikasi. Skenario seperti mengirim pemberitahuan atau kupon ke pengguna diaktifkan oleh fungsi ini.
create_connector_client
Implementasi ConnectorClientProvider.create_connector_client.
async create_connector_client(service_url: str, identity: ClaimsIdentity = None, audience: str = None) -> ConnectorClient
Parameter
| Nama | Deskripsi |
|---|---|
|
service_url
Diperlukan
|
URL layanan |
|
identity
|
Identitas klaim Nilai default: None
|
|
audience
|
Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Instans kelas <xref:botbuilder.core.ConnectorClient> |
create_conversation
Memulai percakapan baru dengan pengguna. Digunakan untuk mengarahkan pesan ke anggota grup.
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)
Parameter
| Nama | Deskripsi |
|---|---|
|
reference
Diperlukan
|
Referensi percakapan yang berisi penyewa |
|
logic
|
Logika yang digunakan untuk pembuatan percakapan Nilai default: None
|
|
conversation_parameters
|
Informasi yang digunakan untuk membuat percakapan Nilai default: None
|
|
channel_id
|
<xref:typing.str>
ID untuk saluran. Nilai default: None
|
|
service_url
|
<xref:typing.str>
Titik akhir URL layanan saluran. Nilai default: None
|
|
credentials
|
<xref:botframework.connector.auth.AppCredentials>
Kredensial aplikasi untuk bot. Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Tugas yang mewakili pekerjaan yang diantrekan untuk dijalankan. |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
It raises a generic exception error.
|
Keterangan
Untuk memulai percakapan, bot Anda harus mengetahui informasi akunnya dan informasi akun pengguna di saluran tersebut. Sebagian besar saluran hanya mendukung memulai percakapan pesan langsung (non-grup). Adaptor mencoba membuat percakapan baru di saluran, lalu mengirim aktivitas pembaruan percakapan melalui alur middleware-nya ke metode panggilan balik. Jika percakapan dibuat dengan pengguna yang ditentukan, ID aktivitas akan berisi ID percakapan baru.
delete_activity
Menghapus aktivitas yang sebelumnya dikirim ke saluran. Perlu dicatat bahwa tidak semua saluran mendukung fitur ini.
Nota
Activity_id ConversationReference mengidentifikasi aktivitas yang akan dihapus.
async delete_activity(context: TurnContext, reference: ConversationReference)
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
Objek konteks untuk giliran |
|
reference
Diperlukan
|
Referensi percakapan untuk aktivitas yang akan dihapus |
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Tugas yang mewakili pekerjaan yang diantrekan untuk dijalankan |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
A exception error
|
delete_conversation_member
Menghapus anggota dari percakapan saat ini.
async delete_conversation_member(context: TurnContext, member_id: str) -> None
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
Objek konteks untuk giliran |
|
member_id
Diperlukan
|
ID anggota yang akan dihapus dari percakapan |
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Tugas yang mewakili pekerjaan yang diantrekan untuk dijalankan.</returns |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
A exception error
|
exchange_token
async exchange_token(turn_context: TurnContext, connection_name: str, user_id: str, exchange_request: TokenExchangeRequest) -> TokenResponse
Parameter
| Nama | Deskripsi |
|---|---|
|
turn_context
Diperlukan
|
|
|
connection_name
Diperlukan
|
|
|
user_id
Diperlukan
|
|
|
exchange_request
Diperlukan
|
|
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
Parameter
| Nama | Deskripsi |
|---|---|
|
turn_context
Diperlukan
|
|
|
oauth_app_credentials
Diperlukan
|
|
|
connection_name
Diperlukan
|
|
|
user_id
Diperlukan
|
|
|
exchange_request
Diperlukan
|
|
get_aad_tokens
Mengambil token Azure Active Directory untuk sumber daya tertentu pada koneksi yang dikonfigurasi.
dari Aktivitas di TurnContext. :type user_id: str :p aram oauth_app_credentials: (Opsional) AppCredentials untuk 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]
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
|
|
connection_name
Diperlukan
|
|
|
resource_urls
Diperlukan
|
|
|
user_id
|
Nilai default: None
|
|
oauth_app_credentials
|
Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Kamus Url sumber daya ke :class:'botbuilder.schema.TokenResponse' yang sesuai |
get_activity_members
Mencantumkan anggota aktivitas tertentu.
Jika tidak ditentukan, ID aktivitas saat ini akan digunakan.
async get_activity_members(context: TurnContext, activity_id: str)
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
|
|
activity_id
Diperlukan
|
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Daftar Anggota aktivitas |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
An exception error
|
get_conversation_member
Mengambil anggota percakapan saat ini.
async get_conversation_member(context: TurnContext, member_id: str) -> ChannelAccount
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
Objek konteks untuk giliran |
|
member_id
Diperlukan
|
Id anggota |
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Anggota percakapan saat ini |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
<xref:A TypeError if missing member_id>, <xref:service_url>, <xref:or conversation.id>
|
get_conversation_members
Mencantumkan anggota percakapan saat ini.
async get_conversation_members(context: TurnContext)
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
Objek konteks untuk giliran |
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Daftar anggota percakapan saat ini |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
TypeError if missing service_url or conversation.id
|
get_conversations
Mencantumkan Percakapan di mana bot ini telah berpartisipasi untuk server saluran tertentu.
context.activity.serviceUrl :type service_url: str
async get_conversations(service_url: str, credentials: AppCredentials, continuation_token: str = None)
Parameter
| Nama | Deskripsi |
|---|---|
|
continuation_token
|
Token kelanjutan dari halaman hasil sebelumnya Nilai default: None
|
|
service_url
Diperlukan
|
|
|
credentials
Diperlukan
|
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Tugas yang mewakili pekerjaan yang diantrekan untuk dijalankan |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
A generic exception error
|
Keterangan
Server saluran mengembalikan hasil di halaman dan setiap halaman akan menyertakan continuationToken yang dapat digunakan untuk mengambil halaman hasil berikutnya dari server. Jika tugas berhasil diselesaikan, hasilnya berisi halaman anggota percakapan saat ini. Kelebihan beban ini dapat dipanggil dari luar konteks percakapan, karena hanya URL layanan dan kredensial bot yang diperlukan.
get_oauth_sign_in_link
Mendapatkan tautan masuk mentah untuk dikirim ke pengguna untuk masuk untuk nama koneksi.
async get_oauth_sign_in_link(context: TurnContext, connection_name: str, final_redirect: str = None, oauth_app_credentials: AppCredentials = None) -> str
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
Konteks untuk pergantian percakapan saat ini dengan pengguna |
|
connection_name
Diperlukan
|
Nama koneksi autentikasi yang akan digunakan |
|
final_redirect
|
URL akhir yang akan dialihkan oleh alur OAuth. Nilai default: None
|
|
oauth_app_credentials
|
<xref:botframework.connector.auth.AppCredential>
(Opsional) AppCredentials untuk OAuth. Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Jika tugas berhasil diselesaikan, hasilnya berisi tautan masuk mentah |
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
Parameter
| Nama | Deskripsi |
|---|---|
|
turn_context
Diperlukan
|
|
|
connection_name
Diperlukan
|
|
|
user_id
Diperlukan
|
|
|
final_redirect
|
Nilai default: 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
Parameter
| Nama | Deskripsi |
|---|---|
|
turn_context
Diperlukan
|
|
|
oauth_app_credentials
Diperlukan
|
|
|
connection_name
Diperlukan
|
|
|
user_id
Diperlukan
|
|
|
final_redirect
|
Nilai default: None
|
get_token_status
Mengambil status token untuk setiap koneksi yang dikonfigurasi untuk pengguna tertentu.
Kosong akan mengembalikan status token untuk semua koneksi yang dikonfigurasi. :type include_filter: str :p aram oauth_app_credentials: (Opsional) AppCredentials untuk 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]
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
|
|
connection_name
|
Nilai default: None
|
|
user_id
|
Nilai default: None
|
|
include_filter
|
Nilai default: None
|
|
oauth_app_credentials
|
Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Array <xref:botframework.connector.token_api.modelsTokenStatus> |
get_user_token
Mencoba mengambil token untuk pengguna yang berada dalam alur masuk.
pengguna :p aram magic_code" (Opsional) memasukkan kode untuk memvalidasi :str magic_code" str :p aram oauth_app_credentials: (Opsional) AppCredentials untuk 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
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
|
|
connection_name
Diperlukan
|
|
|
magic_code
|
Nilai default: None
|
|
oauth_app_credentials
|
Nilai default: None
|
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
:<xref:class>:’TokenResponse`
|
Respons Token |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
An exception error
|
key_for_app_credentials
static key_for_app_credentials(app_id: str, scope: str)
Parameter
| Nama | Deskripsi |
|---|---|
|
app_id
Diperlukan
|
|
|
scope
Diperlukan
|
|
key_for_connector_client
static key_for_connector_client(service_url: str, app_id: str, scope: str)
Parameter
| Nama | Deskripsi |
|---|---|
|
service_url
Diperlukan
|
|
|
app_id
Diperlukan
|
|
|
scope
Diperlukan
|
|
parse_request
Mengurai dan memvalidasi permintaan :p aram req: :return:
async static parse_request(req)
Parameter
| Nama | Deskripsi |
|---|---|
|
req
Diperlukan
|
|
process_activity
Membuat konteks giliran dan menjalankan alur middleware untuk aktivitas masuk.
async process_activity(req, auth_header: str, logic: Callable)
Parameter
| Nama | Deskripsi |
|---|---|
|
req
Diperlukan
|
<xref:typing.str>
Aktivitas masuk |
|
auth_header
Diperlukan
|
<xref:typing.str>
Header autentikasi HTTP permintaan |
|
logic
Diperlukan
|
Logika yang akan dijalankan di akhir alur middleware adapter. |
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Tugas yang mewakili pekerjaan yang diantrekan untuk dijalankan. |
Keterangan
Kelas ini memproses aktivitas yang diterima oleh server web bot. Ini termasuk pesan apa pun yang dikirim dari pengguna dan merupakan metode yang mendorong apa yang sering disebut sebagai bot olahpesan reaktif alur. Panggil metode ini untuk mengirim pesan ke percakapan secara reaktif. Jika tugas berhasil diselesaikan, maka InvokeResponse dikembalikan; Sebaliknya. null dikembalikan.
process_activity_with_identity
async process_activity_with_identity(activity: Activity, identity: ClaimsIdentity, logic: Callable)
Parameter
| Nama | Deskripsi |
|---|---|
|
activity
Diperlukan
|
|
|
identity
Diperlukan
|
|
|
logic
Diperlukan
|
|
process_outgoing_activity
async process_outgoing_activity(turn_context: TurnContext, activity: Activity) -> ResourceResponse
Parameter
| Nama | Deskripsi |
|---|---|
|
turn_context
Diperlukan
|
|
|
activity
Diperlukan
|
|
send_activities
async send_activities(context: TurnContext, activities: List[Activity]) -> List[ResourceResponse]
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
|
|
activities
Diperlukan
|
|
sign_out_user
Mengeluarkan pengguna dengan server token.
async sign_out_user(context: TurnContext, connection_name: str = None, user_id: str = None, oauth_app_credentials: AppCredentials = None)
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
Konteks untuk pergantian percakapan saat ini dengan pengguna |
|
connection_name
|
Nama koneksi autentikasi yang akan digunakan Nilai default: None
|
|
user_id
|
Id pengguna pengguna untuk keluar Nilai default: None
|
|
oauth_app_credentials
|
<xref:botframework.connector.auth.AppCredential>
(Opsional) AppCredentials untuk OAuth. Nilai default: None
|
update_activity
Mengganti aktivitas yang sebelumnya dikirim ke saluran. Perlu dicatat bahwa tidak semua saluran mendukung fitur ini.
async update_activity(context: TurnContext, activity: Activity)
Parameter
| Nama | Deskripsi |
|---|---|
|
context
Diperlukan
|
Objek konteks untuk giliran |
|
activity
Diperlukan
|
Aktivitas penggantian baru |
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Tugas yang mewakili pekerjaan yang diantrekan untuk dijalankan |
Pengecualian
| Jenis | Deskripsi |
|---|---|
|
A generic exception error
|
Keterangan
Jika aktivitas berhasil dikirim, hasil tugas berisi objek ResourceResponse yang berisi ID yang ditetapkan saluran penerima ke aktivitas. Sebelum memanggil fungsi ini, atur ID aktivitas pengganti ke ID aktivitas untuk diganti.