Halaman ini menjelaskan cara aplikasi Google Chat dapat menerima dan merespons peristiwa di Google Chat.
Peristiwa Google Chat mewakili aktivitas atau perubahan di Chat, seperti pesan baru di ruang. Aplikasi Chat Anda dapat menggunakan peristiwa untuk memahami apa yang terjadi dan mengambil tindakan atau merespons dengan cara yang bermakna bagi pengguna.
Berikut beberapa contoh cara menggunakan acara:
- Memantau dan merespons pesan baru di ruang, seperti memeriksa kata kunci atau frasa.
- Mengirim pesan selamat datang kepada pengguna saat mereka bergabung ke ruang, untuk menjelaskan pedoman ruang atau membagikan tips tentang cara menggunakan aplikasi Chat secara efektif.
- Melacak dan menganalisis aktivitas Chat. Misalnya, untuk mengirim laporan bulanan tentang anggota baru atau pesan yang mendapatkan reaksi atau balasan terbanyak.
- Berkomunikasi di berbagai platform pesan. Misalnya, pengguna dapat mengirim dan menerima pesan dari pengguna di platform pesan lain tanpa keluar dari Chat.
Cara kerja peristiwa
Setiap kali terjadi sesuatu di Google Chat, resource Google Chat API akan dibuat, diperbarui, atau dihapus. Chat menggunakan peristiwa untuk mengirimkan informasi ke aplikasi Chat Anda tentang jenis aktivitas yang terjadi, dan resource Chat API yang terpengaruh.
Message.
Chat kemudian membuat peristiwa yang berisi data tentang pesan baru.Chat mengategorikan peristiwa berdasarkan jenis. Jenis peristiwa membantu Anda memfilter dan menerima hanya jenis informasi yang Anda butuhkan, serta memungkinkan Anda menangani aktivitas serupa dengan cara yang sama.
Tabel berikut menunjukkan pengaruh aktivitas di Chat terhadap resource Chat API terkait, dan jenis peristiwa yang diterima aplikasi Chat Anda:
| Aktivitas | Resource Chat API | Jenis peristiwa |
|---|---|---|
| Pengguna memposting pesan di ruang Chat | Resource Message akan dibuat. |
Pesan baru |
| Pengguna menjadi pengelola ruang. | Resource Membership diperbarui. |
Langganan yang diperbarui |
| Pengguna menambahkan reaksi ke pesan. | Resource Reaction akan dibuat. |
Reaksi baru |
| Pengguna keluar dari ruang. | Resource Membership dihapus. |
Langganan dihapus |
Menerima peristiwa dari Google Chat
Untuk menerima peristiwa, aplikasi Chat Anda dapat melakukan salah satu hal berikut:
- Berlangganan ke peristiwa menggunakan Google Workspace Events API untuk menerima peristiwa saat terjadi.
- Membuat kueri untuk peristiwa terbaru dengan memanggil Chat API.
Tabel berikut menjelaskan perbedaan dan alasan untuk membuat kueri atau berlangganan peristiwa:
| Berlangganan peristiwa | Membuat kueri untuk peristiwa | |
|---|---|---|
| Kasus penggunaan |
|
|
| API | Google Workspace Events API | Chat API |
| Sumber peristiwa | Ruang, pengguna, dan organisasi Google Workspace ( Pratinjau Developer) | Khusus ruang |
| Peristiwa yang didukung |
Untuk mengetahui daftar jenis peristiwa yang didukung, lihat Jenis peristiwa untuk membuat langganan dalam dokumentasi API Google Workspace Events. |
Untuk mengetahui daftar jenis peristiwa yang didukung, lihat resource spaceEvents dalam dokumentasi referensi
Chat API.
|
| Format peristiwa | Pesan Google Cloud Pub/Sub, yang diformat sesuai dengan spesifikasi CloudEvent. Untuk mengetahui detailnya, lihat Struktur peristiwa Google Workspace. |
Resource Chat API
(
spaces.spaceEvent)
|
| Data peristiwa | String berenkode base64 dengan atau tanpa data resource. Untuk contoh payload, lihat Data peristiwa. | Payload JSON yang berisi data resource. Beberapa jenis peristiwa hanya menyertakan kolom resource tertentu. Untuk contoh payload, lihat dokumentasi referensi. |
Contoh: Membuat kueri atau berlangganan ke acara tentang keanggotaan di ruang
Dalam contoh ini, aplikasi Chat ingin menerima informasi tentang perubahan pada anggota ruang Chat. Di ruang, aktivitas keanggotaan berikut terjadi:
- Pengguna bergabung ke ruang, yang membuat resource
Membershipdan memicu peristiwa anggota baru. - Pengguna menjadi pengelola ruang, yang memperbarui resource
Membershipuntuk pengguna dan memicu peristiwa anggota yang diperbarui. - Pengguna keluar dari ruang, yang akan menghapus resource
Membershipuntuk pengguna dan memicu peristiwa anggota dihapus.
Berlangganan ke peristiwa keanggotaan
Untuk menerima peristiwa secara real time, aplikasi Chat memanggil metode
subscriptions.create()
Google Workspace Events API untuk berlangganan ke ruang untuk semua jenis peristiwa keanggotaan. Setelah
membuat langganan, aplikasi Chat dapat mulai
menerima peristiwa keanggotaan.
Pada gambar 2, aplikasi Chat memiliki langganan aktif ke ruang, sehingga aplikasi menerima peristiwa setiap kali keanggotaan di ruang berubah. Aplikasi Chat kemudian dapat memproses atau merespons secara real time aktivitas apa pun, seperti memposting pesan sambutan pribadi kepada anggota yang bergabung ke ruang.
Untuk mempelajari cara membuat langganan menggunakan Google Workspace Events API, lihat dokumentasi Google Workspace Events API.
Kueri untuk peristiwa keanggotaan terbaru
Daripada menerima peristiwa keanggotaan saat terjadi, aplikasi Chat dapat memanggil Chat API untuk mencantumkan peristiwa ruang terbaru yang terkait dengan aktivitas keanggotaan.
Pada gambar 3, aplikasi Chat memanggil metode
spaces.spaceEvents.list()
Chat API setelah semua aktivitas keanggotaan terjadi, dan memfilter kueri
untuk peristiwa keanggotaan baru, yang diperbarui, dan yang dihapus. Chat API menampilkan
daftar resource spaceEvent yang mewakili setiap perubahan keanggotaan.
Aplikasi Chat kemudian dapat memproses atau merespons berdasarkan
aktivitas terbaru, seperti memposting pesan mingguan dengan ringkasan
aktivitas keanggotaan ruang dalam 7 hari terakhir.
Untuk membuat kueri peristiwa menggunakan Chat API, lihat Mencantumkan peristiwa dari ruang Google Chat.
Batasan dan perilaku pengiriman
Batasan umum
- Untuk menerima peristiwa keanggotaan, pengguna atau aplikasi Chat harus menjadi anggota langsung ruang. Jika pengguna ditambahkan, diperbarui, atau dihapus secara tidak langsung ke ruang melalui Google Grup, langganan tidak akan menerima peristiwa keanggotaan tersebut. Untuk memahami cara kerja keanggotaan Grup Google, lihat Menambahkan Grup Google ke ruang.
Langganan pengguna
-
Untuk langganan ke pengguna, peristiwa tentang anggota baru dalam pesan langsung atau chat grup tanpa nama (
google.workspace.chat.membership.v1.created), hanya dipicu setelah pesan pertama diposting.
Langganan pelanggan
Untuk langganan pelanggan, batasan berikut berlaku:
- Organisasi Google Workspace harus memiliki setidaknya satu lisensi SKU Enterprise.
- Aplikasi Chat hanya dapat membuat satu langganan pelanggan untuk organisasi Google Workspace tertentu. Organisasi Google Workspace dapat memiliki total hingga lima langganan pelanggan (yang dibuat oleh aplikasi Chat yang berbeda).
Untuk langganan pelanggan, pengiriman peristiwa mengikuti aturan umum berikut:
- Peristiwa ruang: Hanya dikirim jika peristiwa terjadi di ruang yang dikelola oleh organisasi Google Workspace Anda.
- Peristiwa pengguna: Hanya dikirim jika peristiwa terjadi untuk pengguna yang termasuk dalam organisasi Google Workspace Anda.
Satu-satunya pengecualian untuk aturan ini adalah untuk peristiwa keanggotaan. Langganan Anda dapat menerima peristiwa keanggotaan dari ruang yang dikelola oleh organisasi Anda dan ruang yang dikelola oleh organisasi eksternal, tetapi cara pengirimannya bergantung pada organisasi yang mengelola ruang tersebut:
Ruang yang dikelola oleh organisasi Google Workspace Anda
Jika perubahan keanggotaan terjadi di ruang yang dikelola oleh organisasi Google Workspace, perubahan tersebut akan dikirimkan sebagai peristiwa ruang.
Nama resource peristiwa ruang menggunakan format berikut:
spaces/{spaceId}/spaceEvents/{spaceEventId}
Ruang yang dikelola oleh organisasi eksternal
Jika keanggotaan pengguna yang dikelola oleh organisasi Google Workspace Anda berubah di ruang yang dikelola oleh organisasi eksternal (misalnya, ruang bernama eksternal atau pesan langsung yang dibuat oleh pengguna eksternal), langganan Anda akan menerima peristiwa ini sebagai peristiwa pengguna.
Nama resource peristiwa pengguna menggunakan format berikut:
users/{userId}/userEvents/{userEventId}