Xử lý các sự kiện trên Google Chat

Trang này giải thích cách các ứng dụng Google Chat có thể nhận và phản hồi các sự kiện trong Google Chat.

Sự kiện trên Google Chat biểu thị một hoạt động hoặc thay đổi trong Chat, chẳng hạn như tin nhắn mới trong một không gian. Ứng dụng Chat của bạn có thể sử dụng các sự kiện để nắm được những gì đã xảy ra và thực hiện hành động hoặc phản hồi theo cách có ý nghĩa cho người dùng.

Sau đây là một số ví dụ về cách bạn có thể sử dụng sự kiện:

  • Theo dõi và trả lời tin nhắn mới trong một không gian, chẳng hạn như kiểm tra các từ khoá hoặc cụm từ.
  • Gửi cho người dùng một tin nhắn chào mừng khi họ tham gia phòng để giải thích các nguyên tắc của phòng hoặc chia sẻ mẹo về cách sử dụng ứng dụng Chat một cách hiệu quả.
  • Theo dõi và phân tích hoạt động trên Chat. Ví dụ: để gửi báo cáo hằng tháng về thành viên mới hoặc những tin nhắn nhận được nhiều lượt thể hiện cảm xúc hoặc lượt trả lời nhất.
  • Giao tiếp trên nhiều nền tảng nhắn tin. Ví dụ: người dùng có thể gửi và nhận tin nhắn từ người dùng trên một nền tảng nhắn tin khác mà không cần rời khỏi Chat.

Cách hoạt động của sự kiện

Bất cứ khi nào có sự kiện xảy ra trong Google Chat, một tài nguyên Google Chat API sẽ được tạo, cập nhật hoặc xoá. Chat sử dụng các sự kiện để gửi thông tin đến ứng dụng Chat của bạn về loại hoạt động đã xảy ra và tài nguyên Chat API bị ảnh hưởng.

Ví dụ về cách một tin nhắn được đăng lên phòng Google Chat sẽ kích hoạt một sự kiện.
Hình 1. Người dùng đăng tin nhắn trong một phòng Chat, thao tác này sẽ tạo ra một tài nguyên Message. Sau đó, Chat sẽ tạo một sự kiện chứa dữ liệu về tin nhắn mới.

Chat phân loại các sự kiện theo loại. Các loại sự kiện giúp bạn lọc và chỉ nhận được loại thông tin bạn cần, đồng thời cho phép bạn xử lý các hoạt động tương tự theo cùng một cách.

Bảng sau đây cho biết cách một hoạt động trong Chat ảnh hưởng đến một tài nguyên Chat API có liên quan và loại sự kiện mà ứng dụng Chat của bạn nhận được:

Hoạt động Tài nguyên Chat API Loại sự kiện
Người dùng đăng tin nhắn trong một phòng Chat Tài nguyên Message được tạo. Tin nhắn mới
Một người dùng trở thành người quản lý không gian. Tài nguyên Membership được cập nhật. Đã cập nhật gói thành viên
Một người dùng bày tỏ cảm xúc về một tin nhắn. Tài nguyên Reaction được tạo. Phản ứng mới
Người dùng rời khỏi một không gian. Tài nguyên Membership bị xoá. Đã xoá gói thành viên

Nhận sự kiện từ Google Chat

Để nhận sự kiện, ứng dụng Chat của bạn có thể thực hiện một trong hai cách sau:

  • Đăng ký nhận sự kiện bằng Google Workspace Events API để nhận sự kiện khi chúng xảy ra.
  • Truy vấn các sự kiện gần đây bằng cách gọi Chat API.

Bảng sau đây giải thích sự khác biệt và lý do truy vấn hoặc đăng ký sự kiện:

Đăng ký nhận thông báo về sự kiện Truy vấn sự kiện
Trường hợp sử dụng
  • Xử lý hoặc phản hồi các sự kiện theo thời gian thực.
  • Theo dõi hoạt động thành viên của người dùng và khám phá các không gian mới để theo dõi.
  • Xử lý hoặc phản hồi các sự kiện theo định kỳ hoặc thông qua một điều kiện kích hoạt.
  • Tìm nạp các sự kiện bị bỏ lỡ từ một gói thuê bao (do ngừng hoạt động hoặc gói thuê bao không hoạt động).
API Google Workspace Events API Chat API
Nguồn sự kiện Không gian và người dùng Chỉ không gian
Sự kiện được hỗ trợ
  • Tin nhắn
  • Hội viên
  • Lượt thể hiện cảm xúc
  • Không gian

Để biết danh sách các loại sự kiện được hỗ trợ, hãy xem Các loại sự kiện để tạo lượt đăng ký trong tài liệu về Google Workspace Events API.
  • Tin nhắn
  • Hội viên
  • Lượt thể hiện cảm xúc
  • Không gian

