Membuat daftar anggota dalam ruang

Panduan ini menjelaskan cara menggunakan metode list pada resource membership Google Chat API untuk mencantumkan anggota dalam ruang sebagai daftar yang diberi nomor halaman dan dapat difilter keanggotaan di suatu ruang. Listingan keanggotaan dengan autentikasi aplikasi mencantumkan keanggotaan dalam ruang yang dimiliki aplikasi Chat akses ke, tetapi tidak mencakup keanggotaan aplikasi Chat, termasuk itu sendiri. Listingan keanggotaan dengan Autentikasi pengguna mencantumkan keanggotaan dalam ruang yang dapat diakses oleh pengguna terautentikasi.

Tujuan Referensi Membership mewakili apakah pengguna manusia atau aplikasi Google Chat diundang, bagian dari, atau tidak ada dalam ruang.

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
    

Mencantumkan anggota dalam ruang dengan autentikasi pengguna

Untuk menampilkan daftar pengguna, Google Grup, dan aplikasi Chat dalam ruang yang dapat diakses oleh pengguna terautentikasi, teruskan hal berikut dalam permintaan Anda:

Contoh berikut mencantumkan Google Grup, manusia, dan anggota aplikasi yang dapat dilihat oleh pengguna yang terautentikasi.

Python

  1. Di direktori kerja, buat file bernama chat_member_list_user.py.
  2. Sertakan kode berikut di chat_member_list_user.py:

    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"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then lists Google Group, human, and app members in a specified space.
        '''
    
        # 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().members().list(
    
            # The space for which to list memberships.
            parent = 'spaces/SPACE',
    
            # Set this parameter to list Google Groups.
            showGroups = 'true'
    
        ).execute()
    
        # Prints the list of memberships.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Dalam kode, ganti SPACE dengan nama ruang, yang yang dapat diperoleh dari Metode spaces.list di Chat API, atau dari URL ruang.

  4. Dalam direktori kerja, build dan jalankan contoh:

    python3 chat_member_list_user.py
    

Google Chat API menampilkan daftar anggota Google Grup, manusia, dan aplikasi dari ruang yang ditentukan.

Mencantumkan anggota dalam ruang dengan autentikasi aplikasi

Untuk menampilkan daftar pengguna dan aplikasi Chat dalam ruang yang dapat diakses oleh aplikasi yang diautentikasi, teruskan hal berikut dalam permintaan Anda:

Contoh berikut mencantumkan anggota ruang manusia (bukan pengelola ruang) yang dapat dilihat aplikasi Chat:

Python

  1. Di direktori kerja, buat file bernama chat_member_list_app.py.
  2. Sertakan kode berikut di chat_member_list_app.py:

    from google.oauth2 import service_account
    from apiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = ['https://www.googleapis.com/auth/chat.bot']
    
    # Specify service account details.
    CREDENTIALS = (
        service_account.Credentials.from_service_account_file('credentials.json')
        .with_scopes(SCOPES)
    )
    
    # Build the URI and authenticate with the service account.
    chat = build('chat', 'v1', credentials=CREDENTIALS)
    
    # Use the service endpoint to call Chat API.
    result = chat.spaces().members().list(
    
            # The space for which to list memberships.
            parent = 'spaces/SPACE',
    
            # An optional filter that returns only human space members.
            filter = 'member.type = "HUMAN" AND role = "ROLE_MEMBER"'
    
        ).execute()
    
    print(result)
    
  3. Dalam kode, ganti SPACE dengan nama ruang, yang yang dapat diperoleh dari Metode spaces.list di Chat API, atau dari URL ruang.

  4. Dalam direktori kerja, build dan jalankan contoh:

    python3 chat_member_list_app.py
    

Google Chat API menampilkan daftar anggota ruang manusia (tidak termasuk ruang pengelola) dari ruang yang ditentukan.

Menyesuaikan penomoran halaman atau memfilter daftar

Untuk mencantumkan keanggotaan, teruskan parameter kueri berikut ke menyesuaikan penomoran halaman, atau filter, keanggotaan yang tercantum:

  • pageSize: Jumlah maksimum langganan yang akan ditampilkan. Layanan mungkin mengembalikan lebih sedikit dari nilai ini. Jika tidak ditentukan, maksimal 100 spasi dikembalikan. Nilai maksimumnya adalah 1.000; nilai di atas 1.000 secara otomatis diubah menjadi 1.000.
  • pageToken: Token halaman, yang diterima dari panggilan 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.
  • filter: Filter kueri. Memerlukan autentikasi pengguna. Untuk mengetahui detail kueri yang didukung, lihat Metode spaces.members.list.