Trang này mô tả cách ứng dụng Google Chat có thể nhận và phản hồi các tương tác của người dùng, còn gọi là ứng dụng Google Chat sự kiện tương tác.
Trang này mô tả cách thực hiện những việc sau:
- Định cấu hình ứng dụng Chat để nhận tương tác các sự kiện.
- Xử lý sự kiện tương tác trên cơ sở hạ tầng của bạn.
- Nếu thích hợp, hãy phản hồi các sự kiện tương tác.
Điều kiện tiên quyết
Một ứng dụng Google Chat đã bật các tính năng tương tác. Để tạo một ứng dụng Chat tương tác, hãy hoàn thành một trong các bước bắt đầu nhanh sau đây trên cấu trúc ứng dụng mà bạn muốn sử dụng:
- Dịch vụ HTTP với Google Cloud Functions
- Google Apps Script
- Google Cloud Dialogflow CX
- Google Cloud Pub/Sub
Cách hoạt động của sự kiện tương tác
Sự kiện tương tác với ứng dụng Google Chat đại diện cho bất kỳ hành động nào mà mà người dùng thực hiện để gọi hoặc tương tác với một ứng dụng Chat, chẳng hạn như khi đề cập đến một ứng dụng Chat bằng @hoặc thêm ứng dụng đó vào . Khi người dùng tương tác với một ứng dụng trong Chat, Google Chat sẽ gửi cho ứng dụng Chat một sự kiện tương tác. Ứng dụng Chat có thể sử dụng sự kiện để xử lý tương tác và tạo phản hồi.
Ví dụ: ứng dụng trong Chat dùng sự kiện tương tác để thực hiện bất kỳ sau:
Ví dụ về sự kiện tương tác | Câu trả lời thông thường của một ứng dụng Chat |
---|---|
Người dùng gọi ứng dụng trong Chat bằng cách đề cập bằng @ hoặc sử dụng lệnh dấu gạch chéo. | Chiến lược phát hành đĩa đơn
Ứng dụng Chat sẽ xử lý nội dung tin nhắn
tạo thông báo. Ví dụ: ứng dụng Chat trả lời
lệnh /about kèm theo thông báo giải thích các tác vụ
mà ứng dụng Chat có thể làm. |
Người dùng thêm ứng dụng Chat vào một không gian. | Ứng dụng Chat sẽ gửi thông tin giới thiệu thông báo giải thích chức năng và cách người dùng trong không gian có thể tương tác nó. |
Người dùng xoá một Ứng dụng nhắn tin của một không gian. | Chiến lược phát hành đĩa đơn Ứng dụng Chat sẽ xoá mọi thông báo đến được định cấu hình cho không gian (chẳng hạn như xoá webhook) và xoá mọi bộ nhớ trong. |
Người dùng nhấp vào nút trên thẻ hoặc hộp thoại được gửi bởi Ứng dụng Chat. | Ứng dụng Chat sẽ xử lý và lưu trữ mọi dữ liệu mà người dùng đã gửi hoặc trả lại một thẻ hoặc hộp thoại khác. |
Đối với mỗi loại tương tác của người dùng, Google Chat sẽ gửi một loại
sự kiện tương tác giúp ứng dụng Chat xử lý từng
loại sự kiện tương ứng. Ví dụ: Google Chat sử dụng loại sự kiện
ADDED_TO_SPACE
cho bất kỳ tương tác nào mà người dùng thêm
trò chuyện với một không gian để
Ứng dụng Chat có thể xử lý câu trả lời, chẳng hạn như đăng một
tin nhắn chào mừng gửi đến không gian. Để xem tất cả sự kiện tương tác được hỗ trợ, hãy xem
EventType
tài liệu tham khảo
tài liệu.
Nhận sự kiện tương tác trong ứng dụng trong Chat
Phần này mô tả cách nhận và xử lý sự kiện tương tác cho Ứng dụng Chat.
Định cấu hình ứng dụng Chat để nhận các sự kiện tương tác
Không phải ứng dụng nào trong Chat cũng có tính tương tác. Ví dụ: webhook đến chỉ có thể gửi tin nhắn đi và không thể trả lời người dùng. Nếu bạn đang tạo một ứng dụng Là một ứng dụng nhắn tin, bạn phải chọn một điểm cuối cho phép Ứng dụng Chat nhận, xử lý và phản hồi hoạt động tương tác các sự kiện. Để tìm hiểu thêm về cách thiết kế ứng dụng Chat, hãy xem Cấu trúc triển khai ứng dụng trong Chat.
Đối với mỗi tính năng tương tác mà bạn muốn xây dựng, bạn phải cập nhật cấu hình của bạn trong API Chat để Google Chat có thể gửi sự kiện tương tác liên quan đến ứng dụng Chat:
Trong bảng điều khiển Google Cloud, hãy truy cập vào trang API Chat rồi nhấp vào Trang Cấu hình:
Trong phần Tính năng tương tác, hãy xem lại các chế độ cài đặt và cập nhật dựa các tính năng mà bạn muốn xây dựng:
Trường Mô tả Chức năng Bắt buộc. Một nhóm các trường xác định cách ứng dụng Chat có thể tương tác với người dùng: - Nhận tin nhắn 1:1: Người dùng có thể tìm và nhắn tin qua ứng dụng Chat ngay trong Google Chat.
- Tham gia các không gian và cuộc trò chuyện nhóm: Người dùng có thể thêm ứng dụng Chat vào các không gian và cuộc trò chuyện nhóm.
Chế độ cài đặt kết nối Bắt buộc. Điểm cuối của ứng dụng Chat, là một trong những điểm cuối sau đây: - URL ứng dụng: Một điểm cuối HTTPS lưu trữ quá trình triển khai ứng dụng Chat.
- Dự án Apps Script: Mã triển khai cho dự án Apps Script giúp triển khai ứng dụng Chat.
- Tên chủ đề trên Cloud Pub/Sub: Chủ đề Pub/Sub mà ứng dụng Chat đăng ký dưới dạng một điểm cuối.
- Dialogflow: Đăng ký ứng dụng Chat bằng công cụ tích hợp Dialogflow. Để biết thêm thông tin, hãy xem bài viết Tạo một ứng dụng Google Chat bằng Dialogflow hiểu được ngôn ngữ tự nhiên.
Lệnh dấu gạch chéo Không bắt buộc. Các lệnh có thể hiển thị cho người dùng trong Google Chat. Cho phép người dùng xem các thao tác chính của ứng dụng Chat trong Google Chat và chọn một thao tác cụ thể mà họ muốn tương tác. Để biết thêm thông tin, hãy xem bài viết Phản hồi lệnh dấu gạch chéo dưới dạng ứng dụng Chat. Bản xem trước đường liên kết Không bắt buộc. Các mẫu URL mà ứng dụng Chat nhận dạng và cung cấp thêm nội dung khi người dùng gửi đường liên kết. Để biết thêm thông tin, hãy xem bài viết Xem trước đường liên kết. Chế độ hiển thị Không bắt buộc. Tối đa 5 người hoặc một hoặc nhiều nhóm trên Google Groups có thể xem và cài đặt ứng dụng Chat của bạn. Sử dụng trường này để kiểm tra ứng dụng Chat của bạn hoặc để chia sẻ ứng dụng Chat với nhóm của bạn. Để biết thêm thông tin, hãy xem bài viết Kiểm thử các tính năng tương tác. Nhấp vào Lưu. Khi bạn lưu ứng dụng Chat , ứng dụng Chat của bạn sẽ hiển thị cho người dùng được chỉ định trong tổ chức Google Workspace của bạn.
Ứng dụng Chat của bạn hiện đã được định cấu hình để nhận tương tác sự kiện từ Google Chat.
Xử lý các lần thử gọi lại lệnh gọi HTTP đến dịch vụ của bạn
Nếu yêu cầu HTTPS đến dịch vụ của bạn không thành công (chẳng hạn như hết thời gian chờ, mạng tạm thời) hoặc mã trạng thái HTTPS không phải 2xx), Google Chat có thể thử gửi lại một vài trong vòng vài phút (nhưng điều này không được đảm bảo). Kết quả là, Ứng dụng Chat có thể nhận được cùng một tin nhắn vài lần trong tình huống nhất định. Nếu yêu cầu hoàn tất thành công nhưng trả về giá trị không hợp lệ tải trọng tin nhắn, Google Chat sẽ không thử lại yêu cầu.
Xử lý hoặc phản hồi sự kiện tương tác
Phần này giải thích cách các ứng dụng Google Chat có thể xử lý và phản hồi sự kiện tương tác.
Sau khi ứng dụng Chat của bạn nhận được một sự kiện tương tác từ Google Chat, họ có thể trả lời theo nhiều cách. Trong nhiều trường hợp, quảng cáo tương tác Các ứng dụng trong Chat sẽ trả lời người dùng bằng tin nhắn. Ứng dụng Google Chat cũng có thể tra cứu một số thông tin từ dữ liệu nguồn, ghi lại thông tin sự kiện tương tác hoặc bất cứ điều gì khác. Hành vi xử lý này về cơ bản là điều xác định Ứng dụng Google Chat.
Để phản hồi đồng bộ, một ứng dụng Chat phải phản hồi trong vòng 30 giây, và câu trả lời phải được đăng trong không gian tương tác đã xảy ra. Nếu không, ứng dụng Chat có thể phản hồi không đồng bộ.
Đối với mỗi sự kiện tương tác, các ứng dụng trong Chat sẽ nhận được một nội dung yêu cầu, là tải trọng JSON đại diện cho sự kiện. Bạn có thể sử dụng để xử lý phản hồi. Để biết ví dụ về các tải trọng sự kiện, hãy xem Các loại sự kiện tương tác với ứng dụng trong Chat.
Biểu đồ dưới đây minh hoạ cách Ứng dụng Google Chat thường xử lý hoặc phản hồi nhiều loại sự kiện tương tác:
Trả lời theo thời gian thực
Sự kiện tương tác cho phép các ứng dụng Chat phản hồi theo thời gian thực, hoặc một cách đồng bộ. Không cần có câu trả lời đồng bộ xác thực.
Phản hồi khi bạn tham gia một không gian
Trong ví dụ này, ứng dụng Chat sẽ tạo và gửi tin nhắn văn bản tin nhắn mỗi khi cuộc trò chuyện đó được thêm vào không gian. Để tìm hiểu về các phương pháp hay nhất cho người dùng làm quen với ứng dụng, xem Giới thiệu người dùng làm quen với ứng dụng Chat.
Để gửi tin nhắn văn bản khi người dùng thêm ứng dụng Chat của bạn
với một không gian, ứng dụng Chat của bạn
phản hồi một ADDED_TO_SPACE
sự kiện tương tác. Để phản hồi
Sự kiện tương tác ADDED_TO_SPACE
bằng tin nhắn văn bản, hãy sử dụng mã sau:
Node.js
/**
* Sends an onboarding message when the Chat app is added to a space.
*
* @param {Object} req The event object from Chat API.
* @param {Object} res The response object from the Chat app. An onboarding message that
* introduces the app and helps people get started with it.
*/
exports.onMessage = function onMessage(req, res) {
if (req.method === 'GET' || !req.body.message) {
res.send(
'Hello! This function is meant to be used in a Google Chat space.');
}
// Send an onboarding message when added to a Chat space
if (req.body.type === 'ADDED_TO_SPACE') {
res.json({
'text': 'Hi, Cymbal at your service. I help you manage your calendar
from Google Chat. Take a look at your schedule today by typing
`/checkCalendar`, or schedule a meeting with `/scheduleMeeting`. To
learn what else I can do, type `/help`.'
});
}
};
Apps Script
/**
* Sends an onboarding message when the Chat app is added to a space.
*
* @param {Object} event The event object from Chat API.
* @return {Object} Response from the Chat app. An onboarding message that
* introduces the app and helps people get started with it.
*/
function onAddToSpace(event) {
return {
'text': 'Hi, Cymbal at your service. I help you manage your calendar
from Google Chat. Take a look at your schedule today by typing
`/checkCalendar`, or schedule a meeting with `/scheduleMeeting`. To learn
what else I can do, type `/help`.'
}
}
Mã mẫu sẽ trả về tin nhắn văn bản sau:
Các ví dụ khác về phản hồi tương tác
Để tạo phản hồi đồng bộ cho các sự kiện tương tác, hãy xem các bước sau hướng dẫn:
- Thiết lập lệnh dấu gạch chéo
- Mở hộp thoại tương tác
- Đường liên kết đến bản xem trước
- Xử lý thông tin do người dùng gửi
Phản hồi không đồng bộ
Đôi khi, các ứng dụng trong Chat phải phản hồi một sự kiện tương tác sau 30 giờ giây hoặc thực hiện tác vụ bên ngoài không gian nơi sự kiện tương tác diễn ra tạo. Ví dụ: một ứng dụng Chat có thể cần phản hồi người dùng sau khi hoàn tất một tác vụ chạy trong thời gian dài. Trong trường hợp này, Các ứng dụng trong Chat có thể phản hồi không đồng bộ bằng cách gọi API Google Chat.
Để tạo tin nhắn bằng API Chat, hãy xem Tạo thông báo. Để được hướng dẫn sử dụng các phương thức API Chat khác, hãy xem Tổng quan về Chat API.
Chủ đề có liên quan
- Gửi tin nhắn
- Mở hộp thoại tương tác
- Đường liên kết đến bản xem trước
- Đọc dữ liệu biểu mẫu do người dùng nhập trên thẻ
- Phản hồi lệnh dấu gạch chéo
- Tạo trang chủ cho ứng dụng Chat
- Xác minh yêu cầu của Chat
- Kiểm thử các tính năng có tính tương tác cho các ứng dụng của Google Chat