Để biết danh sách các loại sự kiện được hỗ trợ, hãy xem tài nguyên spaceEvents trong tài liệu tham khảo về Chat API.
Định dạng sự kiện Một thông báo Google Cloud Pub/Sub, được định dạng theo quy cách CloudEvent. Để biết thông tin chi tiết, hãy xem phần Cấu trúc của các sự kiện trên Google Workspace. Tài nguyên Chat API ( spaces.spaceEvent)
Dữ liệu sự kiện Chuỗi được mã hoá Base64 có hoặc không có dữ liệu tài nguyên. Để biết ví dụ về tải trọng, hãy xem phần Dữ liệu sự kiện. Tải trọng JSON chứa dữ liệu tài nguyên. Một số loại sự kiện chỉ bao gồm một số trường tài nguyên nhất định. Để biết các tải trọng mẫu, hãy xem tài liệu tham khảo.

Ví dụ: Truy vấn hoặc đăng ký nhận thông báo về các sự kiện liên quan đến thành viên trong một không gian

Trong ví dụ này, một ứng dụng Chat muốn nhận thông tin về những thay đổi đối với thành viên của một không gian trên Chat. Trong không gian, hoạt động thành viên sau đây sẽ diễn ra:

  • Người dùng tham gia phòng, tạo tài nguyên Membership và kích hoạt sự kiện thành viên mới.
  • Người dùng trở thành người quản lý không gian, việc này sẽ cập nhật tài nguyên Membership cho người dùng và kích hoạt sự kiện thành viên được cập nhật.
  • Người dùng rời khỏi không gian, thao tác này sẽ xoá tài nguyên Membership cho người dùng và kích hoạt sự kiện thành viên bị xoá.

Đăng ký nhận thông báo về sự kiện liên quan đến gói thành viên

Để nhận các sự kiện theo thời gian thực, ứng dụng Chat sẽ gọi phương thức Google Workspace Events API subscriptions.create() để đăng ký không gian cho tất cả các loại sự kiện về tư cách thành viên. Sau khi bạn tạo gói thuê bao, ứng dụng Chat có thể bắt đầu nhận các sự kiện về gói thành viên.

Ứng dụng Chat đăng ký nhận sự kiện bằng Google Workspace Events API.
Hình 2. Ứng dụng Chat nhận các sự kiện về thành viên thông qua một gói thuê bao bằng Google Workspace Events API.

Trong hình 2, ứng dụng Chat có một gói thuê bao đang hoạt động cho không gian, vì vậy, ứng dụng sẽ nhận được một sự kiện bất cứ khi nào có thay đổi về tư cách thành viên trong không gian. Sau đó, ứng dụng Chat có thể xử lý hoặc phản hồi theo thời gian thực đối với mọi hoạt động, chẳng hạn như đăng một tin nhắn chào mừng riêng tư cho thành viên đã tham gia không gian.

Để tìm hiểu về cách tạo lượt đăng ký bằng Google Workspace Events API, hãy xem tài liệu về Google Workspace Events API.

Truy vấn các sự kiện gần đây liên quan đến thành viên

Thay vì nhận các sự kiện về thành viên khi chúng xảy ra, ứng dụng Chat có thể gọi Chat API để liệt kê các sự kiện gần đây trong không gian có liên quan đến hoạt động của thành viên.

Ứng dụng Chat truy vấn các sự kiện bằng API Chat.
Hình 3. Ứng dụng Chat nhận được các sự kiện gần đây về thành viên bằng cách truy vấn các sự kiện về không gian bằng API Chat.

Trong hình 3, một ứng dụng Chat gọi phương thức Chat API spaces.spaceEvents.list() sau khi tất cả hoạt động thành viên đã diễn ra và lọc truy vấn cho các sự kiện thành viên mới, đã cập nhật và đã xoá. Chat API trả về danh sách các tài nguyên spaceEvent đại diện cho từng thay đổi về thành viên. Sau đó, ứng dụng Chat có thể xử lý hoặc phản hồi dựa trên hoạt động gần đây, chẳng hạn như đăng một tin nhắn hằng tuần kèm theo bản tóm tắt hoạt động thành viên của không gian trong 7 ngày qua.

Để truy vấn các sự kiện bằng API Chat, hãy xem phần Liệt kê các sự kiện trong một không gian trên Google Chat.

Các điểm hạn chế

  • Đối với việc đăng ký theo dõi người dùng, các sự kiện về thành viên mới trong tin nhắn trực tiếp hoặc cuộc trò chuyện nhóm chưa đặt tên (google.workspace.chat.membership.v1.created) chỉ kích hoạt sau khi tin nhắn đầu tiên được đăng.
  • Để nhận được các sự kiện về tư cách thành viên, người dùng phải là thành viên trực tiếp của không gian. Nếu một người dùng được thêm, cập nhật hoặc xoá gián tiếp khỏi một không gian thông qua một Nhóm Google, thì dịch vụ đăng ký sẽ không nhận được những sự kiện thành viên đó. Để tìm hiểu cách hoạt động của tư cách thành viên trong nhóm trên Google Groups, hãy xem phần Thêm nhóm trên Google Groups vào không gian.