Bagikan melalui


Cara kerja bot Microsoft Teams

BERLAKU UNTUK: SDK v4

Artikel ini dibuat berdasarkan apa yang Anda pelajari di Cara kerja bot dan percakapan berbasis peristiwa; Anda harus terbiasa dengan artikel ini sebelum melanjutkan.

Perbedaan utama dalam bot yang dikembangkan untuk Microsoft Teams adalah bagaimana aktivitas ditangani. Handler aktivitas Teams berasal dari penanganan aktivitas dan memproses jenis aktivitas khusus Teams sebelum memproses jenis aktivitas yang lebih umum.

Catatan

Bot Framework JavaScript, C#, dan Python SDK akan terus didukung, namun, Java SDK dihentikan dengan dukungan jangka panjang akhir yang berakhir pada November 2023.

Bot yang ada yang dibangun dengan Java SDK akan terus berfungsi.

Untuk pembuatan bot baru, pertimbangkan untuk menggunakan Microsoft Copilot Studio dan baca tentang memilih solusi salinan yang tepat.

Untuk informasi selengkapnya, lihat Masa depan pembuatan bot.

Penanganan aktivitas Teams

Untuk membuat bot untuk Teams, dapatkan bot Anda dari kelas handler aktivitas Teams. Ketika bot seperti itu menerima aktivitas, bot tersebut merutekan aktivitas melalui berbagai penanganan aktivitas. Handler awal dan dasar adalah handler giliran, dan merutekan aktivitas ke handler berdasarkan jenis aktivitas. Pengatur giliran memanggil handler yang dirancang untuk menangani jenis aktivitas tertentu yang diterima. Kelas handler aktivitas Teams berasal dari kelas penanganan aktivitas. Selain jenis aktivitas yang dapat diproses oleh penanganan aktivitas, kelas handler aktivitas Teams mencakup handler tambahan untuk aktivitas khusus Teams.

Bot yang berasal dari handler aktivitas Teams mirip dengan bot yang berasal langsung dari kelas penanganan aktivitas. Namun, Teams menyertakan informasi tambahan dalam conversationUpdate aktivitas dan mengirim aktivitas dan event khusus invoke Teams.

Saat handler aktivitas Teams Anda–bot menerima aktivitas pesan, penangan gilirannya merutekan aktivitas pesan masuk ke handler-nya OnMessageActivityAsync , mirip dengan bagaimana bot berbasis penanganan aktivitas. Namun, saat bot Teams Anda menerima aktivitas pembaruan percakapan, versi Teams dari OnConversationUpdateActivityAsync handler memproses aktivitas.

Tidak ada implementasi dasar untuk sebagian besar penanganan aktivitas khusus Teams. Anda harus mengambil alih handler ini dan memberikan logika yang sesuai untuk bot Anda.

Semua penanganan aktivitas yang dijelaskan di bagian penanganan aktivitas percakapan berbasis peristiwa menggunakan artikel penanganan aktivitas akan terus berfungsi seperti yang mereka lakukan dengan bot non-Teams, kecuali untuk menangani anggota yang ditambahkan dan dihapus aktivitas, aktivitas ini akan berbeda dalam konteks tim, di mana anggota baru ditambahkan ke tim dibandingkan dengan utas pesan. Untuk informasi selengkapnya, lihat Aktivitas pembaruan percakapan Teams.

Untuk menerapkan logika Anda untuk penanganan aktivitas khusus Teams ini, Anda akan mengambil alih metode di bot Anda.

Logika teams-bot

Logika bot memproses aktivitas masuk dari satu atau beberapa saluran bot Anda dan menghasilkan aktivitas keluar sebagai respons. Ini masih berlaku untuk bot yang berasal dari kelas handler aktivitas Teams, yang pertama-tama memeriksa aktivitas Teams, kemudian meneruskan semua aktivitas lain ke penanganan aktivitas Bot Framework.

Aktivitas pembaruan penginstalan Teams

Tambahkan handler untuk peristiwa pembaruan penginstalan untuk mengizinkan bot Anda:

  • Kirim pesan pengantar saat diinstal pada utas percakapan.
  • Bersihkan data pengguna dan utas saat dihapus instalannya dari utas.

Lihat Peristiwa pembaruan penginstalan di dokumen Teams untuk informasi selengkapnya.

Aktivitas pembaruan percakapan Teams

Tabel berikut mencantumkan peristiwa Teams yang menghasilkan aktivitas pembaruan percakapan dalam bot. Artikel Peristiwa pembaruan Percakapan Microsoft Teams menjelaskan cara menggunakan setiap peristiwa ini.

Di bawah ini adalah daftar semua penanganan aktivitas Teams yang dipanggil dari OnConversationUpdateActivityAsync metode penanganan aktivitas Teams .

