Hướng dẫn này giải thích cách sử dụng
update()
phương thức trên tài nguyên Membership của API Google Chat để thay đổi các thuộc tính
về tư cách thành viên, chẳng hạn như thay đổi thành viên không gian thành người quản lý không gian hoặc
chủ sở hữu không gian.
Nếu là quản trị viên Google Workspace, bạn có thể gọi phương thức update() để cập nhật tư cách thành viên của bất kỳ không gian nào trong tổ chức Google Workspace của mình.
Điều kiện tiên quyết
Node.js
- Một tài khoản Google Workspace dành cho doanh nghiệp hoặc doanh nghiệp có quyền truy cập vào Google Chat.
- Thiết lập môi trường của bạn:
- Tạo một dự án trên Google Cloud.
- Định cấu hình màn hình xin phép bằng OAuth.
- Bật và định cấu hình API Google Chat bằng tên, biểu tượng và nội dung mô tả cho ứng dụng Chat.
- Cài đặt Thư viện ứng dụng đám mây Node.js.
- Tạo thông tin đăng nhập truy cập dựa trên cách bạn muốn xác thực trong yêu cầu API Google Chat:
- Để xác thực với tư cách là người dùng Chat,
hãy tạo thông tin đăng nhập mã ứng dụng OAuth và lưu thông tin đăng nhập dưới dạng tệp JSON có tên
credentials.jsonvào thư mục cục bộ. - Để xác thực với tư cách là ứng dụng Chat,
hãy tạo thông tin đăng nhập tài khoản dịch vụ và lưu thông tin đăng nhập dưới dạng tệp JSON có tên là
credentials.json.
- Để xác thực với tư cách là người dùng Chat,
hãy tạo thông tin đăng nhập mã ứng dụng OAuth và lưu thông tin đăng nhập dưới dạng tệp JSON có tên
- Chọn phạm vi uỷ quyền dựa trên việc bạn muốn xác thực với tư cách là người dùng hay ứng dụng Chat.
Cập nhật gói thành viên
Để cập nhật gói thành viên của không gian, hãy truyền các thông tin sau trong yêu cầu:
- Chỉ định phạm vi uỷ quyền:
- Khi xác thực người dùng,
hãy chỉ định phạm vi uỷ quyền
chat.memberships. - Khi
xác thực ứng dụng,
hãy chỉ định phạm vi uỷ quyền
chat.app.memberships. Khi cập nhật gói thành viên bằng cách xác thực ứng dụng, bạn chỉ có thể cập nhật gói thành viên trong các không gian do ứng dụng Chat tạo. Phương thức xác thực ứng dụng yêu cầu quản trị viên phê duyệt một lần .
- Khi xác thực người dùng,
hãy chỉ định phạm vi uỷ quyền
- Gọi phương thức
UpdateMembership(). - Truyền
membershipdưới dạng một thực thể củaMembershipvới các thông tin sau:- Trường
nameđược đặt thành tư cách thành viên cần cập nhật, bao gồm mã không gian và mã thành viên. - Các trường tư cách thành viên cần cập nhật được đặt thành giá trị mới.
- Trường
- Truyền
updateMaskđể chỉ định các khía cạnh của tư cách thành viên cần cập nhật, bao gồm những thông tin sau:role: Vai trò của người dùng trong không gian Chat, xác định các hành động được phép của họ trong không gian. Để biết giải thích chi tiết về quyền, hãy xemMembershipRoletrong tài liệu tham khảo API Chat. Các giá trị có thể sử dụng là:ROLE_MEMBER: Thành viên của không gian. Trong giao diện người dùng Chat, vai trò này được gọi là Thành viên.ROLE_ASSISTANT_MANAGER: Người quản lý không gian. Trong giao diện người dùng Chat, vai trò này được gọi là Người quản lý.ROLE_MANAGER: Chủ sở hữu không gian. Trong giao diện người dùng Chat, vai trò này được gọi là Chủ sở hữu.
Thay đổi thành viên thành chủ sở hữu (xác thực người dùng)
Ví dụ sau đây gọi API Chat bằng cách sử dụng
xác thực người dùng
để biến một thành viên không gian thông thường thành chủ sở hữu không gian bằng cách chỉ định role là
ROLE_MANAGER:
Node.js
Để chạy mẫu, hãy thay thế các thông tin sau:
SPACE_NAME: mã nhận dạng từnamecủa không gian. Bạn có thể lấy mã nhận dạng bằng cách gọiListSpaces()phương thức hoặc từ URL của không gian.MEMBER_NAME: mã nhận dạng từ gói thành viênname. Bạn có thể lấy mã nhận dạng bằng cách gọi phương thứcListMemberships()hoặc từ nội dung phản hồi được trả về sau khi tạo gói thành viên không đồng bộ bằng API Chat.ROLE_NAME: vai trò đã cập nhật,ROLE_MANAGER. Bạn có thể đặt giá trị này thành bất kỳ giá trị nào củaMembershipRole. Ví dụ: để biến thành viên thông thường thành người quản lý không gian, hãy thay đổiROLE_NAMEthànhROLE_ASSISTANT_MANAGER.
API Google Chat cập nhật gói thành viên được chỉ định thành chủ sở hữu không gian và trả về một thực thể của Membership.
Thay đổi chủ sở hữu thành thành viên (xác thực người dùng)
Ví dụ sau đây gọi API Chat bằng cách
xác thực người dùng
để biến chủ sở hữu không gian thành thành viên không gian thông thường bằng cách chỉ định role là
ROLE_MEMBER:
Node.js
Để chạy mẫu, hãy thay thế các thông tin sau:
SPACE_NAME: mã nhận dạng từnamecủa không gian. Bạn có thể lấy mã nhận dạng bằng cách gọiListSpaces()phương thức hoặc từ URL của không gian.MEMBER_NAME: mã nhận dạng từ gói thành viênname. Bạn có thể lấy mã nhận dạng bằng cách gọi phương thứcListMemberships()hoặc từ nội dung phản hồi được trả về sau khi tạo gói thành viên không đồng bộ bằng API Chat.ROLE_NAME: vai trò đã cập nhật,ROLE_MEMBER.
API Google Chat cập nhật gói thành viên được chỉ định thành chủ sở hữu không gian và trả về một thực thể của Membership.
Thay đổi thành viên thành chủ sở hữu (xác thực ứng dụng Chat)
Phương thức xác thực ứng dụng yêu cầu quản trị viên phê duyệt một lần .
Viết một tập lệnh gọi API Chat
Ví dụ sau đây gọi API Chat bằng cách
xác thực ứng dụng
để biến một thành viên không gian thông thường thành chủ sở hữu không gian bằng cách chỉ định role là
ROLE_MANAGER trong body chỉ định các thuộc tính gói thành viên đã cập nhật:
Python
- Trong thư mục làm việc, hãy tạo một tệp có tên là
chat_membership_update_to_owner_app.py. Đưa mã sau vào
chat_membership_update_to_owner_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.memberships"] def main(): ''' Authenticates with Chat API using app authentication, then updates a specified space member to change it from a regular member to a space owner. ''' # 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) # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', # Replace ROLE with a MembershipRole value. # Obtain the MembershipRole values from the membership of Chat API. body={'role': 'ROLE'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()Trong mã, hãy thay thế các thông tin sau:
SPACE: tên không gian mà bạn có thể lấy từspaces.listphương thức trong API Chat hoặc từ URL của không gian.MEMBERSHIP: tên gói thành viên mà bạn có thể lấy từspaces.members.listphương thức trong API Chat.ROLE: vai trò đã cập nhật,ROLE_MANAGER. Bạn có thể đặt giá trị này thành bất kỳ giá trị nào củaMembershipRole. Ví dụ: để biến thành viên thông thường thành người quản lý không gian, hãy thay đổiROLEthànhROLE_ASSISTANT_MANAGER.
Trong thư mục làm việc, hãy tạo và chạy mẫu:
python3 chat_membership_update_to_owner_app.py
Thay đổi chủ sở hữu thành thành viên (xác thực ứng dụng Chat)
Phương thức xác thực ứng dụng yêu cầu quản trị viên phê duyệt một lần .
Viết một tập lệnh gọi API Chat
Ví dụ sau đây gọi API Chat bằng cách sử dụng
xác thực ứng dụng
để biến chủ sở hữu không gian thành thành viên không gian thông thường bằng cách chỉ định role là
ROLE_MEMBER trong body chỉ định các thuộc tính gói thành viên đã cập nhật:
Python
- Trong thư mục làm việc, hãy tạo một tệp có tên là
chat_membership_update_to_member_app.py. Đưa mã sau vào
chat_membership_update_to_member_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.memberships"] def main(): ''' Authenticates with Chat API via user credentials, then updates a specified space owner to change it to a regular member. ''' # 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) # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MEMBER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()Trong mã, hãy thay thế các thông tin sau:
SPACE: tên không gian mà bạn có thể lấy từspaces.listphương thức trong API Chat hoặc từ URL của không gian.MEMBERSHIP: tên gói thành viên mà bạn có thể lấy từspaces.members.listphương thức trong API Chat.
Trong thư mục làm việc, hãy tạo và chạy mẫu:
python3 chat_membership_update_to_member_app.py
Cập nhật gói thành viên với tư cách là 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 update() để cập nhật gói thành viên cho bất kỳ không gian nào 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 phạm vi uỷ quyền hỗ trợ việc gọi phương thức bằng đặc quyền của quản trị viên.
- Trong yêu cầu, hãy chỉ định tham số truy vấn
useAdminAccessthànhtrue.
Để 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.
Chủ đề có liên quan
- Mời hoặc thêm người dùng hoặc ứng dụng Google Chat vào một không gian.
- Xem thông tin chi tiết về gói thành viên của người dùng hoặc ứng dụng Chat.
- Liệt kê các thành viên trong một không gian.
- Xoá người dùng hoặc ứng dụng Chat khỏi một không gian.