Đơn vị:

Phản hồi lựa chọn trực quan (Dialogflow) Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

HaoHao

Thử các đoạn mã: Nhập, triển khai và khám phá các đoạn mã theo ngữ cảnh bằng cách sử dụng Nhân viên hỗ trợ dự án Dialogflow.

Tìm hiểu trong Dialogflow

Sử dụng phản hồi lựa chọn bằng hình ảnh nếu bạn muốn người dùng chọn một trong các mục sau một số lựa chọn để tiếp tục Hành động của bạn.

Phản hồi lựa chọn hình ảnh có thể xuất hiện trên các trải nghiệm chỉ có trên màn hình hoặc trên kết hợp cả thành phần âm thanh và màn hình.

Phản hồi lựa chọn hình ảnh có thể chứa các thành phần sau:

  • Một hoặc hai câu trả lời đơn giản (bong bóng trò chuyện).
  • Thẻ cơ bản không bắt buộc.
  • Khối đề xuất không bắt buộc.
  • Một khối liên kết ra (không bắt buộc).
  • Một giao diện tuỳ chọn như danh sách hoặc băng chuyền.

Bạn cũng có thể xem nguyên tắc thiết kế cuộc trò chuyện của chúng tôi để tìm hiểu cách kết hợp các thành phần hình ảnh này vào Hành động của bạn.

Thuộc tính

Phản hồi lựa chọn hình ảnh có những yêu cầu sau và không bắt buộc các thuộc tính mà bạn có thể định cấu hình:

  • Được hỗ trợ trên các nền tảng có chức năng actions.capability.SCREEN_OUTPUT.
  • Mục đầu tiên trong phản hồi lựa chọn hình ảnh phải là phản hồi đơn giản.
  • Tối đa một câu trả lời đơn giản.
  • Tối đa một thẻ cơ bản, giao diện tuỳ chọn (danh sách hoặc băng chuyền), hoặc StructuredResponse. (Bạn không thể vừa có thẻ cơ bản vừa có một lựa chọn giao diện cùng một lúc).
  • Tối đa 8 khối đề xuất.
  • Không được phép sử dụng khối đề xuất trong FinalResponse.

Các phần sau đây cho bạn biết cách tạo nhiều loại lựa chọn hình ảnh phản hồi.

Danh sách

Mẹo: Để được hướng dẫn thêm về cách sử dụng và tùy chỉnh danh sách, hãy xem hướng dẫn thiết kế danh sách.
Phản hồi lựa chọn trực quan (Dialogflow) Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Hình 1. Ví dụ về danh sách (điện thoại thông minh)

Danh sách chọn một mục sẽ cho người dùng thấy một danh sách dọc gồm nhiều mục và cho phép người dùng chọn một mục duy nhất. Chọn một mục trong danh sách tạo một truy vấn của người dùng (bong bóng trò chuyện) có chứa tiêu đề của mục trong danh sách.

Loại phản hồi danh sách được hỗ trợ trên các nền tảng có Chức năng actions.capability.SCREEN_OUTPUT.

Thuộc tính

Danh sách phải chứa tối thiểu 2 và tối đa 30 mục danh sách. Danh sách có các thuộc tính sau:

  • Tiêu đề danh sách (không bắt buộc)
    • Phông chữ và kích thước phông chữ cố định
    • Chỉ hiển thị trên một dòng. (Quá nhiều ký tự bị cắt ngắn.)
    • Văn bản thuần tuý, không hỗ trợ Markdown.
    • Chiều cao của thẻ sẽ thu gọn nếu bạn không chỉ định tiêu đề.
  • Mục danh sách
    • Tên sách
      • Phông chữ và kích thước phông chữ cố định
      • Độ dài tối đa: 1 dòng (được cắt bớt bằng dấu ba chấm...)
      • Bắt buộc phải là duy nhất (để hỗ trợ chọn giọng nói)
    • Nội dung mô tả (không bắt buộc)
      • Phông chữ và kích thước phông chữ cố định
      • Độ dài tối đa: 2 dòng (được cắt bớt bằng dấu ba chấm...)
    • Hình ảnh (không bắt buộc)
      • Kích thước: 48x48 px
  • Lần tương tác
    • Giọng nói/Văn bản
      • Người dùng luôn có thể nói hoặc nhập tiêu đề của một mục thay vì nhấn vào mục đó.
      • Phải có ý định nhập bằng cách chạm để xử lý Sự kiện actions_intent_OPTION.

