Xoá thành viên khỏi 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á thành viên khỏi một không gian còn gọi là xoá gói thành viên. Bạn không thể loại bỏ người quản lý không gian nếu họ là người quản lý không gian duy nhất trong một 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 thành viên này.

Tài nguyên Membership cho biết việc người dùng hoặc ứng dụng Google Chat được mời tham gia, tham gia một phần hay vắng mặt trong một 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 trình mô phỏng, hãy chạy lệnh sau trong giao diện dòng lệnh:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Một dự án trên Google Cloud đã bật và định cấu hình 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 uỷ quyền cho ứng dụng Chat. Để xoá một gói thành viên, bạn cần Xác thực người dùng với phạm vi uỷ quyền chat.memberships hoặc chat.memberships.app từ một người dùng có quyền xoá gói thành viên đã chỉ định.

Xoá thành viên khỏi không gian

Cách xoá người dùng, nhóm trên Google Groups hoặc ứng dụng trong Chat khỏi một không gian:

  • Để xoá một người dùng hoặc nhóm trên Google Groups, 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 (các ứng dụng chỉ có thể xoá gói thành viên của riêng mình; chứ không thể xoá gói thành viên khác của các ứng dụng khác). Phương pháp hay nhất là chọn phạm vi hạn chế nhất mà vẫn cho phép ứng dụng 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 để xoá. Nếu thành viên thuộc về người quản lý không gian duy nhất trong một 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ã, thay thế các nội dung 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 gói 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ề thành viên có 'state': 'NOT_A_MEMBER', cho biết rằng thành viên không còn ở trong không gian.

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