Panduan ini menjelaskan cara menggunakan list
di resource SpaceEvent
Google Chat API untuk menampilkan perubahan pada resource dalam ruang.
Referensi SpaceEvent
mewakili perubahan pada ruang target, termasuk resource turunan ruang
seperti pesan, reaksi, dan keanggotaan. Untuk informasi selengkapnya tentang
daftar jenis peristiwa dan payload peristiwa yang didukung, lihat eventType
dan
payload
kolom dari resource SpaceEvent
dokumentasi referensi.
Anda dapat mencantumkan peristiwa hingga 28 hari sebelum waktu permintaan dibuat. Server
menampilkan peristiwa yang berisi versi terbaru dari resource yang terpengaruh.
Misalnya, jika Anda mencantumkan peristiwa tentang anggota ruang baru, server akan menampilkan
Resource Membership
yang berisi detail keanggotaan terbaru. Jika baru
dihapus selama periode yang diminta, {i>payload<i} peristiwa berisikan
resource Membership
kosong.
Untuk memanggil metode ini, Anda harus menggunakan user autentikasi. Untuk mencantumkan peristiwa dari ruang, pengguna yang diautentikasi harus menjadi anggota ruang tersebut.
Prasyarat
Python
- Sebuah Business atau Enterprise Akun Google Workspace yang memiliki akses ke Google Chat.
- Python 3.6 atau yang lebih baru
- Alat pengelolaan paket pip
- Library klien Google terbaru. Untuk menginstal atau memperbaruinya,
jalankan perintah berikut di antarmuka command line Anda:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Menyiapkan lingkungan Anda:
- Buat project Google Cloud.
- Konfigurasi layar izin OAuth.
- Aktifkan dan konfigurasikan Google Chat API dengan nama, ikon, dan deskripsi untuk aplikasi Chat Anda.
-
Membuat kredensial client ID OAuth untuk aplikasi desktop. Untuk menjalankan
sampel dalam
panduan, simpan kredensial sebagai file JSON (
client_secrets.json
) ke direktori lokal.
- Pilih cakupan otorisasi yang mendukung autentikasi pengguna.
Membuat daftar peristiwa ruang
Untuk membuat daftar peristiwa ruang dari ruang Chat, lakukan hal berikut:
- Panggil metode
list
padaSpaceEvent
Google Workspace for Education. - Tentukan jenis peristiwa yang akan dicantumkan menggunakan metode
filter
kolom tersebut. Anda harus menentukan setidaknya satu jenis peristiwa, dan Anda juga dapat memfilter berdasarkan tanggal. Untuk daftar jenis peristiwa yang didukung, lihateventType
kolom. - Dengan pengguna autentikasi, tentukan satu atau beberapa cakupan otorisasi untuk mendukung setiap jenis peristiwa dalam permintaan Anda. Sebagai praktik terbaik, pilih cakupan yang paling ketat yang masih memungkinkan aplikasi Anda berfungsi. Untuk memilih cakupan, lihat Ringkasan autentikasi dan otorisasi.
Dalam contoh kode berikut, Anda mencantumkan peristiwa tentang keanggotaan baru dan dalam ruang.
Python
- Di direktori kerja, buat file bernama
chat_space_event_list.py
. Sertakan kode berikut di
chat_space_event_list.py
:"""Lists SpaceEvent resources from the Chat API.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages.readonly"] # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build( 'chat', 'v1', credentials=creds, ) # Use the service endpoint to call Chat API. result = chat.spaces().spaceEvents().list( # The space from which to list events. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # A required filter. Filters and returns events about new memberships and messages filter='event_types:"google.workspace.chat.membership.v1.created" OR event_types:"google.workspace.chat.message.v1.created"' ).execute() # Prints details about the created space events. print(result)
Dalam kode, ganti kode berikut:
SPACE
: nama ruang, yang bisa Anda dapatkan dari metodespaces.list
di Chat API, atau dari URL ruang.
Dalam direktori kerja, build dan jalankan contoh:
python3 chat_space_event_list.py
Chat API menampilkan daftar
Referensi SpaceEvent
acara tentang keanggotaan dan pesan baru.
Menyesuaikan penomoran halaman
Secara opsional, teruskan parameter kueri berikut untuk menyesuaikan penomoran halaman:
pageSize
: Jumlah maksimumSpaceEvent
resource yang akan ditampilkan. Layanan mungkin menampilkan lebih sedikit dari nilai ini. Nilai negatif menampilkanINVALID_ARGUMENT
error.pageToken
: Token halaman, yang diterima dari panggilan peristiwa ruang daftar sebelumnya. Berikan token ini untuk mengambil halaman selanjutnya. Ketika melakukan penomoran halaman, nilai filter harus cocok dengan panggilan yang memberikan token halaman. Meneruskan nilai yang berbeda dapat menyebabkan hasil yang tidak terduga.