Hướng dẫn

Đây là danh sách phù hợp khi cần phân biệt các lựa chọn hoặc khi cần phân biệt các lựa chọn người dùng cần chọn giữa các tuỳ chọn cần được quét nhanh. Ví dụ: "Peter" bạn cần nói chuyện với Peter Jons hay Peter Hans?

Bạn nên thêm các khối đề xuất bên dưới một danh sách để cho phép người dùng để chuyển hướng hoặc mở rộng cuộc trò chuyện. Không bao giờ lặp lại các tuỳ chọn đã trình bày trong danh sách dưới dạng khối đề xuất. Các khối trong ngữ cảnh này được dùng để tổng hợp cuộc trò chuyện (không phải để lựa chọn).

Lưu ý rằng trong ví dụ kèm theo, bong bóng trò chuyện đi kèm thẻ danh sách là một tập hợp con của âm thanh (TTS/SSML). Đầu ra âm thanh chỉ bao gồm mục danh sách đầu tiên. Bạn không nên đọc tất cả các thành phần khỏi danh sách.

Đảm bảo Hành động của bạn cho thấy những thông tin quan trọng nhất đối với người dùng tại đầu danh sách (ví dụ: phổ biến nhất, được mua gần đây, hoặc được nhắc đến nhiều nhất). Ban đầu, danh sách hiển thị tối đa 10 phần tử, nhưng người dùng có thể mở rộng danh sách để hiển thị thêm phần tử. Số lượng mặt hàng trong danh sách hiển thị trước khi mở rộng cũng có thể thay đổi tuỳ thuộc vào bề mặt và thời gian.

Phản hồi lựa chọn trực quan (Dialogflow) Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Hình 2. Ví dụ về danh sách (màn hình thông minh)

Mã mẫu

Xử lý mục đã chọn

Khi người dùng chọn một mặt hàng, giá trị của mặt hàng đã chọn sẽ được chuyển cho bạn dưới dạng đối số. Trong giá trị đối số, bạn sẽ nhận được giá trị nhận dạng key cho mục đã chọn:

Băng chuyền

Mẹo: Để được hướng dẫn thêm về cách sử dụng và tùy chỉnh băng chuyền, hãy xem hướng dẫn thiết kế băng chuyền.
Phản hồi lựa chọn trực quan (Dialogflow) Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Hình 3. Ví dụ về băng chuyền (điện thoại thông minh)

Băng chuyền sẽ cuộn theo chiều ngang và cho phép chọn một mục. Đã so sánh vào bộ chọn danh sách, công cụ này có các ô lớn cho phép hiển thị nội dung phong phú hơn. Thẻ thông tin tạo nên một băng chuyền tương tự như thẻ cơ bản có hình ảnh. Chọn một từ băng chuyền sẽ tạo bong bóng trò chuyện làm câu trả lời giống như với bộ chọn danh sách.

Mặc dù có hình ảnh hấp dẫn, nhưng băng chuyền bị hạn chế về tiện ích trong giao diện đa phương thức. Băng chuyền rất khó tương tác dưới dạng giao diện thoại (vì vậy, chúng tôi ưu tiên sử dụng danh sách). Tham khảo phần hướng dẫn để tìm hiểu thêm.

Thuộc tính

