Menggunakan acara dari Google Chat

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 peristiwa:

  • Memantau dan merespons pesan baru di ruang, seperti memeriksa kata atau frasa kunci.
  • Kirim pesan selamat datang kepada pengguna saat mereka bergabung ke ruang, untuk menjelaskan panduan 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 ada sesuatu yang terjadi 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.

Contoh cara pesan yang diposting ke ruang Google Chat memicu peristiwa.
Gambar 1. Pengguna memposting pesan di ruang Chat, yang membuat resource Message. Chat kemudian membuat peristiwa yang berisi data tentang pesan baru.

Chat mengategorikan peristiwa menurut jenis. Jenis peristiwa membantu Anda memfilter dan hanya menerima jenis informasi yang Anda butuhkan, serta memungkinkan Anda menangani aktivitas yang 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 dibuat. Pesan baru
Pengguna menjadi pengelola ruang. Resource Membership diperbarui. Memperbarui keanggotaan
Pengguna bereaksi terhadap pesan. Resource Reaction dibuat. Reaksi baru
Pengguna keluar dari ruang. Resource Membership dihapus. Langganan yang dihapus

Menerima peristiwa dari Google Chat

Untuk menerima peristiwa, aplikasi Chat Anda dapat melakukan salah satu hal berikut:

  • Berlangganan acara menggunakan Google Workspace Events API untuk menerima peristiwa saat terjadi.
  • Buat kueri untuk peristiwa terbaru dengan memanggil Chat API.

Tabel berikut menjelaskan perbedaan dan alasan membuat kueri atau berlangganan peristiwa:

Berlangganan peristiwa Membuat kueri untuk peristiwa
Kasus penggunaan
  • Memproses atau merespons peristiwa secara real time.
  • Pantau aktivitas langganan pengguna dan temukan ruang baru untuk dipantau.
  • Memproses atau merespons peristiwa secara berkala, atau melalui pemicu.
  • Mengambil peristiwa yang terlewat dari langganan (karena pemadaman atau langganan tidak aktif).
API Google Workspace Events API Chat API
Sumber peristiwa Ruang dan pengguna Khusus ruang
Peristiwa yang didukung
  • Pesan
  • Langganan
  • Reaksi
  • Spasi

Untuk mengetahui daftar jenis peristiwa yang didukung, lihat Jenis peristiwa untuk membuat langganan dalam dokumentasi Google Workspace Events API.
  • Pesan
  • Langganan
  • Reaksi
  • Spasi

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 peristiwa tentang langganan 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 Membership dan memicu peristiwa anggota baru.
  • Pengguna menjadi pengelola ruang, yang memperbarui resource Membership untuk pengguna dan memicu peristiwa anggota yang diperbarui.
  • Pengguna keluar dari ruang, yang akan menghapus resource Membership untuk pengguna dan memicu peristiwa penghapusan anggota.

Berlangganan peristiwa langganan

Untuk menerima peristiwa secara real time, aplikasi Chat memanggil metode subscriptions.create() Google Workspace Events API untuk berlangganan ruang untuk semua jenis peristiwa keanggotaan. Setelah membuat langganan, aplikasi Chat dapat mulai menerima peristiwa langganan.

Aplikasi Chat yang berlangganan acara menggunakan Google Workspace Events API.
Gambar 2. Aplikasi Chat menerima peristiwa keanggotaan melalui langganan menggunakan Google Workspace Events API.

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 terhadap aktivitas apa pun, seperti memposting pesan selamat datang pribadi kepada anggota yang bergabung ke ruang.

Untuk mempelajari cara membuat langganan menggunakan Google Workspace Events API, lihat dokumentasi Google Workspace Events API.

Membuat kueri untuk peristiwa langganan terbaru

Aplikasi Chat dapat memanggil Chat API untuk mencantumkan peristiwa ruang terbaru yang terkait dengan aktivitas langganan, bukan menerima peristiwa langganan saat terjadi.

Aplikasi Chat yang membuat kueri untuk peristiwa menggunakan Chat API.
Gambar 3. Aplikasi Chat menerima peristiwa keanggotaan terbaru dengan membuat kueri peristiwa ruang menggunakan Chat API.

Pada gambar 3, aplikasi Chat memanggil metode Chat API spaces.spaceEvents.list() 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

  • Untuk langganan kepada 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.
  • Untuk menerima acara langganan, pengguna harus menjadi anggota langsung ruang. Jika pengguna ditambahkan, diperbarui, atau dihapus secara tidak langsung ke ruang melalui Grup Google, langganan tidak akan menerima peristiwa keanggotaan tersebut. Untuk memahami cara kerja keanggotaan Grup Google, lihat Menambahkan Grup Google ke ruang.