Xoá không gian

Hướng dẫn này giải thích cách sử dụng phương thức delete trên tài nguyên Space của API Google Chat để xoá một không gian đã đặt tên khi không cần dùng nữa. Việc xoá một không gian cũng sẽ xoá mọi nội dung trong không gian đó, bao gồm cả thư và tệp đính kèm.

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 2 người dùng hoặc một người dùng với một ứ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à các ứng dụng trong Chat.
  • Không gian được đặt tên là các nơi cố định để 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
  • Các thư viện ứng dụng mới nhất của Google dành cho Python. Để cài đặt hoặc cập nhật các công cụ này, hãy chạy lệnh sau trong giao diện dòng lệnh của bạn:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Một dự án trên Google Cloud đã bật và thiết lập API Google Chat. Để biết các bước, hãy xem bài viết Tạo ứng dụng Google Chat.
  • Đã định cấu hình việc uỷ quyền cho ứng dụng Chat. Để xoá một không gian, bạn cần phải Xác thực người dùng trong phạm vi uỷ quyền chat.delete từ một người dùng có quyền xoá không gian đã chỉ định.

Node.js

  • Node.js và npm
  • Thư viện ứng dụng mới nhất của Google dành cho Node.js. Để cài đặt các công cụ này, hãy chạy lệnh sau trong giao diện dòng lệnh của bạn:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • Một dự án trên Google Cloud đã bật và thiết lập API Google Chat. Để biết các bước, hãy xem bài viết Tạo ứng dụng Google Chat.
  • Đã định cấu hình việc uỷ quyền cho ứng dụng Chat. Để xoá một không gian, bạn cần phải Xác thực người dùng trong phạm vi uỷ quyền chat.delete từ một người dùng có quyền xoá không gian đã chỉ định.

Xoá không gian được đặt tên

Để xoá một không gian hiện có trong Google Chat, hãy chuyển thông tin sau vào yêu cầu của bạn:

Sau đây là cách xoá một không gian:

Python

  1. Trong thư mục đang làm việc, hãy tạo một tệp có tên chat_space_delete.py.
  2. Đưa mã sau vào chat_space_delete.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.delete"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then deletes the 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().delete(
    
              # The space to delete.
              #
              # 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 Chat API's response in your command line interface.
        # When deleting a space, the response body is empty.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Trong mã, hãy 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 từ 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_delete.py
    

Node.js

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

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Deletes a Chat space.
    * @return {!Promise<!Object>}
    */
    async function deleteSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.delete',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.delete({name: 'spaces/SPACE'});
    }
    
    deleteSpace().then(console.log);
    
  3. Trong mã, hãy thay thế SPACE bằng tên không gian. Bạn có thể lấy tên này từ phương thức spaces.list trong API Chat hoặc từ URL của không gian.

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

    node delete-space.js
    

    Nếu thành công, nội dung phản hồi sẽ trống, cho biết không gian đã bị xoá.