Loại phản hồi băng chuyền có các yêu cầu sau và không bắt buộc các thuộc tính mà bạn có thể định cấu hình:

  • Được hỗ trợ trên các nền tảng có chức năng actions.capability.SCREEN_OUTPUT.
  • Băng chuyền
    • Tối đa 10 ô.
    • Tối thiểu 2 ô.
    • Văn bản thuần tuý, không hỗ trợ Markdown.
  • Ô băng chuyền
    • Hình ảnh (không bắt buộc)
      • Hình ảnh bắt buộc phải có kích thước cao 128 dp x rộng 232 dp
      • Nếu tỷ lệ khung hình của hình ảnh không phù hợp với hộp giới hạn hình ảnh, thì hình ảnh đó được căn giữa bằng các thanh ở hai bên
      • Nếu đường liên kết của hình ảnh bị hỏng, thì hệ thống sẽ dùng hình ảnh ở dạng phần giữ chỗ
    • Tiêu đề (bắt buộc)
      • Giống như Thẻ văn bản cơ bản
      • Tiêu đề phải là duy nhất (để hỗ trợ lựa chọn giọng nói)
    • Nội dung mô tả (không bắt buộc)
      • Các lựa chọn định dạng giống như Thẻ văn bản cơ bản
      • Tối đa 4 dòng
      • Văn bản thuần tuý, không hỗ trợ Markdown.
  • Lần tương tác
    • Vuốt sang trái/phải: Trượt băng chuyền để hiển thị các thẻ khác nhau.
    • Thẻ nhấn: Thao tác nhấn vào một mục chỉ tạo ra bong bóng trò chuyện làm tiêu đề phần tử.
      • Phải có ý định nhập bằng cách chạm để xử lý sự kiện actions_intent_OPTION.
    • Giọng nói/Bàn phím: Trả lời bằng chức năng tiêu đề thẻ (nếu được chỉ định) giống như khi chọn mục đó.

Hướng dẫn

Băng chuyền hoạt động tốt khi nhiều tùy chọn khác nhau được hiển thị cho người dùng, nhưng không bắt buộc phải so sánh giữa chúng (so với danh sách). Nói chung, ưu tiên danh sách vào băng chuyền vì danh sách dễ xem nhanh hơn và tương tác bằng giọng nói.

Nếu muốn tạo một băng chuyền chứa các mục liên kết đến trang web, bạn thay vào đó, có thể họ sẽ muốn xây dựng băng chuyền duyệt web.

Bạn nên thêm các khối đề xuất bên dưới băng chuyền nếu muốn tiếp tục cuộc trò chuyện đó.

Không bao giờ lặp lại các tuỳ chọn có trong danh sách dưới dạng khối đề xuất. Khoai tây chiên trong ngữ cảnh này được dùng để tổng hợp cuộc trò chuyện (không phải để lựa chọn).

Tương tự như với danh sách, bong bóng trò chuyện đi kèm với thẻ băng chuyền là một tập hợp con của âm thanh (TTS/SSML). Âm thanh (TTS/SSML) ở đây tích hợp ô trong băng chuyền và bạn cũng không nên đọc tất cả các thành phần khỏi băng chuyền. Tốt nhất là bạn nên đề cập đến mục đầu tiên và lý do vì sao ở đó (ví dụ: video phổ biến nhất, được mua gần đây nhất hoặc nói về).

Cảnh báo: Nếu việc nhấn vào lựa chọn của băng chuyền, bạn sẽ trả về một thông báo dự phòng của phản hồi dự kiến, có thể bạn chưa đặt ý định xử lý phương thức nhập bằng cách chạm. Thao tác nhấn vào một lựa chọn băng chuyền sẽ kích hoạt sự kiện actions_intent_OPTION, vì vậy, phương thức thực hiện phải bao gồm một ý định xử lý sự kiện này cho phương thức nhập bằng cách chạm.
Phản hồi lựa chọn trực quan (Dialogflow) Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Hình 4. Ví dụ về băng chuyền (màn hình thông minh)

Mã mẫu

Xử lý mục đã chọn

Khi người dùng chọn một mặt hàng, giá trị của mặt hàng đã chọn sẽ được chuyển cho bạn dưới dạng đối số. Trong giá trị đối số, bạn sẽ nhận được giá trị nhận dạng key cho mục đã chọn: