Xoá người dùng hoặc ứng dụng Google Chat khỏi một 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 membership của API Google Chat để xoá người dùng hoặc ứng dụng Chat khỏi một không gian còn gọi là xoá gói thành viên. Bạn không thể xoá người quản lý không gian nếu họ là người quản lý không gian duy nhất trong không gian. Hãy chỉ định một người dùng khác làm người quản lý không gian trước khi xoá các gói thành viên này.

Tài nguyên Membership cho biết người dùng thực hoặc ứng dụng Google Chat được mời tham gia, tham gia hay không tham gia không gian.

Đ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 hoạt động uỷ quyền cho ứng dụng Chat. Để xoá một gói thành viên, bạn cần phải Xác thực người dùng trong phạm vi uỷ quyền chat.memberships hoặc chat.memberships.app từ người dùng có quyền xoá gói thành viên đã chỉ định.

Xoá người dùng hoặc ứng dụng Chat khỏi một không gian

Cách xoá người dùng hoặc ứng dụng Chat khỏi một không gian:

  • Để xoá một người dùng, hãy chỉ định phạm vi uỷ quyền chat.memberships. Để xoá một ứng dụng trong Chat, hãy chỉ định phạm vi uỷ quyền chat.memberships.app (ứng dụng chỉ có thể xoá gói thành viên của chính mình chứ không thể xoá phạm vi của các ứng dụng khác). Cách tốt nhất là chọn phạm vi hạn chế nhất mà vẫn cho phép ứng dụng của bạn hoạt động.
  • Gọi phương thức delete trên tài nguyên membership.
  • Truyền name của gói thành viên cần xoá. Nếu tư cách thành viên thuộc về người quản lý không gian duy nhất trong không gian, hãy chỉ định một người dùng khác làm người quản lý không gian trước khi xoá thành viên này.

Sau đây là cách xoá gói thành viên:

Python

  1. Trong thư mục đang làm việc, hãy tạo một tệp có tên chat_membership_delete.py.
  2. Đưa mã sau vào chat_membership_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.memberships.app"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then deletes the specified membership.
        '''
    
        # 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().delete(
    
            # The membership 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.
            #
            # Replace MEMBER with a membership name.
            # Obtain the membership name from the memberships resource of
            # Chat API. To delete a Chat app's membership, replace MEMBER
            # with app; an alias for the app calling the API.
            name='spaces/SPACE/members/MEMBER'
    
        ).execute()
    
        # Print Chat API's response in your command line interface.
        # When deleting a membership, the response body is empty.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Trong mã, hãy thay thế các đoạn mã sau:

    • SPACE: 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 không gian.

    • MEMBER: tên thành viên mà bạn có thể lấy từ phương thức spaces.members.list trong API Chat. Để xoá gói thành viên của một ứng dụng, hãy thay thế MEMBER bằng app.

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

    python3 chat_membership_delete.py
    

Nếu thành công, nội dung phản hồi sẽ trả về tư cách thành viên có 'state': 'NOT_A_MEMBER' để cho biết thành viên đó không còn trong không gian.

{
    "name": "spaces/SPACE/members/MEMBER",
    "state": "NOT_A_MEMBER"
}