Hướng dẫn này giải thích cách sử dụng
update()
phương pháp trên tài nguyên Membership
của API Google Chat để thay đổi thuộc tính
về một thành viên, chẳng hạn như thay đổi thành viên trong không gian thành người quản lý không gian hoặc thay đổi
người quản lý không gian cho một thành viên trong 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 thành viên của bất kỳ không gian 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 Membership
cho biết liệu người dùng thực hoặc ứng dụng Google Chat có được mời tham gia hay không,
một phần hoặc không có trong không gian.
Điều kiện tiên quyết
Node.js
- Doanh nghiệp Tài khoản Google Workspace có quyền truy cập vào Google Chat.
- Thiết lập môi trường:
- Tạo 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 xác thực truy cập dựa trên cách bạn muốn xác thực trong API Google Chat
yêu cầu:
- Cách xác thực là người dùng Chat:
tạo mã ứng dụng OAuth
thông tin xác thực và lưu thông tin đăng nhập dưới dạng tệp JSON có tên
client_secrets.json
vào thư mục địa phương của bạn. - Cách xác thực là ứng dụng Chat:
tạo tài khoản dịch vụ
thông tin xác thực và lưu thông tin đăng nhập dưới dạng tệp JSON có tên
credentials.json
.
- Cách xác thực là người dùng Chat:
tạo mã ứng dụng OAuth
thông tin xác thực 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 dưới dạng 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 những thông tin sau vào yêu cầu của bạn:
- Chỉ định phạm vi uỷ quyền:
- Với tính năng xác thực người dùng,
chỉ định phạm vi uỷ quyền
chat.memberships
. - Bằng
xác thực ứng dụng
(có trong Bản dùng thử cho nhà phát triển),
chỉ định phạm vi uỷ quyền
chat.app.memberships
. Khi cập nhật một Gói thành viên có xác thực ứng dụng, bạn chỉ có thể cập nhật trạng thái thành viên trong không gian do các ứng dụng trong Chat tạo. 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ười dùng,
chỉ định phạm vi uỷ quyền
- Gọi phương thức
UpdateMembership()
. - Truyền
membership
dưới dạng một thực thể củaMembership
bằng các tính năng sau:- Trường
name
được đặt thành gói 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 thành viên cần cập nhật được đặt thành các giá trị mới.
- Trường
- Truyền
updateMask
để chỉ định các chương trình thành viên cần cập nhật bao gồm:role
: Vai trò của người dùng trong phòng Chat, vai trò này xác định những quyền mà họ được phép hành động trong không gian. Các giá trị có thể sử dụng là:ROLE_MEMBER
: Một thành viên của không gian. Người dùng có các quyền cơ bản, chẳng hạn như gửi tin nhắn đến không gian. Trong cuộc trò chuyện 1:1 và cuộc trò chuyện nhóm chưa đặt tên, mọi người đều có vai trò này.ROLE_MANAGER
: Người quản lý không gian. Người dùng có tất cả các quyền cơ bản cùng với các quyền quản trị cho phép họ quản lý không gian, chẳng hạn như thêm hoặc xoá thành viên. Chỉ được hỗ trợ trong những không gian cóspaceType
làSPACE
(không gian được đặt tên).
Giao vai trò người quản lý không gian cho một thành viên thông thường với tư cách là người dùng
Ví dụ sau gọi API Chat bằng cách sử dụng quy trình xác thực người dùng để biến một thành viên thường xuyên của không gian thành người quản lý không gian bằng cách chỉ định role
là ROLE_MANAGER
:
Node.js
Để chạy mẫu, hãy thay thế nội dung sau:
SPACE_NAME
: mã nhận dạng từname
của không gian. Bạn có thể lấy mã nhận dạng bằng cách gọi phương thứcListSpaces()
hoặc từ URL của không gian.MEMBER_NAME
: mã nhận dạng trongname
của gói thành viên. Bạn có thể lấy ID bằng cách gọi hàmListMemberships()
hoặc từ nội dung phản hồi được trả về sau khi tạo một gói thành viên một cách không đồng bộ với API Chat.ROLE_NAME
: vai trò mới cập nhật,ROLE_MANAGER
.
API Google Chat sẽ cập nhật tư cách thành viên đã chỉ định thành người quản lý không gian và trả về một thực thể của Membership
.
Đặt người quản lý không gian làm thành viên thông thường với tư cách là 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
để người quản lý không gian trở thành thành viên thường xuyên của không gian bằng cách chỉ định role
làm
ROLE_MEMBER
:
Node.js
Để chạy mẫu, hãy thay thế nội dung sau:
SPACE_NAME
: mã nhận dạng từname
của không gian. Bạn có thể lấy mã nhận dạng bằng cách gọi phương thứcListSpaces()
hoặc từ URL của không gian.MEMBER_NAME
: mã nhận dạng trongname
của gói thành viên. Bạn có thể lấy ID bằng cách gọi hàmListMemberships()
hoặc từ nội dung phản hồi được trả về sau khi tạo một gói thành viên một cách không đồng bộ với API Chat.ROLE_NAME
: vai trò đã cập nhật,ROLE_MEMBER
.
API Google Chat sẽ cập nhật thành viên đã chỉ định cho người quản lý không gian rồi trả về
một bản sao của
Membership
.
Chỉ định một thành viên thường xuyên của không gian làm người quản lý không gian 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.
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 trên Google Cloud của ứng dụng rồi làm như sau:
- 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.
- Nhấp vào Tạo thông tin xác thực > Khoá API.
- 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. Khoá API cũng có thể là có trong "khoá API" trong thông tin đăng nhập của 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 phần Á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
Ví dụ sau đây gọi API Chat bằng cách sử dụng tính năng xác thực ứng dụng để biến một thành viên thông thường của không gian thành người quản lý không gian bằng cách chỉ định role
là ROLE_MANAGER
trong body
chỉ định các thuộc tính thành viên đã cập nhật:
Python
- Trong thư mục đang hoạt động, hãy tạo một tệp có tên
chat_membership_update_to_manager_app.py
. Đưa mã sau vào
chat_membership_update_to_manager_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 manager. ''' # 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().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_MANAGER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()
Trong mã, hãy thay thế các nội dung sau:
API_KEY
: khoá API mà bạn đã tạo để tạo điểm cuối dịch vụ cho Chat API.SPACE
: tên không gian mà bạn có thể lấy từ Phương thứcspaces.list
trong API Chat hoặc qua URL của một không gian.MEMBERSHIP
: tên gói thành viên mà bạn có thể lấy từ phương thứcspaces.members.list
trong API Chat.
Trong thư mục đang làm việc, hãy tạo và chạy mẫu:
python3 chat_membership_update_to_manager_app.py
Chỉ định người quản lý không gian làm thành viên thường xuyê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.
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 trên Google Cloud của ứng dụng rồi làm như sau:
- 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.
- Nhấp vào Tạo thông tin xác thực > Khoá API.
- 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. Khoá API cũng có thể là có trong "khoá API" trong thông tin đăng nhập của 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 phần Áp dụng các quy tắc hạn chế đối với khoá API.
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 quy trình xác thực ứng dụng để biến người quản lý 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 thành viên đã cập nhật:
Python
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
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 member to change it from a regular member to a space manager. ''' # 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().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 nội dung sau:
API_KEY
: khoá API mà bạn đã tạo để tạo điểm cuối dịch vụ cho Chat API.SPACE
: tên không gian mà bạn có thể lấy từ Phương thứcspaces.list
trong API Chat hoặc qua URL của một không gian.MEMBERSHIP
: tên thành viên mà bạn có thể lấy từ Phương thứcspaces.members.list
trong API Chat.
Trong thư mục đang hoạt động, hãy tạo bản dựng và chạy mẫu:
python3 chat_membership_update_to_member_app.py
Cập nhật gói thành viên khi là quản trị viên Google Workspace
Nếu là quản trị viên Google Workspace, bạn có thể gọi update()
phương thức cập nhật thành viên cho bất kỳ không gian nào trong Google Workspace
tổ chức.
Để 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, hãy chỉ định tham số truy vấn
useAdminAccess
thà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 hay ứng dụng Google Chat vào một không gian.
- Nhận 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ê thành viên trong không gian.
- Xoá người dùng hoặc ứng dụng trong Chat khỏi không gian.