Mencantumkan peristiwa dari ruang Google Chat

Panduan ini menjelaskan cara menggunakan metode list pada resource SpaceEvent Google Chat API untuk mencantumkan 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. 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 terautentikasi harus menjadi anggota ruang.

Prasyarat

Python

Mencantumkan peristiwa ruang

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

Dalam contoh kode berikut, Anda mencantumkan peristiwa tentang langganan dan pesan baru di 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 peristiwa resource SpaceEvent tentang langganan dan pesan baru.

Menyesuaikan penomoran halaman

Atau, teruskan parameter kueri berikut untuk menyesuaikan penomoran halaman:

  • pageSize: Jumlah maksimum resource SpaceEvent 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 berikutnya. Ketika melakukan penomoran halaman, nilai filter harus cocok dengan panggilan yang memberikan token halaman. Meneruskan nilai yang berbeda dapat menyebabkan hasil yang tidak terduga.