Tạo một ứng dụng Google Chat cho dự án Dialogflow CX có khả năng hiểu và phản hồi bằng ngôn ngữ tự nhiên

Trang này giải thích cách tạo một ứng dụng Google Chat có thể hiểu và phản hồi bằng ngôn ngữ tự nhiên bằng cách sử dụng Dialogflow. Hướng dẫn này sử dụng Dialogflow CX, tích hợp trực tiếp với Google Chat. Bạn cũng có thể sử dụng Dialogflow ES để tạo ứng dụng Google Chat Dialogflow ES bằng cách làm theo hướng dẫn Dialogflow ES Google Chat.

Ví dụ: hãy xem xét một ứng dụng Chat giúp mọi người thuê ô tô. Người dùng có thể viết: "Tôi muốn thuê một chiếc xe ô tô". Ứng dụng Chat có thể trả lời bằng một câu hỏi như "Bạn muốn nhận xe ở đâu?" Khi đó, ứng dụng Chat sẽ bắt đầu một cuộc trò chuyện giống như con người với người dùng, trong đó ứng dụng Chat có thể hiểu và trả lời bằng lời nói của con người khi đặt thuê xe.

Đây chỉ là một ví dụ. Ứng dụng Chat của Dialogflow rất hữu ích trong mọi loại tương tác. Nếu yêu cầu lời nói tự nhiên của con người, thì ứng dụng sẽ gọi ứng dụng Chat của Dialogflow. Trình đại diện tạo sẵn giúp bạn bắt đầu nhanh chóng và giới thiệu những gì Dialogflow có thể làm, chẳng hạn như:

  • Đặt vé máy bay
  • Đặt lịch hẹn với bác sĩ
  • Đặt giao đồ ăn
  • Trả lời các câu hỏi về danh mục sản phẩm bán lẻ, chẳng hạn như liệu các mặt hàng có có màu khác không
  • Trang chọn nhân viên hỗ trợ Dialogflow tạo sẵn.
    Hình 1. Chọn một nhân viên hỗ trợ tạo sẵn cho ứng dụng Chat của Dialogflow.
  • Kiểm thử tác nhân trong Dialogflow CX.
    Hình 2. Kiểm thử trợ lý trong Dialogflow CX để đảm bảo logic và cấu hình của trợ lý hoạt động như dự kiến. Sơ đồ này cho thấy một tập hợp các trang theo chủ đề liên quan đến các bước cụ thể trong cuộc trò chuyện, chẳng hạn như đặt vị trí lấy và trả xe cho một chiếc xe thuê, đồng thời định cấu hình logic kết nối các trang đó. Cuộc trò chuyện được kiểm thử trong một trình mô phỏng.
  • Định cấu hình ứng dụng Chat Dialogflow.
    Hình 3. Định cấu hình ứng dụng Chat để xử lý các phản hồi bằng cách sử dụng tác nhân CX Dialogflow trên trang cấu hình Chat API trong Google Cloud Console.
  • Kiểm thử ứng dụng Chat của Dialogflow CX
    Hình 4. Trò chuyện về việc đặt xe thuê bằng ứng dụng Chat của Dialogflow trong Google Chat.

Mục tiêu

  • Thiết lập môi trường.
  • Tạo và triển khai một tác nhân Dialogflow CX.
  • Tạo và triển khai ứng dụng Chat do tác nhânDialogflow CX hỗ trợ.
  • Kiểm thử ứng dụng Chat.

Điều kiện tiên quyết

Kiến trúc

Sơ đồ sau đây cho thấy cấu trúc của một ứng dụng Chat được tạo bằng Dialogflow:

Cấu trúc của một ứng dụng trong Chat được triển khai bằng Dialogflow.

