Mencantumkan peristiwa dari ruang Google Chat

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

  • 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
    

Membuat daftar peristiwa ruang

Untuk membuat daftar peristiwa ruang dari ruang Chat, lakukan hal berikut:

  • Panggil metode list pada SpaceEvent 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, lihat eventType 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

  1. Di direktori kerja, buat file bernama chat_space_event_list.py.
  2. 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)
    
  3. Dalam kode, ganti kode berikut:

    • SPACE: nama ruang, yang bisa Anda dapatkan dari metode spaces.list di Chat API, atau dari URL ruang.
  4. 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 maksimum SpaceEvent resource yang akan ditampilkan. Layanan mungkin menampilkan lebih sedikit dari nilai ini. Nilai negatif menampilkan INVALID_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.