Trang này giải thích cách các ứng dụng Google Chat có thể gửi tin nhắn để phản hồi các hoạt động tương tác của người dùng.
-
Hình 1. A Ứng dụng Chat phản hồi lệnh dấu gạch chéo bằng tin nhắn văn bản và nút. -
Hình 2. Ứng dụng trò chuyện sẽ mở một hộp thoại để người dùng có thể nhập thông tin. -
Hình 5. Một ứng dụng Chat gửi tin nhắn có văn bản và thẻ tương tác.
Điều kiện tiên quyết
Node.js
Một tiện ích bổ sung của Google Workspace giúp mở rộng Google Chat. Để tạo một ứng dụng, hãy hoàn tất phần bắt đầu nhanh với HTTP.
Apps Script
Một tiện ích bổ sung của Google Workspace giúp mở rộng Google Chat. Để tạo một ứng dụng, hãy hoàn tất hướng dẫn bắt đầu nhanh với Apps Script.
Thiết kế thông báo
Ứng dụng trò chuyện có thể bao gồm bất kỳ nội dung nào sau đây trong một tin nhắn:
- Văn bản chứa siêu liên kết, @đề cập và biểu tượng cảm xúc.
- Một hoặc nhiều thẻ có thể xuất hiện trong một thông báo hoặc mở trong một cửa sổ mới dưới dạng hộp thoại.
- Một hoặc nhiều tiện ích bổ sung, là các nút xuất hiện sau bất kỳ văn bản hoặc thẻ nào trong một thông báo.
Để tìm hiểu về cách thiết kế tin nhắn, hãy xem tài liệu sau đây về API Google Chat:
- Tổng quan về tính năng nhắn tin
- Định dạng thư
- Tạo thẻ cho các ứng dụng Google Chat
- Thêm văn bản và hình ảnh vào thẻ
- Thêm các phần tử tương tác trên giao diện người dùng vào thẻ
Trả lời bằng tin nhắn
Các ứng dụng trò chuyện có thể phản hồi bằng một tin nhắn cho bất kỳ điều kiện kích hoạt hoặc tương tác nào sau đây:
- Điều kiện kích hoạt tin nhắn, chẳng hạn như khi người dùng @đề cập hoặc nhắn tin trực tiếp cho một ứng dụng Chat.
- Được thêm vào không gian kích hoạt, chẳng hạn như khi người dùng cài đặt ứng dụng Chat từ Google Workspace Marketplace hoặc thêm ứng dụng này vào một không gian.
- Số lượt nhấp vào nút trên thẻ trong tin nhắn hoặc hộp thoại. Ví dụ: khi người dùng nhập thông tin và nhấp vào nút gửi.
Nếu không, các ứng dụng Chat có thể chủ động gửi tin nhắn bằng cách gọi API Google Chat.
Để trả lời bằng một tin nhắn, hãy trả về thao tác DataActions
bằng một đối tượng CreateMessageAction
:
{ "hostAppDataAction": { "chatDataAction": { "createMessageAction": {
"message": MESSAGE
}}}
Thay thế MESSAGE bằng tài nguyên Message
từ API Chat. Để tìm hiểu thêm về cách hoạt động của các thao tác, hãy xem phần Thao tác trong Chat.
Trong ví dụ sau, một ứng dụng Chat sẽ tạo và gửi tin nhắn văn bản bất cứ khi nào ứng dụng đó được thêm vào một không gian. Để 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ào một không gian, ứng dụng Chat của bạn sẽ phản hồi sự kiện kích hoạt Đã thêm vào không gian bằng cách trả về thao tác DataActions
:
Node.js
/**
* Sends an onboarding message when the Chat app is added to a space.
*
* @param {Object} req The request object from Google Workspace add-on.
* @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.cymbalApp = function cymbalApp(req, res) {
const chatEvent = req.body.chat;
// Send an onboarding message when added to a Chat space
if (chatEvent.addedToSpacePayload) {
res.json({ hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
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 onAddedToSpace(event) {
return { hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
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 trả về thông báo văn bản sau:
Để xem thêm ví dụ về cách trả lời bằng tin nhắn, hãy xem các hướng dẫn sau:
- Phản hồi các lệnh nhanh
- Phản hồi lệnh dấu gạch chéo
- Mở hộp thoại tương tác
- Thu thập thông tin từ người dùng Google Chat
Cập nhật tin nhắn
Các ứng dụng trò chuyện cũng có thể cập nhật tin nhắn mà chúng gửi. Ví dụ: để cập nhật một thông báo sau khi người dùng đã gửi một hộp thoại hoặc nhấp vào một nút trong một thông báo.
Để cập nhật một thông báo của ứng dụng Chat, hãy trả về thao tác DataActions
bằng UpdateMessageAction
, như minh hoạ trong ví dụ sau:
{ "hostAppDataAction": { "chatDataAction": { "updateMessageAction": {
"message": MESSAGE
}}}}
Thay thế MESSAGE bằng tài nguyên Message
từ API Chat.
Để tìm hiểu thêm về cách hoạt động của các thao tác, hãy xem phần Thao tác trong Chat.
Các ứng dụng trò chuyện cũng có thể cập nhật tin nhắn của người dùng để trả về bản xem trước của đường liên kết mà họ đã gửi. Để biết thông tin chi tiết, hãy xem bài viết Xem trước đường liên kết trong tin nhắn trên Google Chat.
Trả lời các lượt tương tác hoặc gửi tin nhắn chủ động bằng Google Chat API
Thay vì trả về một thao tác của tiện ích bổ sung, các ứng dụng Chat có thể cần sử dụng Google Chat API để phản hồi một lượt tương tác. Ví dụ: Các ứng dụng Chat phải gọi Google Chat API để thực hiện bất kỳ thao tác nào sau đây:
- Gửi tin nhắn theo lịch hoặc về những thay đổi đối với tài nguyên bên ngoài. Ví dụ: thông báo về một vấn đề hoặc trường hợp mới.
- Trả lời sau hơn 30 giây kể từ khi có hoạt động tương tác. Ví dụ: để phản hồi bằng một thông báo sau khi hoàn thành một tác vụ chạy trong thời gian dài.
- Gửi tin nhắn bên ngoài không gian nơi diễn ra hoạt động tương tác.
- Thay mặt người dùng Chat gửi tin nhắn.
Để gửi tin nhắn bằng API Chat, bạn phải thiết lập quy trình xác thực và gọi phương thức create()
trên tài nguyên Message
. Để biết các bước, hãy xem phần Gửi tin nhắn bằng Google Chat API.
Chủ đề có liên quan
- Tạo giao diện Google Chat
- Phản hồi các lệnh nhanh
- Phản hồi lệnh dấu gạch chéo
- Mở hộp thoại tương tác
- Thu thập thông tin từ người dùng Google Chat
- Xem trước đường liên kết trong tin nhắn trên Google Chat
- Gửi tin nhắn bằng Google Chat API