Trong sơ đồ trước, người dùng tương tác với ứng dụng Chat của Dialogflow có luồng thông tin sau:

  1. Người dùng gửi tin nhắn trong Chat đến một ứng dụng Chat, trong tin nhắn trực tiếp hoặc trong một không gian Chat.
  2. Một nhân viên hỗ trợ ảo Dialogflow (nằm trong Google Cloud) sẽ nhận và xử lý thông báo để tạo phản hồi.
  3. Nếu muốn, bằng cách sử dụng webhook Dialogflow, tác nhân 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ợ.
  4. Tác nhân Dialogflow sẽ gửi phản hồi trở lại dịch vụ ứng dụng Chat trong Chat.
  5. Phản hồi được gửi đến phòng Chat.

Thiết lập môi trường

Trước khi sử dụng các API của Google, bạn cần bật các API này 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 Google Cloud.
  1. Trong Google Cloud Console, hãy bật API Google Chat và API Dialogflow.

    Bật API

  2. Xác nhận rằng bạn đang bật các API trong đúng dự án trên Google Cloud, sau đó nhấp vào Tiếp theo.

  3. Xác nhận rằng bạn đang bật đúng API, sau đó nhấp vào Bật.

Tạo nhân viên hỗ trợ Dialogflow CX

Nhân viên hỗ trợ CX của Dialogflow là một nhân viên hỗ trợ ảo xử lý các cuộc trò chuyện đồng thời với người dùng cuối. Đây là mô-đun hiểu ngôn ngữ tự nhiên giúp hiểu được các sắc thái của ngôn ngữ con người. Dialogflow dịch văn bản của người dùng cuối trong cuộc trò chuyện thành dữ liệu có cấu trúc mà ứng dụng và dịch vụ của bạn có thể hiểu được. Bạn thiết kế và xây dựng một nhân viên hỗ trợ Dialogflow để xử lý các loại cuộc trò chuyện cần thiết cho hệ thống của mình.

Nhân viên hỗ trợ Dialogflow giống như nhân viên hỗ trợ của trung tâm cuộc gọi. Bạn sẽ huấn luyện cả hai cách xử lý các tình huống trò chuyện dự kiến và chương trình huấn luyện của bạn không cần phải quá rõ ràng.

