Bagikan melalui


BotAdapter class

Menentukan perilaku inti adaptor bot yang dapat menghubungkan bot ke titik akhir layanan.

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 giliran, 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. Gunakan metode menggunakan untuk menambahkan objek Middleware ke koleksi middleware adapter Anda.

Untuk informasi selengkapnya, lihat artikel tentang Cara kerja bot dan Middleware.

Properti

BotIdentityKey
ConnectorClientKey
OAuthScopeKey
onTurnError

Mendapatkan atau mengatur handler kesalahan yang dapat menangkap pengecualian di middleware atau aplikasi. Mengatur handler kesalahan yang dapat menangkap pengecualian di middleware atau aplikasi.

Metode

continueConversation(Partial<ConversationReference>, (revocableContext: TurnContext) => Promise<void>)

Secara asinkron melanjutkan percakapan dengan pengguna, mungkin setelah beberapa waktu berlalu.

continueConversationAsync(ClaimsIdentity, Partial<ConversationReference>, (context: TurnContext) => Promise<void>)

Secara asinkron melanjutkan percakapan dengan pengguna, mungkin setelah beberapa waktu berlalu.

continueConversationAsync(ClaimsIdentity, Partial<ConversationReference>, string, (context: TurnContext) => Promise<void>)

Secara asinkron melanjutkan percakapan dengan pengguna, mungkin setelah beberapa waktu berlalu.

continueConversationAsync(string, Partial<ConversationReference>, (context: TurnContext) => Promise<void>)

Secara asinkron melanjutkan percakapan dengan pengguna, mungkin setelah beberapa waktu berlalu.

createConversationAsync(string, string, string, string, ConversationParameters, (context: TurnContext) => Promise<void>)

Membuat percakapan pada saluran yang ditentukan.

deleteActivity(TurnContext, Partial<ConversationReference>)

Menghapus aktivitas yang ada secara asinkron. Antarmuka ini mendukung kerangka kerja dan tidak dimaksudkan untuk dipanggil langsung untuk kode Anda. Gunakan TurnContext.deleteActivity untuk menghapus aktivitas dari kode bot Anda.

sendActivities(TurnContext, Partial<Activity>[])

Secara asinkron mengirim serangkaian aktivitas keluar ke server saluran. Metode ini mendukung kerangka kerja dan tidak dimaksudkan untuk dipanggil langsung untuk kode Anda. Gunakan metode sendActivity konteks giliran atau mengirim Aktivitas dari kode bot Anda.

updateActivity(TurnContext, Partial<Activity>)

Secara asinkron menggantikan aktivitas sebelumnya dengan versi yang diperbarui. Antarmuka ini mendukung kerangka kerja dan tidak dimaksudkan untuk dipanggil langsung untuk kode Anda. Gunakan TurnContext.updateActivity untuk memperbarui aktivitas dari kode bot Anda.