EventType Penghandel Kondisi Dokumentasi Teams
channelCreated OnTeamsChannelCreatedAsync Dikirim setiap kali saluran baru dibuat dalam tim tempat bot Anda diinstal. Saluran dibuat.
channelDeleted OnTeamsChannelDeletedAsync Dikirim setiap kali saluran dihapus dalam tim tempat bot Anda diinstal. Saluran dihapus.
channelRenamed OnTeamsChannelRenamedAsync Dikirim setiap kali saluran diganti namanya dalam tim tempat bot Anda diinstal. Saluran diganti namanya.
channelRestored OnTeamsChannelRestoredAsync Dikirim setiap kali saluran yang sebelumnya dihapus dipulihkan dalam tim tempat bot Anda sudah diinstal. Saluran dipulihkan.
anggotaTambahkan OnTeamsMembersAddedAsync Secara default, memanggil ActivityHandler.OnMembersAddedAsync metode . Dikirim saat pertama kali bot Anda ditambahkan ke percakapan dan setiap kali pengguna baru ditambahkan ke obrolan tim atau grup tempat bot Anda diinstal. Anggota tim ditambahkan.
membersRemoved OnTeamsMembersRemovedAsync Secara default, memanggil ActivityHandler.OnMembersRemovedAsync metode . Dikirim jika bot Anda dihapus dari tim dan setiap kali pengguna dihapus dari tim tempat bot Anda menjadi anggotanya. Anggota tim dihapus.
teamArchived OnTeamsTeamArchivedAsync Dikirim saat tim tempat bot Anda diinstal diarsipkan. Tim diarsipkan.
teamDeleted OnTeamsTeamDeletedAsync Dikirim saat tim tempat bot Anda berada telah dihapus. Tim dihapus.
teamRenamed OnTeamsTeamRenamedAsync Dikirim saat tim tempat bot Anda diganti namanya. Tim berganti nama.
teamRestored OnTeamsTeamRestoredAsync Dikirim saat tim yang dihapus sebelumnya tempat bot Anda dipulihkan. Tim dipulihkan.
teamUnarchived OnTeamsTeamUnarchivedAsync Dikirim saat tim tempat bot Anda diinstal tidak diarsarkitifkan. Tim tidak diarsarktifkan.

Aktivitas acara Teams

Tabel berikut mencantumkan aktivitas acara khusus Teams yang dikirim Teams ke bot. Aktivitas acara yang tercantum adalah untuk bot percakapan di Teams.

Ini adalah penanganan aktivitas aktivitas khusus Teams yang dipanggil dari OnEventActivityAsync penanganan aktivitas Teams .

Tipe peristiwa Penghandel Deskripsi
application/vnd.microsoft.meetingEnd OnTeamsMeetingEndAsync Bot dikaitkan dengan rapat yang baru saja berakhir.
application/vnd.microsoft.meetingStart OnTeamsMeetingStartAsync Bot dikaitkan dengan rapat yang baru saja dimulai.

Teams memanggil aktivitas

Tabel berikut mencantumkan aktivitas pemanggilan khusus Teams yang dikirim Teams ke bot. Aktivitas pemanggilan yang tercantum adalah untuk bot percakapan di Teams. Bot Framework SDK juga mendukung pemanggilan khusus untuk ekstensi olahpesan. Untuk informasi selengkapnya, lihat artikel Ekstensi olahpesan Teams Apa itu.

Catatan

Dokumentasi platform Microsoft Teams dan pustaka klien Teams JavaScript (TeamsJS) mengacu pada modul tugas sebagai dialog modal. Lihat Dialog untuk informasi selengkapnya.

Berikut adalah daftar semua penanganan aktivitas Teams yang dipanggil dari OnInvokeActivityAsync penanganan aktivitas Teams :

Memanggil jenis Penghandel Deskripsi
actionableMessage/executeAction OnTeamsO365ConnectorCardActionAsync Tindakan Kartu Konektor Teams O365.
CardAction.Invoke OnTeamsCardActionInvokeAsync Tindakan Kartu Teams Dipanggil.
fileConsent/invoke OnTeamsFileConsentAcceptAsync Penerimaan Persetujuan File Teams.
fileConsent/invoke OnTeamsFileConsentAsync Persetujuan File Teams.
fileConsent/invoke OnTeamsFileConsentDeclineAsync Persetujuan File Teams.
signin/verifyState OnTeamsSigninVerifyStateAsync Status Verifikasi Masuk Teams.
tugas/ambil OnTeamsTaskModuleFetchAsync Pengambilan Modul Tugas Teams.
tugas/kirim OnTeamsTaskModuleSubmitAsync Kirim Modul Tugas Teams.

Langkah berikutnya

Untuk membuat bot Teams, lihat dokumentasi Pengembang Microsoft Teams.