Dưới đây là cách tạo nhân viên hỗ trợ Dialogflow CX:

  1. Trong bảng điều khiển Dialogflow CX, hãy mở Bảng điều khiển Dialogflow CX. Nhấp vào biểu tượng Trình đơn > Dialogflow CX.

    Chuyển đến bảng điều khiển Dialogflow CX

  2. Chọn một dự án Google Cloud. Để tìm dự án của mình, bạn có thể phải nhấp vào All (Tất cả) rồi tìm kiếm dự án đó.

  3. Giờ đây, bạn có thể chọn một tác nhân tạo sẵn hoặc tạo tác nhân của riêng mình. Nếu bạn muốn tìm hiểu chi tiết về việc tuỳ chỉnh tác nhân sau này, hãy chọn một trong các tác nhân tạo sẵn. Điều này cũng sẽ giúp bạn tìm hiểu về những việc mà tác nhân có thể làm.

    Để chọn một tác nhân tạo sẵn, hãy làm theo các bước sau:

    1. Nhấp vào Sử dụng tác nhân tạo sẵn.
    2. Chọn một tác nhân tạo sẵn. Đối với hướng dẫn này, hãy chọn Du lịch: thuê xe.

      Nhân viên hỗ trợ được đánh giá là mới bắt đầu, trung cấp hoặc nâng cao dựa trên số lượng tính năng mà nhân viên hỗ trợ sử dụng và mức độ phức tạp của logic trò chuyện. Việc chọn một tác nhân trung cấp hoặc nâng cao có thể yêu cầu các tuỳ chỉnh và chế độ cài đặt dành riêng cho tác nhân, bao gồm cả việc bật các tính năng và API trong Google Cloud Console.

    3. Nhấp vào Nhập dưới dạng người đại diện.

    Để tạo tác nhân của riêng bạn, hãy làm theo các bước sau:

    1. Nhấp vào Tạo nhân viên hỗ trợ.
    2. Chọn Tự động tạo để tạo trình đại diện kho dữ liệu hoặc chọn Tạo của riêng bạn để tạo các loại trình đại diện khác.

    Để xem hướng dẫn chi tiết về quy trình xây dựng nhân viên hỗ trợ, hãy xem bài viết Tạo nhân viên hỗ trợ Dialogflow CX.

  4. Định cấu hình các chế độ cài đặt cơ bản của tác nhân:

    1. Trong mục Tên hiển thị, hãy nhập tên hiển thị.
    2. Chọn vị trí mà bạn muốn. Nếu bạn muốn thay đổi chế độ cài đặt vị trí nâng cao, hãy nhấp vào Chỉnh sửa.
    3. Chọn múi giờ bạn muốn.
    4. Chọn ngôn ngữ mặc định cho nhân viên hỗ trợ. Bạn không thể thay đổi ngôn ngữ mặc định cho nhân viên hỗ trợ sau khi tạo.
  5. Nhấp vào Tạo. Dialogflow CX bắt đầu tạo trợ lý, sau đó hiện quy trình bắt đầu mặc định của trợ lý.

  6. Tuỳ ý tuỳ chỉnh tác nhân. Để biết hướng dẫn chi tiết về quy trình tuỳ chỉnh nhân viên hỗ trợ, hãy xem phần Tạo nhân viên hỗ trợ Dialogflow CX.

  7. Phương pháp hay nhất là kiểm thử tác nhân:

    1. Nhấp vào Trình tác nhân kiểm thử.
    2. Chọn Test agent in environment (Trình kiểm thử trong môi trường).
    3. Trong Môi trường, hãy chọn Bản nháp.
    4. Trong Flow, hãy chọn Default Start Flow (Luồng bắt đầu mặc định).
    5. Trong trang, chọn Trang chủ.
    6. Trong thanh soạn thư Talk to agent (Trò chuyện với nhân viên hỗ trợ), hãy nhập Hello rồi nhấn Enter. Trợ lý trả lời bằng cách tự giới thiệu.
    7. Hoàn thành bài kiểm thử bằng cách thực hiện cuộc trò chuyện kiểm thử mẫu.
  8. Nhân viên hỗ trợ Dialogflow CX đã được tạo. Quay lại bảng điều khiển Dialogflow CX. Nhấp vào biểu tượng Trình đơn > Dialogflow CX.

    Chuyển đến bảng điều khiển CX của Dialogflow

  9. Trong mục Đại lý, hãy nhấp vào biểu tượng > Sao chép tên. Lưu tên này vì bạn sẽ sử dụng tên này khi định cấu hình ứng dụng Chat.

Tạo ứng dụng Chat và kết nối ứng dụng đó với trợ lý Dialogflow

Sau khi tạo một nhân viên hỗ trợ CX Dialogflow, hãy làm theo các bước sau để biến nhân viên hỗ trợ đó thành một ứng dụng Chat:

  1. Trong Google Cloud Console, hãy chuyển đến API Google Chat. Tìm "API Google Chat" rồi nhấp vào API Google Chat, sau đó nhấp vào Quản lý.

    Chuyển đến Chat API

  2. Nhấp vào Cấu hình rồi thiết lập ứng dụng Chat:

    1. Trong App name (Tên ứng dụng), hãy nhập Dialogflow App.
    2. Trong URL hình đại diện, hãy nhập https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png.
    3. Trong phần Description (Nội dung mô tả), hãy nhập Responds to real human conversation.
    4. Trong phần Chức năng, hãy chọn Nhận tin nhắn 1:1Tham gia không gian và cuộc trò chuyện nhóm.
    5. Trong phần Cài đặt kết nối, hãy chọn Dialogflow.
    6. Trong phần Cài đặt Dialogflow, hãy chọn Dialogflow CX.
    7. Trong Tên tài nguyên của nhân viên hỗ trợ hoặc môi trường, hãy dán tên nhân viên hỗ trợ Dialogflow CX mà bạn đã sao chép ở cuối phần Tạo nhân viên hỗ trợ Dialogflow CX.
    8. Cung cấp ứng dụng Chat này cho một số 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.
    9. Trong mục Nhật ký, hãy chọn Ghi lỗi vào nhật ký.
  3. Nhấp vào Lưu.

