Hướng dẫn này giải thích cách sử dụng phương thức setup
trên tài nguyên Space
của
API Google Chat để thiết lập một không gian trên Google Chat. Việc thiết lập không gian sẽ tạo ra một không gian
rồi thêm người dùng được chỉ định vào đó.
Chiến lược phát hành đĩa đơn
Tài nguyên Space
đại diện cho nơi mọi người và các ứng dụng trong Chat có thể gửi tin nhắn,
chia sẻ tệp và cộng tác. Có một số loại không gian:
- Tin nhắn trực tiếp (DM) là các cuộc trò chuyện giữa hai người dùng hoặc một người dùng và ứng dụng Chat.
- Cuộc trò chuyện nhóm là các cuộc trò chuyện giữa ba người dùng trở lên và Ứng dụng nhắn tin.
- Không gian được đặt tên là những địa điểm cố định nơi mọi người gửi tin nhắn, chia sẻ tệp, và cộng tác.
Khi thiết lập không gian, hãy cân nhắc những điều sau:
- Người dùng đang gọi (được xác thực) sẽ tự động được thêm vào không gian, vì vậy bạn không cần chỉ rõ tư cách thành viên của người dùng trong yêu cầu.
- Khi tạo tin nhắn trực tiếp (DM), nếu có tin nhắn trực tiếp giữa hai người dùng, thì DM sẽ được trả về. Nếu không, tin nhắn trực tiếp sẽ được tạo.
- Khi tạo cuộc trò chuyện nhóm, nếu không có thành viên nào được cung cấp trong yêu cầu đã được thêm thành công vào cuộc trò chuyện nhóm (ví dụ: vấn đề về quyền), sau đó thì bạn có thể tạo một cuộc trò chuyện nhóm trống (chỉ bao gồm người dùng đang gọi).
- Bạn không thể thiết lập các không gian có câu trả lời theo chuỗi hoặc thêm người bên ngoài Google Workspace.
- Gói thành viên trùng lặp (bao gồm cả người dùng gọi điện) được nêu trong yêu cầu bị lọc ra thay vì dẫn đến lỗi yêu cầu.
Đ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.
Thiết lập không gian
Để thiết lập không gian, hãy truyền những thông tin sau vào yêu cầu:
- Chỉ định phạm vi uỷ quyền
chat.spaces.create
hoặcchat.spaces
. - Gọi
Phương thức
setup
trên tài nguyênSpace
. - Để thêm một người dùng làm thành viên của không gian, hãy chỉ định
users/{user}
, trong đó{user}
là{person_id}
choperson
từ API Mọi người hoặc mã nhận dạng củauser
trong API thư mục. Ví dụ: nếu người dùng API Mọi ngườiresourceName
đãpeople/123456789
. Bạn có thể thêm người dùng này vào không gian bằng cách bao gồm một gói thành viên dousers/123456789
đóng vai trò làmember.name
. - Để thêm một nhóm làm thành viên của không gian, hãy chỉ định
groups/{group}
, trong đó{group}
là mã nhóm mà bạn muốn tạo tư cách thành viên. Mã nhận dạng của nhóm có thể truy xuất được bằng Cloud Identity API. Ví dụ: nếu API Cloud Identity trả về một nhóm có têngroups/123456789
, sau đó đặtmembership.groupMember.name
thànhgroups/123456789
. Google Groups không thể đã thêm vào một cuộc trò chuyện nhóm hoặc tin nhắn trực tiếp, mà chỉ vào một không gian được đặt tên. - Để tạo tin nhắn trực tiếp giữa người dùng đang gọi và một người khác người dùng, hãy chỉ định tư cách thành viên của người dùng đó trong yêu cầu của bạn.
- Để tạo tin nhắn trực tiếp giữa người dùng gọi và ứng dụng gọi, hãy đặt
Space.singleUserBotDm
chotrue
và không chỉ định bất kỳ gói thành viên nào. Bạn có thể chỉ sử dụng phương thức này để thiết lập tin nhắn trực tiếp với ứng dụng gọi. Để thêm phương thức gọi ứng dụng dưới dạng thành viên của không gian hoặc tin nhắn trực tiếp hiện có giữa hai người dùng, xem tạo gói thành viên.
Ví dụ sau đây sẽ tạo một không gian được đặt tên và tạo thành viên cho không gian đó cho một nhóm và 3 người dùng (bao gồm cả người dùng đã xác thực và 2 người dùng) người dùng được chỉ định khác).
Python
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
chat_space_setup.py
. Đưa mã sau vào
chat_space_setup.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.spaces.create"] def main(): ''' Authenticates with Chat API via user credentials, then sets up a Chat space by creating a space and adding members. ''' # 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().setup( # Details about the space to set up. body = { # Attributes of the space to set up, like space type and display name. 'space': { # To set up a named space, set spaceType to SPACE. 'spaceType': 'SPACE', # The user-visible name of the space 'displayName': 'API-setup' }, # The users and groups to add to the space. # # The authenticated user is automatically added to the space, # and doesn't need to be specified in the memberships array. 'memberships': [ { 'member': { 'name':'users/123456789', 'type': 'HUMAN' } }, { 'member': { 'name':'users/987654321', 'type': 'HUMAN' } }, { 'groupMember': { 'name': 'groups/11223344' } } ] } ).execute() # Prints details about the created space. print(result) if __name__ == '__main__': main()
Trong thư mục đang làm việc, hãy tạo và chạy mẫu:
python3 chat_space_setup.py
Node.js
- Trong thư mục đang làm việc, hãy tạo một tệp có tên
setup-space.js
. Đưa mã sau vào
setup-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Sets up a new Chat space with users. * @return {!Promise<!Object>} */ async function setupSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.spaces.create', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.setup({ requestBody: { space: { spaceType: 'SPACE', displayName: 'API-made', }, memberships: [ {member: {name: 'users/123456789', type: 'HUMAN'}}, {member: {name: 'users/987654321', type: 'HUMAN'}}, {groupMember: {name: 'groups/11223344'}}, ] } }); } setupSpace().then(console.log);
Trong thư mục đang làm việc, hãy chạy mẫu:
node setup-space.js
Một không gian trò chuyện được đặt tên có một nhóm và 3 người dùng, trong đó có người dùng đã xác thực được thiết lập.
Để truy cập vào không gian, hãy sử dụng mã nhận dạng tài nguyên của không gian để tạo URL của không gian.
Bạn có thể lấy mã nhận dạng tài nguyên từ không gian name
trong phản hồi của Google Chat
nội dung. Ví dụ: nếu name
của không gian là spaces/1234567
, bạn có thể truy cập
vào không gian bằng URL sau:
https://mail.google.com/chat/u/0/#chat/space/1234567
.
Chủ đề có liên quan
- Tạo không gian.
- Xem thông tin chi tiết về một không gian.
- Liệt kê không gian.
- Cập nhật không gian.
- Xoá không gian.
- Tìm một không gian tin nhắn trực tiếp.
- Tạo không gian mà những người dùng cụ thể có thể tìm thấy.