Hướng dẫn này giải thích cách sử dụng phương thức create
trên tài nguyên membership
của API Google Chat để mời hoặc thêm người dùng, nhóm trên Google Groups hoặc
Ứng dụng Chat đến một không gian còn được gọi là tạo
gói thành viên. Khi tạo gói thành viên, nếu thành viên được chỉ định có
bạn đã tắt tính năng tự động chấp nhận chính sách, thì họ sẽ được mời và họ phải chấp nhận không gian
trước khi tham gia. Nếu không, khi tạo một gói thành viên, thành viên đó sẽ được thêm
trực tiếp vào không gian được chỉ định.
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
Python
- 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 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 Python Thư viện ứng dụng API của Google.
-
Tạo thông tin xác thực mã ứng dụng khách OAuth cho một ứng dụng dành cho máy tính. Để chạy mẫu trong
hãy 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 nội bộ.
- Chọn phạm vi uỷ quyền có hỗ trợ việc xác thực người dùng.
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 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 Node.js Thư viện ứng dụng API của Google.
-
Tạo thông tin xác thực mã ứng dụng khách OAuth cho một ứng dụng dành cho máy tính. Để chạy mẫu trong
hãy 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 nội bộ.
- Chọn phạm vi uỷ quyền có hỗ trợ việc xác thực người dùng.
Mời hoặc thêm người dùng vào không gian
Để mời hoặc thêm người dùng vào không gian, hãy chuyển thông tin sau vào yêu cầu:
- Chỉ định phạm vi uỷ quyền
chat.memberships
. - Gọi
Phương thức
create
trênmembership
tài nguyên. - Đặt
parent
thành tên tài nguyên của không gian để tạo thành viên. - Đặt
member
thànhusers/{user}
, trong đó{user}
là người mà bạn muốn tạo gói thành viên cho và là:- Mã nhận dạng cho
người
trong API Mọi người. Ví dụ: nếu API Mọi người
người
resourceName
làpeople/123456789
, sau đó đặtmembership.member.name
đếnusers/123456789
. - Mã nhận dạng cho người dùng trong API thư mục.
- Địa chỉ email của người dùng. Ví dụ:
users/222larabrown@gmail.com
hoặcusers/larabrown@cymbalgroup.com
Nếu người dùng sử dụng Tài khoản Google hoặc thuộc một tổ chức Google Workspace khác, bạn phải sử dụng địa chỉ email.
- Mã nhận dạng cho
người
trong API Mọi người. Ví dụ: nếu API Mọi người
người
Ví dụ sau đây sẽ thêm một người dùng vào một không gian:
Python
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
chat_membership_user_create.py
. Đưa mã sau vào
chat_membership_user_create.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"] def main(): ''' Authenticates with Chat API via user credentials, then adds a user to a Chat space by creating a 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().create( # The space in which to create a membership. parent = 'spaces/SPACE', # Specify which user the membership is for. body = { 'member': { 'name':'users/USER', 'type': 'HUMAN' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
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ứcspaces.list
trong API Chat hoặc qua URL của một không gian.USER
: mã nhận dạng người dùng.
Trong thư mục đang làm việc, hãy tạo và chạy mẫu:
python3 chat_membership_user_create.py
Node.js
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
add-user-to-space.js
. Đưa mã sau vào
add-user-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the user to the Chat space. * @return {!Promise<!Object>} */ async function addUserToSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.memberships', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.members.create({ parent: 'spaces/SPACE', requestBody: {member: {name: 'users/USER', type: 'HUMAN'}} }); } addUserToSpace().then(console.log);
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ứcspaces.list
trong API Chat hoặc qua URL của một không gian.USER
: mã nhận dạng người dùng.
Trong thư mục đang làm việc, hãy chạy mẫu:
node add-user-to-space.js
API Chat trả về một phiên bản của
membership
cung cấp thông tin chi tiết về tư cách thành viên của người dùng đã được tạo.
Mời hoặc thêm một nhóm trên Google Groups vào không gian
Để mời hoặc thêm một nhóm trên Google Groups vào một không gian, hãy truyền nội dung sau vào yêu cầu:
- Chỉ định phạm vi uỷ quyền
chat.memberships
. - Gọi
Phương thức
create
trênmembership
tài nguyên. - Đặt
parent
thành tên tài nguyên của không gian để tạo thành viên. - Thiết lập
groupMember
thànhgroups/{group}
, trong đó{group}
là mã nhóm mà bạn muốn tạo gói thành viên. Bạn có thể truy xuất mã của nhóm bằng cách sử dụng API Cloud Identity. Ví dụ: nếu API Cloud Identity trả về một nhóm có têngroups/123456789
, sau đó đặtmembership.groupMember.name
thànhgroups/123456789
.
Bạn không thể thêm Google Groups vào cuộc trò chuyện nhóm hoặc tin nhắn trực tiếp, mà chỉ có thể vào không gian được đặt tên. Ví dụ sau đây sẽ thêm một nhóm vào không gian được đặt tên:
Python
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
chat_membership_group_create.py
. Đưa mã sau vào
chat_membership_group_create.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"] def main(): ''' Authenticates with Chat API via user credentials, then adds a group to a Chat space by creating a 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().create( # The named space in which to create a membership. parent = 'spaces/SPACE', # Specify which group the membership is for. body = { 'groupMember': { 'name':'groups/GROUP', } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
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ứcspaces.list
trong API Chat hoặc qua URL của một không gian.GROUP
: một mã nhóm.
Trong thư mục đang làm việc, hãy tạo và chạy mẫu:
python3 chat_membership_group_create.py
Node.js
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
add-group-to-space.js
. Đưa mã sau vào
add-group-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the group to the Chat space. * @return {!Promise<!Object>} */ async function addUserToSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.memberships', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.members.create({ parent: 'spaces/SPACE', requestBody: {groupMember: {name: 'groups/GROUP'}} }); } addUserToSpace().then(console.log);
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ứcspaces.list
trong API Chat hoặc qua URL của một không gian.GROUP
: một mã nhóm.
Trong thư mục đang làm việc, hãy chạy mẫu:
node add-group-to-space.js
API Chat trả về một phiên bản của
membership
để cung cấp thông tin chi tiết về tư cách thành viên trong nhóm đã được tạo.
Thêm ứng dụng Chat vào một không gian
Một ứng dụng Chat không thể thêm một ứng dụng khác làm thành viên của một ứng dụng . Cách thêm một ứng dụng Chat vào một không gian hoặc tin nhắn trực tiếp giữa hai người dùng, hãy chuyển nội dung sau vào yêu cầu của bạn:
- Chỉ định phạm vi uỷ quyền
chat.memberships.app
. - Gọi
Phương thức
create
trên tài nguyênmembership
. - Đặt
parent
thành tên tài nguyên của không gian để tạo thành viên. - Đặt
member
thànhusers/app
; một bí danh đại diện cho ứng dụng gọi API Chat.
Ví dụ sau đây sẽ thêm một ứng dụng Chat vào một không gian:
Python
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
chat_membership_app_create.py
. Đưa mã sau vào
chat_membership_app_create.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 adds the Chat app to a Chat space. ''' # 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().create( # The space in which to create a membership. parent = 'spaces/SPACE', # Set the Chat app as the entity that gets added to the space. # 'app' is an alias for the Chat app calling the API. body = { 'member': { 'name':'users/app', 'type': 'BOT' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
Trong mã, thay thế
SPACE
bằng 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.Trong thư mục đang làm việc, hãy tạo và chạy mẫu:
python3 chat_membership_app_create.py
Node.js
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
add-app-to-space.js
. Đưa mã sau vào
add-app-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the app to the Chat space. * @return {!Promise<!Object>} */ async function addAppToSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.memberships.app', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.members.create({ parent: 'spaces/SPACE', requestBody: {member: {name: 'users/app', type: 'BOT'}} }); } addAppToSpace().then(console.log);
Trong mã, thay thế
SPACE
bằng 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.Trong thư mục đang làm việc, hãy chạy mẫu:
node add-app-to-space.js
API Chat trả về một phiên bản của
membership
nêu chi tiết gói thành viên trong ứng dụng đã được tạo.
Chủ đề có liên quan
- Xem thông tin chi tiết về gói thành viên của một người dùng hoặc ứng dụng Chat.
- Liệt kê thành viên trong không gian.
- Cập nhật gói thành viên của người dùng trong phòng Google Chat.
- Xoá người dùng hoặc ứng dụng trong Chat khỏi không gian.