Ứng dụng Chat đã sẵn sàng nhận và trả lời tin nhắn trên Chat.

Kiểm thử ứng dụng Chat

Kiểm thử ứng dụng Chat Dialogflow CX bằng cách nhắn tin cho ứng dụng đó trong Google Chat.

  1. 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.

    Chuyển đến Google Chat

  2. Nhấp vào Cuộc trò chuyện mới.
  3. Trong trường Thêm 1 người trở lên, hãy nhập tên của ứng dụng Chat.
  4. Chọn ứng dụng Chat trong kết quả. Một tin nhắn trực tiếp sẽ mở ra.

  5. Trong tin nhắn trực tiếp mới với ứng dụng, hãy nhập Hello rồi nhấn enter.

    Ứng dụng Dialogflow Chat phản hồi bằng cách tự giới thiệu.

  6. Hoàn tất bài kiểm thử bằng cách thực hiện cuộc trò chuyện kiểm thử mẫu.

Cuộc trò chuyện kiểm thử mẫu

Để kiểm thử ứng dụng Chat Dialogflow CX trong bảng điều khiển Dialogflow CX hoặc trong Google Chat, hãy thực hiện cuộc trò chuyện sau. Nội dung giải thích này giúp bạn hiểu cách nhân viên hỗ trợ CX của Dialogflow diễn giải ngôn ngữ tự nhiên của người dùng và tạo câu trả lời bằng ngôn ngữ tự nhiên của riêng mình ở mỗi bước trong cuộc trò chuyện. Cuộc trò chuyện mẫu này dựa trên trình tự động được tạo sẵn có tên là Du lịch: thuê ô tô.

Hộp thoại Giải thích
Người dùng cuối: Xin chào
Nhân viên hỗ trợ: Xin chào! Tôi là nhân viên hỗ trợ ảo về dịch vụ cho thuê ô tô. Tôi có thể giúp bạn bắt đầu đặt thuê xe ô tô mới. Hôm nay, tôi có thể hỗ trợ gì cho bạn?
  1. Tuyến Ý định chào mừng mặc định trong Luồng bắt đầu mặc định sẽ được gọi.
  2. Phương thức thực hiện cho trình xử lý trạng thái này ("Xin chào! Tôi...") sẽ được thêm vào hàng đợi phản hồi.
  3. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
Người dùng cuối: Tôi muốn thuê xe.
Nhân viên hỗ trợ: Bạn muốn đến lấy xe ở đâu?
  1. Tuyến ý định car_rental.reservation_create trong Trang bắt đầu được so khớp.
  2. Phiên chuyển đổi sang trang Vị trí đến lấy hàng.
  3. Biểu mẫu trang Pickup Location (Vị trí lấy hàng) chưa hoàn tất, vì vậy, tác nhân sử dụng tham số pickup_location để nhắc người dùng ("Where would you like to pick up..." (Bạn muốn lấy hàng ở đâu?)) được thêm vào hàng đợi phản hồi.
  4. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