use((context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[])

Menambahkan middleware ke alur adaptor.

Detail Properti

BotIdentityKey

BotIdentityKey: symbol

Nilai Properti

symbol

ConnectorClientKey

ConnectorClientKey: symbol

Nilai Properti

symbol

OAuthScopeKey

OAuthScopeKey: symbol

Nilai Properti

symbol

onTurnError

Mendapatkan atau mengatur handler kesalahan yang dapat menangkap pengecualian di middleware atau aplikasi. Mengatur handler kesalahan yang dapat menangkap pengecualian di middleware atau aplikasi.

(context: TurnContext, error: Error) => Promise<void> onTurnError

Nilai Properti

(context: TurnContext, error: Error) => Promise<void>

Janji yang mewakili operasi asinkron.

Keterangan

Handler kesalahan dipanggil dengan parameter ini:

Nama Jenis Deskripsi
context TurnContext Objek konteks untuk giliran.
error Error Kesalahan Node.js dilemparkan.

Detail Metode

continueConversation(Partial<ConversationReference>, (revocableContext: TurnContext) => Promise<void>)

Secara asinkron melanjutkan percakapan dengan pengguna, mungkin setelah beberapa waktu berlalu.

function continueConversation(reference: Partial<ConversationReference>, logic: (revocableContext: TurnContext) => Promise<void>): Promise<void>

Parameter

reference

Partial<ConversationReference>

Referensi ke percakapan untuk melanjutkan.

logic

(revocableContext: TurnContext) => Promise<void>

Metode asinkron untuk memanggil setelah middleware adapter berjalan.

Mengembalikan

Promise<void>

Keterangan

Ini sering disebut sebagai pemberitahuan proaktif , bot dapat secara proaktif mengirim pesan ke percakapan atau pengguna tanpa menunggu pesan masuk. Misalnya, bot dapat menggunakan metode ini untuk mengirim pemberitahuan atau kupon kepada pengguna.

continueConversationAsync(ClaimsIdentity, Partial<ConversationReference>, (context: TurnContext) => Promise<void>)

Secara asinkron melanjutkan percakapan dengan pengguna, mungkin setelah beberapa waktu berlalu.

function continueConversationAsync(claimsIdentity: ClaimsIdentity, reference: Partial<ConversationReference>, logic: (context: TurnContext) => Promise<void>): Promise<void>

Parameter

claimsIdentity

ClaimsIdentity

ClaimsIdentity untuk percakapan tersebut.

reference

Partial<ConversationReference>

Percakapan parsial percakapan untuk melanjutkan.

logic

(context: TurnContext) => Promise<void>

Metode asinkron untuk memanggil setelah middleware adapter berjalan.

Mengembalikan

Promise<void>

janji yang mewakili operasi asinkron

continueConversationAsync(ClaimsIdentity, Partial<ConversationReference>, string, (context: TurnContext) => Promise<void>)

Secara asinkron melanjutkan percakapan dengan pengguna, mungkin setelah beberapa waktu berlalu.

function continueConversationAsync(claimsIdentity: ClaimsIdentity, reference: Partial<ConversationReference>, audience: string, logic: (context: TurnContext) => Promise<void>): Promise<void>

Parameter

claimsIdentity

ClaimsIdentity

ClaimsIdentity untuk percakapan tersebut.

reference

Partial<ConversationReference>

Percakapan parsial percakapan untuk melanjutkan.

audience

string

Nilai yang menandakan penerima pesan proaktif.

logic

(context: TurnContext) => Promise<void>

Metode asinkron untuk memanggil setelah middleware adapter berjalan.

Mengembalikan

Promise<void>

janji yang mewakili operasi asinkron

continueConversationAsync(string, Partial<ConversationReference>, (context: TurnContext) => Promise<void>)

Secara asinkron melanjutkan percakapan dengan pengguna, mungkin setelah beberapa waktu berlalu.

function continueConversationAsync(botAppId: string, reference: Partial<ConversationReference>, logic: (context: TurnContext) => Promise<void>): Promise<void>

Parameter

botAppId

string

ID aplikasi bot. Parameter ini diabaikan dalam penyewa tunggal Adapter (Konsol, Pengujian, dll) tetapi sangat penting untuk BotFrameworkAdapter yang sadar multi-penyewa.

reference

Partial<ConversationReference>

Percakapan parsial percakapan untuk melanjutkan.

logic

(context: TurnContext) => Promise<void>

Metode asinkron untuk memanggil setelah middleware adapter berjalan.

Mengembalikan

Promise<void>

janji yang mewakili operasi asinkron

createConversationAsync(string, string, string, string, ConversationParameters, (context: TurnContext) => Promise<void>)

Membuat percakapan pada saluran yang ditentukan.

function createConversationAsync(_botAppId: string, _channelId: string, _serviceUrl: string, _audience: string, _conversationParameters: ConversationParameters, _logic: (context: TurnContext) => Promise<void>): Promise<void>

Parameter

_botAppId

string

ID aplikasi bot.

_channelId

string

ID untuk saluran.

_serviceUrl

string

ID untuk saluran.

_audience

string

Audiens untuk konektor.

_conversationParameters

ConversationParameters

Informasi percakapan yang digunakan untuk membuat percakapan

_logic

(context: TurnContext) => Promise<void>

Metode untuk memanggil giliran bot yang dihasilkan.

Mengembalikan

Promise<void>

Janji yang mewakili operasi asinkron

Keterangan

Untuk memulai percakapan, bot Anda harus mengetahui informasi akunnya dan informasi akun pengguna di saluran tersebut. Sebagian besar _channels hanya mendukung memulai percakapan pesan langsung (non-grup).

Adaptor mencoba membuat percakapan baru di saluran, lalu mengirim aktivitas conversationUpdate melalui alur middleware-nya ke metode logika.

Jika percakapan dibuat dengan pengguna yang ditentukan, ID konversi aktivitas akan berisi ID percakapan baru.

deleteActivity(TurnContext, Partial<ConversationReference>)

Menghapus aktivitas yang ada secara asinkron. Antarmuka ini mendukung kerangka kerja dan tidak dimaksudkan untuk dipanggil langsung untuk kode Anda. Gunakan TurnContext.deleteActivity untuk menghapus aktivitas dari kode bot Anda.

function deleteActivity(context: TurnContext, reference: Partial<ConversationReference>): Promise<void>

Parameter

context
TurnContext

Objek konteks untuk giliran.

reference

Partial<ConversationReference>

Informasi referensi percakapan untuk aktivitas yang akan dihapus.

Mengembalikan

Promise<void>

Keterangan

Tidak semua saluran mendukung operasi ini. Untuk saluran yang tidak, panggilan ini dapat melemparkan pengecualian.

sendActivities(TurnContext, Partial<Activity>[])

Secara asinkron mengirim serangkaian aktivitas keluar ke server saluran. Metode ini mendukung kerangka kerja dan tidak dimaksudkan untuk dipanggil langsung untuk kode Anda. Gunakan metode sendActivity konteks giliran atau mengirim Aktivitas dari kode bot Anda.

function sendActivities(context: TurnContext, activities: Partial<Activity>[]): Promise<ResourceResponse[]>

Parameter

context
TurnContext

Objek konteks untuk giliran.

activities

Partial<Activity>[]

Kegiatan yang akan dikirim.

Mengembalikan

Promise<ResourceResponse[]>

Array ResourceResponse

Keterangan

Aktivitas akan dikirim satu demi satu sesuai urutan penerimaannya. Objek respons akan dikembalikan untuk setiap aktivitas yang dikirim. Untuk aktivitas message, ini akan berisi ID pesan yang dikirimkan.

updateActivity(TurnContext, Partial<Activity>)

Secara asinkron menggantikan aktivitas sebelumnya dengan versi yang diperbarui. Antarmuka ini mendukung kerangka kerja dan tidak dimaksudkan untuk dipanggil langsung untuk kode Anda. Gunakan TurnContext.updateActivity untuk memperbarui aktivitas dari kode bot Anda.

function updateActivity(context: TurnContext, activity: Partial<Activity>): Promise<ResourceResponse | void>

Parameter

context
TurnContext

Objek konteks untuk giliran.

activity

Partial<Activity>

Versi aktivitas yang diperbarui untuk diganti.

Mengembalikan

Promise<ResourceResponse | void>

Keterangan

Tidak semua saluran mendukung operasi ini. Untuk saluran yang tidak, panggilan ini dapat melemparkan pengecualian.

use((context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[])

Menambahkan middleware ke alur adaptor.

function use(middlewares: (context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]): this

Parameter

middlewares

(context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]

Penghandel middleware atau middleware yang akan ditambahkan.

Mengembalikan

this

Objek adapter yang diperbarui.

Keterangan

Middleware ditambahkan ke adaptor pada waktu inisialisasi. Setiap giliran, adaptor memanggil middleware-nya dalam urutan Anda menambahkannya.