Hướng dẫn này giải thích cách sử dụng phương thức update()
trên tài nguyên SpaceReadState
của API Google Chat để đánh dấu các không gian là đã đọc hoặc chưa đọc.
Tài nguyên SpaceReadState
là một tài nguyên singleton đại diện cho thông tin chi tiết về tin nhắn đã đọc gần đây nhất của một người dùng cụ thể trong không gian Google Chat.
Điều kiện tiên quyết
Node.js
- Tài khoản Google Workspace dành cho doanh nghiệp hoặc doanh nghiệp lớn 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 Thư viện ứng dụng đám mây Node.js.
-
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ướng dẫn này, hãy lưu thông tin xác thực dưới dạng tệp JSON có tên
client_secrets.json
vào thư mục cục bộ.
- Chọn phạm vi uỷ quyền hỗ trợ xác thực người dùng.
Cập nhật trạng thái đọc không gian của người dùng gọi
Để cập nhật trạng thái đọc của người dùng trong không gian, hãy thêm nội dung sau vào yêu cầu:
- Chỉ định phạm vi uỷ quyền
chat.users.readstate
. - Gọi phương thức
UpdateSpaceReadState()
. - Truyền
updateMask
với giá trịlastReadTime
. - Truyền
spaceReadState
dưới dạng một thực thể củaSpaceReadState
bằng cách sau:- Trường
name
được đặt thành trạng thái đọc không gian để cập nhật, bao gồm mã nhận dạng người dùng hoặc bí danh và mã nhận dạng không gian. Việc cập nhật trạng thái đọc không gian chỉ hỗ trợ cập nhật trạng thái đọc của người dùng gọi. Bạn có thể chỉ định trạng thái này bằng cách đặt một trong những giá trị sau:- Bí danh
me
. Ví dụ:users/me/spaces/SPACE/spaceReadState
. - Địa chỉ email Workspace của người dùng gọi. Ví dụ:
users/user@example.com/spaces/SPACE/spaceReadState
. - Mã nhận dạng người dùng của người dùng thực hiện lệnh gọi. Ví dụ:
users/USER/spaces/SPACE/spaceReadState
.
- Bí danh
- Trường
lastReadTime
được đặt thành giá trị cập nhật của thời gian cập nhật trạng thái đọc không gian của người dùng. Thông thường, giá trị này tương ứng với dấu thời gian của thư đã đọc gần đây nhất hoặc dấu thời gian do người dùng chỉ định để đánh dấu vị trí đọc gần đây nhất trong một không gian. KhilastReadTime
nằm trước thời gian tạo tin nhắn mới nhất, không gian sẽ xuất hiện dưới dạng chưa đọc trong giao diện người dùng. Để đánh dấu không gian là đã đọc, hãy đặtlastReadTime
thành bất kỳ giá trị nào muộn hơn (lớn hơn) so với thời gian tạo thông báo mới nhất.lastReadTime
được buộc phải khớp với thời gian tạo thông báo mới nhất. Xin lưu ý rằng trạng thái đã đọc của không gian chỉ ảnh hưởng đến trạng thái đã đọc của các tin nhắn xuất hiện trong cuộc trò chuyện cấp cao nhất của không gian. Dấu thời gian này không ảnh hưởng đến các thư trả lời trong chuỗi thư mà thay vào đó, các thư trả lời này sẽ dựa vào trạng thái đọc chuỗi thư.
- Trường
Ví dụ sau đây cập nhật trạng thái đọc không gian của người dùng gọi:
Node.js
Để chạy mẫu này, hãy thay thế SPACE_NAME
bằng 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ức ListSpaces()
hoặc từ URL của không gian.
API Google Chat sẽ cập nhật trạng thái đọc không gian đã chỉ định và trả về một thực thể của SpaceReadState
.