Người dùng cuối: Las Vegas
Nhân viên hỗ trợ: Được rồi, bạn sẽ nhận được hàng tại Las Vegas.
Nhân viên hỗ trợ: Địa điểm trả hàng của bạn có khác với địa điểm lấy hàng không?
  1. Dữ liệu đầu vào của người dùng cuối sẽ điền vào tham số pickup_location mà nhân viên hỗ trợ yêu cầu ở lượt trò chuyện trước.
  2. Tuyến ý định car_rental.return_different_location trong Luồng bắt đầu mặc định được so khớp.
  3. Tuyến hoàn tất biểu mẫu trong trang Pickup Location (Vị trí lấy hàng) được đánh giá và gọi. Lệnh này có một phương thức thực hiện ("Ok, your pickup..."), được thêm vào hàng đợi phản hồi với các tham chiếu tham số được phân giải thành giá trị thực tế do người dùng cuối cung cấp.
  4. Phiên sẽ chuyển sang trang Xác nhận vị trí.
  5. Trang Xác nhận vị trí có phương thức thực hiện mục nhập ("Địa điểm trả khách có khác..."), được thêm vào hàng đợi phản hồi.
  6. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
Người dùng cuối: Có. Tôi sẽ gửi xe ở Los Angeles.
Nhân viên hỗ trợ: Ok, điểm đến của bạn là Los Angeles.
Nhân viên hỗ trợ: Bạn muốn đến lấy xe vào ngày và giờ nào?
  1. Tuyến ý định car_rental.return_different_location trong Luồng bắt đầu mặc định được so khớp.
  2. Phiên chuyển đổi sang trang Vị trí thả xuống.
  3. Dữ liệu đầu vào của người dùng cuối sẽ điền vào tham số drop_off_location mà nhân viên hỗ trợ yêu cầu ở lượt trò chuyện trước.
  4. Tuyến hoàn tất biểu mẫu trong trang Vị trí trả xe được đánh giá và gọi. Lệnh này có một phương thức thực hiện ("Ok, your drop off...") được thêm vào hàng đợi phản hồi.
  5. Phiên sẽ chuyển sang trang Rental Duration (Thời hạn thuê).
  6. Trang Thời hạn thuê có các giá trị biểu mẫu chưa hoàn chỉnh, vì vậy, trang này sẽ nhắc người dùng nhập thông số pickup_date_time ("Bạn muốn lấy xe vào ngày và giờ nào?"), được thêm vào hàng đợi phản hồi.
  7. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
Người dùng cuối: Tôi muốn đến lấy xe vào trưa ngày 5 tháng 3.
Nhân viên hỗ trợ: Bạn muốn trả xe vào ngày và giờ nào?
  1. Dữ liệu đầu vào của người dùng cuối sẽ điền vào tham số pickup_date_time mà nhân viên hỗ trợ yêu cầu ở lượt trò chuyện trước.
  2. Trang Thời hạn thuê còn thiếu một giá trị khác trên biểu mẫu, vì vậy, trang này sẽ nhắc người dùng nhập thông số drop_off_date_time ("Bạn muốn trả xe vào ngày và giờ nào..."), được thêm vào hàng đợi phản hồi.
  3. Nhân viên hỗ trợ gửi hàng đợi phản hồi cho người dùng cuối.
Người dùng cuối: Trưa ngày 15 tháng 3.
Nhân viên hỗ trợ: Để xác nhận:

Bạn sẽ đến lấy xe ở Las Vegas 05/03/2024 12:00:00 và trả xe ở Los Angeles 15/03/2024 12:00:00

Đúng không?
  1. Thông tin đầu vào của người dùng cuối sẽ điền vào thông số drop_off_date_time mà nhân viên hỗ trợ yêu cầu trong lượt trò chuyện trước đó.
  2. Phiên chuyển đổi sang trang Xác nhận thời lượng thuê.
  3. Trang Xác nhận thời hạn thuê có một mục thực hiện mục nhập ("Vậy để xác nhận..."), được thêm vào hàng đợi phản hồi.
  4. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
