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á không gian có tên khi không còn cần thiết. Khi xoá một không gian, mọi nội dung trong không gian đó cũng sẽ bị xoá chứa, bao gồm cả thư và tệp đính kèm.

Nếu là quản trị viên Google Workspace, bạn có thể gọi delete() để xoá bất kỳ không gian có tên nào trong tổ chức Google Workspace của bạn.

Chiến lược phát hành đĩa đơn Tài nguyên Space đại diện cho một nơi mà 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à cuộc trò chuyện giữa 3 người dùng trở lên và ứng dụng Chat.
  • Không gian có tên là những không gian ổn đị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

Node.js

Xoá không gian được đặt tên với tư cách là người dùng

Cách xoá một không gian hiện có trong Google Chat bằng xác thực người dùng, chuyển những nội dung sau trong yêu cầu của bạn:

  • Chỉ định phạm vi uỷ quyền chat.delete.
  • Gọi phương thức DeleteSpace().
  • Truyền name của không gian để xoá.

Dưới đây là cách xoá một không gian:

Node.js

chat/client-libraries/cloud/delete-space-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = ['https://www.googleapis.com/auth/chat.delete'];

// This sample shows how to delete a space with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);

  // Initialize request argument(s)
  const request = {
    // Replace SPACE_NAME here
    name: 'spaces/SPACE_NAME'
  };

  // Make the request
  const response = await chatClient.deleteSpace(request);

  // Handle the response
  console.log(response);
}

main().catch(console.error);

Để chạy mẫu này, hãy thay thế SPACE_NAME bằng mã nhận dạng trong của không gian name . Bạn có thể lấy ID bằng cách gọi hàm ListSpaces() hoặc từ URL của không gian.

Xoá không gian được đặt tên dưới dạng ứng dụng Chat

Quy trình xác thực ứng dụng yêu cầu quyền phê duyệt của quản trị viên một lần.

Với tính năng xác thực ứng dụng, bạn chỉ có thể xoá không gian do Ứng dụng nhắn tin.

Để xoá một không gian hiện có trong Google Chat bằng tính năng xác thực ứng dụng, hãy truyền các thông tin sau vào yêu cầu của bạn:

Tạo một khoá API

Để gọi phương thức API Bản dùng thử cho nhà phát triển, bạn phải sử dụng phiên bản bản dùng thử không công khai dành cho nhà phát triển của tài liệu khám phá API. Để xác thực yêu cầu, bạn phải truyền một khoá API.

Để tạo Khoá API, hãy mở dự án Google Cloud của ứng dụng rồi làm như sau:

  1. Trong bảng điều khiển Google Cloud, hãy chuyển đến Trình đơn > API và dịch vụ > Thông tin xác thực.

    Chuyển đến phần Thông tin xác thực

  2. Nhấp vào Tạo thông tin xác thực > Khoá API.
  3. Khoá API mới của bạn sẽ xuất hiện.
    • Nhấp vào biểu tượng Sao chép để sao chép khoá API để dùng trong mã của ứng dụng. Bạn cũng có thể tìm thấy khoá API trong phần "Khoá API" của thông tin xác thực dự án.
    • Nhấp vào Hạn chế khoá để cập nhật chế độ cài đặt nâng cao và giới hạn việc sử dụng khoá API. Để biết thêm thông tin, hãy xem bài viết Áp dụng các quy tắc hạn chế đối với khoá API.

Viết tập lệnh gọi API Chat

Dưới đâ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_app.py.
  2. Thêm mã sau vào chat_space_delete_app.py:

    from google.oauth2 import service_account
    from apiclient.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.app.delete"]
    
    def main():
        '''
        Authenticates with Chat API using app authentication,
        then deletes the specified space.
        '''
    
        # Specify service account details.
        creds = (
            service_account.Credentials.from_service_account_file('credentials.json')
            .with_scopes(SCOPES)
        )
    
        # Build a service endpoint for Chat API.
        chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY')
    
        # 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ế các nội dung sau:

    • API_KEY: khoá API mà bạn đã tạo để tạo bản dựng điểm cuối dịch vụ dành cho API Chat.

    • SPACE với 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 hoạt động, hãy tạo bản dựng và chạy mẫu:

    python3 chat_space_delete_app.py
    

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

Xoá không gian được đặt tên với tư cách quản trị viên Google Workspace

Nếu là quản trị viên Google Workspace, bạn có thể gọi phương thức DeleteSpace() để xoá mọi không gian có tên trong tổ chức Google Workspace của mình.

Để gọi phương thức này với tư cách là quản trị viên Google Workspace, hãy làm như sau:

  • Gọi phương thức bằng cách xác thực người dùng và chỉ định một phạm vi uỷ quyền hỗ trợ việc gọi phương thức bằng quyền quản trị.
  • Trong yêu cầu của bạn, hãy chỉ định tham số truy vấn useAdminAccess thành true.

Để biết thêm thông tin và ví dụ, hãy xem bài viết Quản lý không gian Google Chat với tư cách là quản trị viên Google Workspace.