Pertanyaan Umum Tentang Kerangka Kerja Bot

Artikel ini menjawab pertanyaan umum yang umum diajukan.

BERLAKU UNTUK: SDK v4

Mengapa aktivitas Pengetikan tidak melakukan apa-apa?

Beberapa saluran tidak mendukung pembaruan pengetikan sementara di klien mereka.

Apa perbedaan antara pustaka Koneksi or dan pustaka Builder di SDK?

Pustaka Koneksi or adalah eksposisi REST API. Pustaka Builder menambahkan model pemrograman dialog percakapan dan fitur lain seperti perintah, air terjun, rantai, dan penyelesaian formulir terpandu. Pustaka Builder juga menyediakan akses ke layanan Azure AI seperti pemahaman bahasa alami.

Bagaimana pesan pengguna terkait dengan panggilan metode HTTPS?

Ketika pengguna mengirim pesan melalui saluran, layanan web Bot Framework akan mengeluarkan HTTPS POST ke titik akhir layanan web bot. Bot dapat mengirim nol, satu, atau banyak pesan kembali ke pengguna di saluran tersebut, dengan mengeluarkan HTTPS POST terpisah ke Bot Framework untuk setiap pesan yang dikirimnya.

Apa perbedaan antara "proaktif" dan "reaktif"?

Dari perspektif bot Anda, "reaktif" berarti bahwa pengguna memulai percakapan dengan mengirim pesan ke bot, dan bot bereaksi dengan menanggapi pesan tersebut. Sebaliknya, "proaktif" berarti bot memulai percakapan dengan mengirim pesan pertama kepada pengguna. Misalnya, bot dapat mengirim pesan proaktif untuk memberi tahu pengguna saat timer kedaluwarsa atau peristiwa terjadi.

Bagaimana cara mengirim pesan proaktif kepada pengguna?

Untuk contoh yang menunjukkan cara mengirim pesan proaktif, lihat sampel C# V4 dan sampel Node.js V4 dalam repositori BotBuilder-Samples di GitHub.

Apa itu ETag? Bagaimana hubungannya dengan penyimpanan tas data bot?

ETag adalah mekanisme untuk kontrol konkurensi optimis. Penyimpanan tas data bot menggunakan ETags untuk mencegah pembaruan data yang bertentangan. Kesalahan ETag dengan kode status HTTP 412 "Prasyarat Gagal" menunjukkan bahwa ada beberapa pesan yang diterima secara paralel sebelum bot dapat menyelesaikan operasi pertamanya. Tumpukan dialog dan status disimpan dalam kantong data bot. Misalnya, Anda mungkin melihat kesalahan ETag "Prasyarat Gagal" jika bot Anda masih memproses pesan sebelumnya saat menerima pesan baru untuk percakapan tersebut.

Apa itu pembatasan tarif?

Layanan Bot Framework harus melindungi dirinya sendiri dan pelanggannya dari pola panggilan yang kasar (misalnya, penolakan serangan layanan), sehingga tidak ada bot tunggal yang dapat berdampak buruk pada performa bot lain. Untuk mencapai perlindungan semacam ini, kami telah menambahkan batas laju (juga dikenal sebagai pembatasan) ke titik akhir kami. Dengan memberlakukan batas tarif, kita dapat membatasi frekuensi klien atau bot dapat melakukan panggilan tertentu. Misalnya: dengan pembatasan tarif diaktifkan, jika bot ingin memposting sejumlah besar aktivitas, bot harus memberi ruang selama periode waktu tertentu. Tujuan pembatasan tarif bukan untuk membatasi total volume untuk bot. Ini dirancang untuk mencegah penyalahgunaan infrastruktur percakapan yang tidak mengikuti pola percakapan manusia. Misalnya, membanjiri dua percakapan dengan lebih banyak konten daripada dua manusia yang pernah bisa dikonsumsi.

Berapa batas tarifnya?

Kami terus menyetel batas tarif untuk membuatnya semurah mungkin sementara pada saat yang sama melindungi layanan dan pengguna kami. Karena ambang batas kadang-kadang akan berubah, kami tidak menerbitkan angka saat ini. Terakhir, jika Anda menghosting bot Anda di App Service, bot terikat dengan batasan App Service. Untuk informasi selengkapnya, lihat ringkasan SLA untuk layanan Azure Jika Anda terpengaruh oleh pembatasan tarif, jangan ragu untuk menghubungi kami di bf-reports@microsoft.com.

Berapa batas ukuran file yang ditransfer menggunakan saluran?

Beberapa saluran memiliki batasan ukuran atau jenis file yang dapat dikirim. Misalnya, Direct Line dan Facebook membatasi payload aktivitas hingga 262.144 byte, sementara Bot Framework Emulator tidak memiliki batas. Batas tersebut diberlakukan oleh saluran. Jika Anda mengirim pesan yang melebihi batas ini, Anda mungkin mendapatkan kesalahan, seperti: Panjang konten permintaan melebihi batas 262.144 byte. Namun, Anda dapat menyediakan tautan ke sumber daya sebagai lampiran internet. Untuk informasi selengkapnya tentang mengirim lampiran, lihat cara menambahkan media ke pesan.

Bagaimana cara mengetahui apakah saya terpengaruh oleh pembatasan tarif?

Tidak mungkin Anda akan mengalami pembatasan tarif, bahkan pada volume tinggi. Sebagian besar pembatasan laju hanya akan terjadi karena pengiriman aktivitas secara massal (dari bot atau dari klien), pengujian beban ekstrem, atau bug. Ketika permintaan dibatasi, respons HTTP 429 (Terlalu Banyak Permintaan) dikembalikan bersama dengan header Coba Lagi-Setelah yang menunjukkan jumlah waktu (dalam detik) untuk menunggu sebelum mencoba kembali permintaan akan berhasil. Anda dapat mengumpulkan informasi ini dengan mengaktifkan analitik untuk bot Anda melalui Azure Application Insights. Atau, Anda dapat menambahkan kode di bot anda untuk mencatat pesan.

Bagaimana pembatasan tarif terjadi?

Pembatasan tarif disebabkan oleh salah satu kondisi berikut:

  • Bot mengirim pesan terlalu sering
  • Klien bot terlalu sering mengirim pesan
  • Klien Direct Line meminta Web Socket baru terlalu sering

Bagaimana cara mengimplementasikan handoff manusia?

Terkadang, perlu untuk mentransfer (handoff) percakapan dari bot ke manusia, seperti ketika bot tidak memahami pengguna atau permintaan tidak dapat diotomatisasi. Dalam kasus ini, bot menyediakan transisi ke manusia. Bot Framework SDK mendukung handoff kepada manusia. Ada beberapa jenis peristiwa untuk memberi sinyal operasi handoff. Peristiwa ini dipertukarkan antara bot dan hub agen, juga disebut hub keterlibatan. Hub agen ini didefinisikan sebagai aplikasi atau sistem yang memungkinkan agen, biasanya manusia, untuk menerima dan menangani permintaan dari pengguna dan permintaan eskalasi dari bot. Untuk informasi selengkapnya, lihat artikel Percakapan transisi dari bot ke manusia .