Người dùng cuối: Đúng vậy, cảm ơn bạn.
Nhân viên hỗ trợ: Tuyệt vời! Bây giờ, hãy chọn một chiếc xe.
Nhân viên hỗ trợ: Bạn muốn mua xe hạng phổ thông hay sang trọng?
  1. Tuyến ý định small_Talk.cc.yes trên trang Xác nhận thời lượng cho thuê đã được so khớp.
  2. Nhân viên hỗ trợ xác nhận lựa chọn của người dùng bằng một thông báo ("Tuyệt! Bây giờ, hãy chọn..."), sẽ được thêm vào hàng đợi phản hồi.
  3. Phiên sẽ chuyển sang trang Phân biệt xe.
  4. Biểu mẫu trang Vehicle Disambiguation (Phân biệt xe) chưa hoàn chỉnh, vì vậy, tác nhân sử dụng thông số vehicle_type để nhắc người dùng ("Bạn muốn xe tiết kiệm hay xe sang trọng..."), được thêm vào hàng đợi phản hồi.
  5. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
Người dùng cuối: Vui lòng chọn loại hình tiết kiệm.
Nhân viên hỗ trợ: Bạn muốn mua xe ô tô hay xe tải có hình chũm choẹ?
  1. Tuyến ý định $session.params.vehicle_type="economy_vehicle" được so khớp.
  2. Phiên sẽ chuyển sang trang Economy Options (Tuỳ chọn tiết kiệm).
  3. Trang Economy Options (Tuỳ chọn tiết kiệm) có một mục thực hiện mục nhập ("Would you like the..." (Bạn có muốn... không?)) được thêm vào hàng đợi phản hồi.
  4. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
Người dùng cuối: Cymbal Truck.
Đại lý: Xe tải trống có giá 50,33 USD/ngày. Xe có thể chở 4 người và có đài AM/FM. Bạn có muốn tiếp tục thanh toán không?
Người dùng cuối: Vâng, vui lòng.
  1. Tuyến ý định $session.params.vehicle_type="Cymbal load" đã được so khớp và tham số vehicle_model được điền.
  2. Phiên sẽ chuyển sang trang Xác nhận xe trống.
  3. Trang Xác nhận xe tải Cymbal có phương thức thực hiện mục nhập ("Cymbal Xe tải có giá $50,33 mỗi ngày..."), được thêm vào hàng đợi phản hồi.
  4. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
  5. Phản hồi của người dùng khớp với tuyến đường small_talk.confirmation.yes.
Nhân viên hỗ trợ: Bạn sẽ sử dụng loại thẻ nào?
Người dùng cuối: Altostrat
Đại lý: Vui lòng nhập số thẻ.
Người dùng cuối: 1234 1234 1234 1234
Đại lý: Tên trên thẻ là gì?
Người dùng cuối: Charlie
Nhân viên hỗ trợ: Địa chỉ đường phố dùng để thanh toán là gì?
Người dùng cuối: 1800 Amphibious Blvd. Mountain View, CA
Đại lý: Mã bưu chính thanh toán là gì?
Người dùng cuối: 94045
Đại lý: Bạn sẽ nhận xe Cymbal Car tại Las Vegas vào lúc 12:00:00 ngày 5/3/2024 và trả xe vào lúc 12:00:00 ngày 15/3/2024. Tổng số tiền cho chuyến đi này sẽ là 175,38 USD.
Nhân viên hỗ trợ: Cảm ơn bạn đã thuê nhà qua chúng tôi. Chúc bạn một ngày tốt lành!
  1. Phiên sẽ chuyển sang trang Thanh toán.
  2. Biểu mẫu Thanh toán chưa hoàn tất nên nhân viên hỗ trợ sẽ nhắc người dùng nhập các tham số card_type, card_number, billing_name, billing_street_addressbilling_zip_code ("Loại thẻ sẽ..."), được thêm tuần tự vào hàng đợi phản hồi và gửi khi người dùng phản hồi. Các câu trả lời của người dùng đặt ra từng giá trị thông số.
  3. Phiên sẽ chuyển sang trang Xác nhận thuê.
  4. Trang Xác nhận thuê có một mục thực hiện mục nhập ("Ok, bạn sẽ đến lấy xe vào..."), sẽ được thêm vào hàng đợi phản hồi.
  5. Tác nhân gửi hàng đợi phản hồi đến người dùng cuối.
  6. Phiên sẽ chuyển sang trang Kết thúc phiên.

