Cập nhật không gian

Hướng dẫn này giải thích cách sử dụng phương thức patch trên tài nguyên Space của API Google Chat để cập nhật một không gian. Cập nhật không gian để thay đổi thuộc tính về một không gian, chẳng hạn như tên hiển thị mà người dùng thấy được, nội dung mô tả cũng như nguyên tắc.

Chiến lược phát hành đĩa đơn Tài nguyên Space đại diện cho nơi mọi người và các ứng dụng trong Chat có thể gửi tin nhắn, chia sẻ tệp và cộng tác. Có một số loại không gian:

  • Tin nhắn trực tiếp (DM) là các cuộc trò chuyện giữa hai người dùng hoặc một người dùng và ứng dụng Chat.
  • Cuộc trò chuyện nhóm là các cuộc trò chuyện giữa ba người dùng trở lên và Ứng dụng nhắn tin.
  • Không gian được đặt tên là những địa điểm cố định nơi mọi người gửi tin nhắn, chia sẻ tệp, và cộng tác.

Điều kiện tiên quyết

Python

  • Python 3.6 trở lên
  • Công cụ quản lý gói pip
  • Thư viện ứng dụng mới nhất của Google. Cách cài đặt hoặc cập nhật các tính năng này: chạy lệnh sau trong giao diện dòng lệnh:
    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    

Node.js

  • Node.js 14 trở lên
  • npm công cụ quản lý gói
  • Thư viện ứng dụng mới nhất của Google. Cách cài đặt hoặc cập nhật các tính năng này: chạy lệnh sau trong giao diện dòng lệnh:
    npm install @google-cloud/local-auth @googleapis/chat
    

Cập nhật không gian

Để cập nhật một không gian hiện có trong Google Chat, hãy truyền những thông tin sau trong yêu cầu của bạn:

  • Chỉ định phạm vi uỷ quyền chat.spaces.
  • Gọi Phương thức patch trên tài nguyên Space. Ngang bằng yêu cầu của bạn, bạn chỉ định trường name, trường updateMask trường có một hoặc nhiều trường cần cập nhật và một body kèm theo thông tin mới nhất về không gian.

Bạn có thể cập nhật những thông tin như tên hiển thị, loại không gian, trạng thái nhật ký và khác. Để xem tất cả các trường mà bạn có thể cập nhật, hãy xem tài liệu tham khảo.

Dưới đây là cách cập nhật trường spaceDetails của một không gian hiện có:

Python

  1. Trong thư mục đang làm việc, hãy tạo một tệp có tên chat_space_update.py.
  2. Đưa mã sau vào chat_space_update.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"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then updates the specified space description and guidelines.
        '''
    
        # 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().patch(
    
          # The space to update, and the updated space details.
          #
          # 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',
          updateMask='spaceDetails',
          body={
    
            'spaceDetails': {
              'description': 'This description was updated with Chat API!',
              'guidelines': 'These guidelines were updated with Chat API!'
            }
    
          }
    
        ).execute()
    
        # Prints details about the updated space.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Trong mã, thay thế SPACE bằng tên không gian, mà bạn có thể lấy từ Phương thức spaces.list trong API Chat hoặc qua URL của một không gian.

  4. Trong thư mục đang làm việc, hãy tạo và chạy mẫu:

    python3 chat_space_update.py
    

Node.js

  1. Trong thư mục đang làm việc, hãy tạo một tệp có tên update-space.js.
  2. Đưa mã sau vào update-space.js:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Updates a Chat space with the description and guidelines.
    * @return {!Promise<!Object>}
    */
    async function updateSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.patch({
        name: 'spaces/SPACE',
        updateMask: 'spaceDetails',
        requestBody: {
          spaceDetails: {
            description: 'This description was updated with Chat API!',
            guidelines: 'These guidelines were updated with Chat API!'
          },
        }
      });
    }
    
    updateSpace().then(console.log);
    
  3. Trong mã, thay thế SPACE bằng tên không gian, mà bạn có thể lấy từ Phương thức spaces.list trong API Chat hoặc qua URL của một không gian.

  4. Trong thư mục đang làm việc, hãy chạy mẫu:

    node update-space.js
    

API Google Chat trả về một phiên bản của Tài nguyên Space phản ánh nội dung cập nhật.