Mendapatkan detail tentang ruang

Panduan ini menjelaskan cara menggunakan metode get pada resource Space Google Chat API untuk melihat detail tentang ruang, seperti nama tampilan, deskripsi, pedoman yang relevan.

Tujuan Referensi Space mewakili tempat pengguna dan aplikasi Chat dapat mengirim pesan, berbagi file, dan berkolaborasi. Ada beberapa jenis ruang:

  • Pesan langsung (DM) adalah percakapan antara dua pengguna atau pengguna dan aplikasi Chat.
  • {i>Chat<i} grup adalah percakapan antara tiga pengguna atau lebih dan Aplikasi Chat.
  • Ruang bernama adalah tempat tetap tempat orang mengirim pesan, berbagi file, dan berkolaborasi.

Mengautentikasi dengan autentikasi aplikasi memungkinkan aplikasi Chat mendapatkan ruang yang Akses ke aplikasi Chat di Google Chat (misalnya, ruang tempat aplikasi menjadi anggota). Mengautentikasi dengan autentikasi pengguna memungkinkan Anda mendapatkan ruang yang dapat diakses oleh pengguna yang diotentikasi.

Prasyarat

Python

Node.js

Dapatkan ruang

Untuk mendapatkan ruang di Google Chat, teruskan kode berikut di permintaan:

  • Dengan autentikasi aplikasi, tentukan cakupan otorisasi chat.bot. Dengan autentikasi pengguna, tentukan cakupan otorisasi chat.spaces.readonly atau chat.spaces.
  • Panggil Metode get di resource Space, meneruskan name ruang yang akan didapatkan. Mendapatkan nama ruang dari ruang resource Google Chat, atau dari URL ruang.

Mendapatkan detail ruang dengan autentikasi pengguna

Berikut cara mendapatkan detail ruang dengan autentikasi pengguna:

Python

  1. Di direktori kerja, buat file bernama chat_space_get_user.py.
  2. Sertakan kode berikut di chat_space_get_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.spaces.readonly"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then gets details about 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().get(
    
              # The space to get.
              #
              # Replace SPACE with a space name.
              # Obtain the space name from the spaces resource of Chat API,
              # or from a space's URL.
              name='spaces/SPACE'
    
          ).execute()
    
        # Prints details about the space.
        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_space_get_user.py
    

Node.js

  1. Di direktori kerja, buat file bernama get-space.js.
  2. Sertakan kode berikut di get-space.js:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Gets details about a Chat space by name.
    * @return {!Object}
    */
    async function getSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces.readonly',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.get({name: 'spaces/SPACE'});
    }
    
    getSpace().then(console.log);
    
  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 Anda, jalankan contoh:

    node get-space.js
    

Chat API menampilkan instance Space yang menjelaskan ruang yang ditentukan.

Mendapatkan detail ruang dengan autentikasi aplikasi

Berikut cara mendapatkan detail ruang dengan autentikasi aplikasi:

Python

  1. Di direktori kerja, buat file bernama chat_space_get_app.py.
  2. Sertakan kode berikut di chat_space_get_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().get(
    
        # The space to get.
        #
        # Replace SPACE with a space name.
        # Obtain the space name from the spaces resource of Chat API,
        # or from a space's URL.
        name='spaces/SPACE'
    
    ).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_space_get_app.py
    

Node.js

  1. Di direktori kerja, buat file bernama app-get-space.js.
  2. Sertakan kode berikut di app-get-space.js:

    const chat = require('@googleapis/chat');
    
    /**
    * Gets details about a Chat space by name.
    * @return {!Promise<!Object>}
    */
    async function getSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.bot',
      ];
    
      const auth = new chat.auth.GoogleAuth({
        scopes,
        keyFilename: 'credentials.json',
      });
    
      const authClient = await auth.getClient();
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.get({name: 'spaces/SPACE'});
    }
    
    getSpace().then(console.log);
    
  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 Anda, jalankan contoh:

    node app-get-space.js
    

Chat API menampilkan instance Space yang merinci ruang yang ditentukan.