Gửi tin nhắn dạng thẻ từ Dialogflow

Dialogflow có thể phản hồi bằng tin nhắn văn bản hoặc thẻ. Để phản hồi bằng thông báo thẻ, hãy chỉ định thông báo đó làm tải trọng tuỳ chỉnh trong thực hiện đơn hàng.

JSON sau đây cho biết cách gửi thông báo thẻ dưới dạng tải trọng tuỳ chỉnh trong quá trình thực hiện:

JSON

{
  'cardsV2': [{
    'cardId': 'createCardMessage',
    'card': {
      'header': {
        'title': 'A card message!',
        'subtitle': 'Sent from Dialogflow',
        'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
        'imageType': 'CIRCLE'
      },
      'sections': [
        {
          'widgets': [
            {
              'buttonList': {
                'buttons': [
                  {
                    'text': 'Read the docs!',
                    'onClick': {
                      'openLink': {
                        'url': 'https://developers.google.com/workspace/chat'
                      }
                    }
                  }
                ]
              }
            }
          ]
        }
      ]
    }
  }]
}

Giới hạn và cân nhắc

  • Sự kiện tương tác trong cuộc trò chuyện chỉ được hỗ trợ hạn chế và bạn cần cân nhắc một số điểm sau:
    • Các loại sự kiện tương tác sau đây được hỗ trợ:
      • MESSAGE
      • ADDED_TO_SPACE
      • CARD_CLICKED
    • Đối với các sự kiện MESSAGE hoặc ADDED_TO_SPACE, dữ liệu đầu vào của truy vấn gửi đến tác nhânDialogflow tương ứng với giá trị của trường argumentText trong tin nhắn trong Chat. Nếu thông báo có chứa lệnh gạch chéo, thì giá trị của trường text sẽ được sử dụng.
    • Đối với các sự kiện CARD_CLICKED, dữ liệu đầu vào truy vấn được gửi đến tác nhân Dialogflow được định dạng là CARD_CLICKED.functionName, trong đó functionName tương ứng với giá trị của trường function của đối tượng Action (Hành động) được đính kèm vào phần tử thẻ tương tác (chẳng hạn như nút).
    • Tải trọng JSON đầy đủ của mỗi sự kiện tương tác trong Chat được gửi đến Dialogflow dưới dạng tải trọng tuỳ chỉnh trong tham số truy vấn và có thể truy cập bằng webhook Dialogflow bằng cách truy vấn giá trị của trường WebhookRequest.payload.
  • Những điều cần cân nhắc khi phản hồi lệnh dấu gạch chéonhận dữ liệu từ thẻ hoặc hộp thoại:
    • Khi ứng dụng Dialogflow Chat nhận được một thông báo có lệnh dấu gạch chéo, dữ liệu đầu vào của truy vấn chỉ chứa giá trị của trường text. Trường text bắt đầu bằng tên của lệnh dấu gạch chéo (ví dụ: /command). Bạn có thể sử dụng trường này để định cấu hình ý định của tác nhân Dialogflow nhằm phát hiện lệnh dấu gạch chéo.
    • Nếu cần xử lý trọng tải JSON của sự kiện tương tác trò chuyện, thì tác nhân Dialogflow có thể thực hiện việc này bằng cách sử dụng webhook Dialogflow để kiểm tra trọng tải tuỳ chỉnh trong tham số truy vấn.
    • Để hiển thị một hộp thoại từ Tác nhânDialogflow, hãy phản hồi bằng một tải trọng JSON tuỳ chỉnh duy nhất có chứa thông báo chứa phản hồi hành động DIALOG.
    • Để xử lý dữ liệu được nhập từ thẻ, tác nhân Dialogflow có thể phát hiện các ý định bắt đầu bằng văn bản CARD_CLICKED và phản hồi bằng một tải trọng JSON tuỳ chỉnh duy nhất chứa thao tác thích hợp.
  • Không hỗ trợ bản xem trước đường liên kết.
  • Nếu tác nhân Dialogflow chỉ phản hồi bằng một tin nhắn, thì tin nhắn đó sẽ được gửi đồng bộ đến Google Chat. Nếu tác nhân 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 phương thức create trên tài nguyên spaces.messages trong 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 CX 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 Google Cloud. Nếu cần thiết lập Dialogflow và Chat trong các dự án khác nhau trên Google Cloud, bạn có thể thiết lập một máy chủ trung gian để hỗ trợ việc kết nối. Để tìm hiểu cách thực hiện, hãy xem ví dụ về cách tích hợp tính năng Trò chuyện cho trải nghiệm khách hàng Dialogflow trên GitHub.

