Trang này giải thích cách xây dựng một ứng dụng Google Chat dưới dạng Tiện ích bổ sung Google Workspace sử dụng Dialogflow ES để hiểu và phản hồi ngôn ngữ tự nhiên. Bạn cũng có thể sử dụng Dialogflow CX (tích hợp trực tiếp với Google Chat) để xây dựng một ứng dụng Google Chat bằng Dialogflow CX bằng cách làm theo hướng dẫn về ứng dụng Google Chat bằng Dialogflow CX.
Mục tiêu
- Thiết lập môi trường.
- Tạo và triển khai một nhân viên hỗ trợ ảo Dialogflow ES.
- Tạo và triển khai một ứng dụng Chat do nhân viên hỗ trợ ảo Dialogflow ES cung cấp.
- Kiểm thử ứng dụng Chat.
Điều kiện tiên quyết
- Một tài khoản Google Workspace dành cho doanh nghiệp hoặc doanh nghiệp có quyền truy cập vào Google Chat.
- Một dự án trên Google Cloud đã bật tính năng thanh toán. Để kiểm tra xem một dự án hiện có đã bật tính năng thanh toán hay chưa, hãy xem bài viết Xác minh trạng thái thanh toán của dự án. Để tạo một dự án và thiết lập tính năng thanh toán, hãy xem bài viết Tạo một dự án trên Google Cloud.
Kiến trúc
Sơ đồ sau đây cho thấy kiến trúc của một ứng dụng Chat được xây dựng bằng Dialogflow:
Trong sơ đồ trước, một người dùng tương tác với ứng dụng Chat bằng Dialogflow có luồng thông tin như sau:
- Người dùng gửi tin nhắn trong Chat đến một ứng dụng Chat, thông qua tin nhắn trực tiếp hoặc trong một không gian trên Chat.
- Một nhân viên hỗ trợ ảo Dialogflow nằm trong , nhận và xử lý tin nhắn để tạo ra một câu trả lời.
- Tuỳ ý, bằng cách sử dụng a webhook Dialogflow, nhân viên hỗ trợ ảo Dialogflow có thể tương tác với các dịch vụ bên thứ ba bên ngoài, chẳng hạn như hệ thống quản lý dự án hoặc công cụ tạo phiếu yêu cầu hỗ trợ.
- Nhân viên hỗ trợ ảo Dialogflow gửi câu trả lời trở lại dịch vụ ứng dụng Chat trong Chat.
- Câu trả lời được gửi đến phòng Chat.
Thiết lập môi trường
Trước khi sử dụng API của Google, bạn cần bật các API đó trong một dự án trên Google Cloud. Bạn có thể bật một hoặc nhiều API trong một dự án trên Google Cloud.Trong Google API Console, hãy bật API Google Chat và API Dialogflow.
Xác nhận rằng bạn đang bật các API trong dự án trên đám mây chính xác, sau đó nhấp vào Tiếp theo.
Xác nhận rằng bạn đang bật các API chính xác, sau đó nhấp vào Bật.
Tạo một nhân viên hỗ trợ ảo Dialogflow ES
Nếu bạn không có nhân viên hỗ trợ ảo Dialogflow ES hiện có:
- Chuyển đến Bảng điều khiển Dialogflow ES.
- Nhấp vào Tạo nhân viên hỗ trợ ảo.
- Đặt tên, chọn ngôn ngữ mặc định và múi giờ.
- Liên kết với dự án trên đám mây của bạn.
- Nhấp vào Tạo.
- Xây dựng ý định và thực thể theo nhu cầu cho luồng đàm thoại của ứng dụng Chat. Bạn có thể bắt đầu bằng một ý định chào hỏi.
- Ghi lại Mã dự án.
Để biết hướng dẫn chi tiết, hãy xem bài viết Xây dựng nhân viên hỗ trợ ảo.
Tạo một ứng dụng Chat và kết nối ứng dụng đó với nhân viên hỗ trợ ảo Dialogflow
Sau khi tạo một nhân viên hỗ trợ ảo Dialogflow ES, hãy làm theo các bước sau để biến nhân viên hỗ trợ ảo đó thành một ứng dụng Chat:
Trong Google API Console, hãy chuyển đến API Google Chat. Tìm kiếm "Google Chat API" rồi nhấp vào Google Chat API, sau đó nhấp vào Quản lý.
Nhấp vào Cấu hình rồi thiết lập ứng dụng Chat:
- Trong Tên ứng dụng, hãy nhập
Dialogflow App. - Trong URL hình đại diện, hãy nhập
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png. - Trong Nội dung mô tả, hãy nhập
Responds to real human conversation. - Trong phần Chức năng, hãy chọn Tham gia không gian và cuộc trò chuyện nhóm.
- Trong phần Cài đặt kết nối, hãy chọn Dialogflow.
- Trong phần Cài đặt Dialogflow, hãy chọn Dialogflow ES.
- Make this Chat app available to specific people and groups (Cho phép ứng dụng Chat này hoạt động cho những người và nhóm cụ thể) trong miền của bạn rồi nhập địa chỉ email của bạn.
- Trong phần Nhật ký, hãy chọn Ghi lỗi vào Cloud Logging.
- Trong Tên ứng dụng, hãy nhập
Nhấp vào Lưu.
Ứng dụng Chat đã sẵn sàng nhận và phản hồi tin nhắn trên Chat.
Kiểm thử ứng dụng Chat
Kiểm thử ứng dụng Chat bằng Dialogflow ES bằng cách nhắn tin cho ứng dụng đó trong Google Chat.
Mở Google Chat bằng tài khoản Google Workspace mà bạn đã cung cấp khi thêm chính mình làm người kiểm thử đáng tin cậy.
- Nhấp vào Cuộc trò chuyện mới.
- Trong trường Thêm 1 người trở lên, hãy nhập tên ứng dụng Chat của bạn.
Chọn ứng dụng Chat trong kết quả. Một tin nhắn trực tiếp sẽ mở ra.
Trong tin nhắn trực tiếp mới với ứng dụng, hãy nhập
Hellorồi nhấnenter.Ứng dụng Chat bằng Dialogflow sẽ phản hồi bằng một tin nhắn chào hỏi.
Tin nhắn phản hồi
Tin nhắn phản hồi được gửi đến Google Chat dưới dạng Tin nhắn văn bản. Với định dạng này, bạn có thể in đậm hoặc in nghiêng văn bản bằng cách đặt văn bản trong một số ký hiệu (markdown light).
Tin nhắn phản hồi văn bản có hình thức giống như Tin nhắn phản hồi văn bản mặc định trong Bảng điều khiển Dialogflow. Tuy nhiên, phản hồi API thô sẽ có hình thức hơi khác. Phản hồi này cũng đặt cấu hình nền tảng thành GOOGLE_HANGOUTS, có thể hữu ích khi xây dựng nhân viên hỗ trợ ảo cho nhiều tính năng tích hợp.
"fulfillmentMessages": [
{
"text": {
"text": [
"This is a test."
]
},
"platform": "GOOGLE_HANGOUTS"
},
Thẻ
Tin nhắn phản hồi dạng thẻ được gửi đến Google Chat dưới dạng Tin nhắn dạng thẻ.
Hình ảnh
Tin nhắn phản hồi dạng hình ảnh được gửi đến Google Chat dưới dạng Tiện ích hình ảnh của Google Chat.
Tải trọng tuỳ chỉnh
Để gửi các loại tin nhắn khác của Google Chat, bạn có thể sử dụng tải trọng tuỳ chỉnh.
Tải trọng tuỳ chỉnh của Google Chat cho phép bạn tạo các thẻ nâng cao hơn. Một thẻ có thể có một hoặc nhiều phần. Mỗi phần có thể có một tiêu đề. Bạn có thể xem hướng dẫn tham khảo về cách tiện ích bổ sung Google Workspace mở rộng thẻ Chat để xem một số tổ hợp mà bạn có thể tạo bằng cách này. Tuy nhiên, việc sử dụng tải trọng tuỳ chỉnh có nghĩa là bạn sẽ phải cung cấp định dạng JSON.
Dưới đây là ví dụ về tải trọng tuỳ chỉnh để tạo một tin nhắn có thẻ:
{ "hangouts": { "hostAppDataAction": { "chatDataAction": { "createMessageAction": { "message": { "cardsV2": [{ "cardId": "pizza", "card": { "header": { "title": "Pizza Delivery Customer Support", "subtitle": "pizzadelivery@example.com", "imageUrl": "https://goo.gl/aeDtrS" }, "sections": [{ "widgets": [{ "textParagraph": { "text": " Your pizza is here!" }}]}] } }]}} }}}}
Giới hạn và lưu ý
- Khi sử dụng tiện ích bổ sung Google Workspace với Dialogflow, các đối tượng sự kiện Chat
có những giới hạn và lưu ý sau:
- Sự kiện Trang chủ ứng dụng: Hiện chưa hỗ trợ sự kiện
APP_HOME. - Truy vấn đầu vào Dialogflow: Văn bản được gửi dưới dạng truy vấn đầu vào đến nhân viên hỗ trợ ảo Dialogflow phụ thuộc vào loại sự kiện:
MESSAGE: Giá trị của trườngargumentTexttừ tin nhắn Chat.APP_COMMAND: Chuỗi"APP_COMMAND_PAYLOAD".ADDED_TO_SPACE: Một sự kiện chào mừng mặc định được gửi.REMOVED_FROM_SPACE: Chuỗi"REMOVED_FROM_SPACE_PAYLOAD".CARD_CLICKED: Chuỗi"BUTTON_CLICKED_PAYLOAD".WIDGET_UPDATED: Chuỗi"WIDGET_UPDATED_PAYLOAD"(dùng cho tính năng tự động hoàn thành).
- Tải trọng sự kiện đầy đủ: Tải trọng JSON đầy đủ của sự kiện tương tác trên Chat được gửi đến Dialogflow trong trường
WebhookRequest.payload. Bạn có thể truy cập vào phần này trong webhook Dialogflow. Để biết thêm thông tin, hãy xem tài liệu về yêu cầu webhook Dialogflow ES.
- Sự kiện Trang chủ ứng dụng: Hiện chưa hỗ trợ sự kiện
- Lưu ý khi phản hồi các
lệnh và
nhận dữ liệu từ thẻ hoặc hộp thoại:
- Nếu cần xử lý tải trọng JSON của sự kiện tương tác trên Chat, nhân viên hỗ trợ ảo Dialogflow có thể thực hiện việc này bằng cách sử dụng webhook Dialogflow để kiểm tra tải trọng tuỳ chỉnh trong tham số truy vấn.
- Để hiển thị một hộp thoại từ
Nhân viên hỗ trợ ảo Dialogflow, hãy phản hồi bằng một tải trọng JSON tuỳ chỉnh duy nhất
chứa một
RenderActionsđối tượng có tính năng điều hướngpushCard. - Để xử lý dữ liệu được nhập từ thẻ, bạn có thể sử dụng một webhook Dialogflow và phản hồi bằng một tải trọng JSON tuỳ chỉnh duy nhất chứa hành động thích hợp.
- Không hỗ trợ bản xem trước đường liên kết.
- Nếu nhân viên hỗ trợ ảo Dialogflow chỉ phản hồi bằng một tin nhắn, thì tin nhắn đó sẽ được gửi đến Google Chat một cách đồng bộ. Nếu nhân viên hỗ trợ ảo Dialogflow phản hồi
bằng nhiều tin nhắn, thì tất cả tin nhắn sẽ được gửi đến Chat
một cách không đồng bộ bằng cách gọi
createphương thức trên tài nguyênspaces.messagestrong API Chat một lần cho mỗi tin nhắn. - Khi sử dụng tính năng tích hợp Dialogflow ES với Chat, bạn phải thiết lập tác nhân Dialogflow và ứng dụng Chat trong cùng một dự án trên Google Cloud.
Khắc phục sự cố
Để gỡ lỗi ứng dụng Chat, hãy bắt đầu bằng cách xem xét nhật ký lỗi. Vì ứng dụng này sử dụng Dialogflow, nên bạn có một số tài nguyên ghi nhật ký và khắc phục sự cố:
Nhật ký tiện ích bổ sung Google Workspace: Nhật ký truy vấn để biết thông tin chi tiết về hành vi của tiện ích bổ sung, bao gồm cả các tương tác của tiện ích bổ sung với Chat. Xem bài viết Nhật ký truy vấn cho Tiện ích bổ sung Google Workspace.
Lỗi ứng dụng Google Chat: Để biết các thông báo lỗi và cách khắc phục lỗi chung của ứng dụng Chat, hãy tham khảo bài viết Khắc phục sự cố và sửa lỗi ứng dụng Chat.
Nhật ký cuộc trò chuyện Dialogflow ES: Nhật ký | Dialogflow ES
Khắc phục sự cố chung về Dialogflow: Khắc phục sự cố | Dialogflow
Dọn dẹp
Để tránh bị tính phí cho tài khoản của bạn đối với các tài nguyên được sử dụng trong hướng dẫn này, bạn nên xoá dự án trên đám mây.
- Trong Google API Console, hãy chuyển đến trang Quản lý tài nguyên. Nhấp vào Trình đơn > IAM và quản trị > Quản lý tài nguyên.
- Trong danh sách dự án, hãy chọn dự án mà bạn muốn xoá rồi nhấp vào biểu tượng Xoá .
- Trong hộp thoại, hãy nhập mã dự án rồi nhấp vào Tắt để xoá dự án.
Chủ đề có liên quan
- Dialogflow CX là một cách khác để sử dụng Dialogflow với ứng dụng Chat.