Khắc phục sự cố

Khi ứng dụng Google Chat hoặc thẻ trả về lỗi, giao diện Chat sẽ hiển thị thông báo "Đã xảy ra lỗi". hoặc "Không thể xử lý yêu cầu của bạn". Đôi khi, giao diện người dùng Chat không hiển thị thông báo lỗi nào, nhưng ứng dụng Chat hoặc thẻ lại tạo ra kết quả không mong muốn; ví dụ: thông báo thẻ có thể không xuất hiện.

Mặc dù thông báo lỗi có thể không hiển thị trong giao diện người dùng Chat, nhưng bạn có thể xem thông báo lỗi mô tả và dữ liệu nhật ký để khắc phục lỗi khi bật tính năng ghi nhật ký lỗi cho ứng dụng Chat. Để được trợ giúp xem, gỡ lỗi và khắc phục lỗi, hãy xem bài viết Khắc phục và khắc phục lỗi Google Chat.

Dọn dẹp

Để tránh bị tính phí vào tài khoản Google Cloud cho những tài nguyên dùng trong hướng dẫn này, bạn nên xoá dự án Google Cloud đó.

  1. Trong Google Cloud Console, hãy chuyển đến trang Quản lý tài nguyên. Nhấp vào biểu tượng Trình đơn > IAM và quản trị > Quản lý tài nguyên.

    Chuyển đến Trình quản lý tài nguyên

  2. Trong danh sách dự án, hãy chọn dự án bạn muốn xoá rồi nhấp vào biểu tượng Xoá .
  3. Trong hộp thoại, hãy nhập mã dự án rồi nhấp vào Shut down (Tắt) để xoá dự án.
  • Dialogflow CX sử dụng phương pháp máy trạng thái để thiết kế tác nhân Dialogflow, giúp bạn kiểm soát rõ ràng và tường minh cuộc trò chuyện, mang lại trải nghiệm tốt hơn cho người dùng cuối và quy trình phát triển hiệu quả hơn. Khi tạo ứng dụng Trò chuyện bằng Dialogflow, bạn nên dùng Dialogflow CX.
    • Để tìm hiểu thêm về cách xây dựng và định cấu hình nhân viên hỗ trợ, hãy xem phần Dialogflow CX Agents.
    • Để xem hướng dẫn chi tiết về cách tạo và định cấu hình các tác nhân, hãy xem phần Tạo tác nhân Dialogflow CX.
    • Lớp học lập trình: Để biết ví dụ về cách tạo một tác nhân lưu trữ dữ liệu CX Dialogflow, hãy xem ứng dụng Chat kiến thức trong lớp học lập trình Tạo ứng dụng cho Google Chat bằng Gemini.
    • Lớp học lập trình: Để biết ví dụ về cách tạo một nhân viên hỗ trợ trò chuyện CX Dialogflow, hãy xem ứng dụng Chat phản hồi trong lớp học lập trình Tạo ứng dụng cho Google Chat bằng Gemini.
  • Dialogflow ES là một cách khác để sử dụng Dialogflow với ứng dụng Chat.