Список параметров текста ответа о выполнении страницы Dialogflow CX (пользователи ES также могут знать ответ)

У меня есть параметр, который определяется как список. Когда я ссылаюсь на этот параметр в поле "Агент говорит", как быстрое начало руководство, я получаю список со скобками в тексте ответа агента.

Текст ответа о выполнении: Это $session.params.supported_toppings пицца.

Ответ симулятора агента: Это пицца [пепперони].

Я просмотрел всю документацию по CX и ES, но, похоже, я не могу найти способ распаковать список, кроме создания веб-перехватчика (чего я пытаюсь избежать по причинам). Любые идеи?


person boristhescot    schedule 11.09.2020    source источник


Ответы (2)


Я проверил сегодня поведение статических ответов при обращении к параметрам, и кажется, что теперь мы можем отображать список значений для определенного параметра без квадратных скобок в ответах.

Вот формат: $ session.params.parameter-name Я использовал для отображения списка в ответах. Результат теста следующий. CX agent isList

Более того, для Dialogflow ES Edition он поддерживается. Он возвращает список значений для определенного параметра в формате $ имя-параметра. Вот пример для агента ES:  ES-агент isList

person Riel    schedule 23.10.2020

После проверки ссылки на параметр сеанса формат должен быть следующим: $session.params.parameter-id[i] Дополнительные сведения см. Здесь: https://cloud.google.com/dialogflow/cx/docs/concept/parameter#session-ref

Вот пример теста, проведенного с моей стороны:

  1. isList Параметр  введите описание изображения здесь
  2. Условие для isList параметра  введите описание изображения здесь
  3. Протестируйте в Dialogflow CX Simulator  введите описание изображения здесь

Судя по скриншотам выше, формат для ссылки на isList параметры работал.

Если у вас есть ожидаемое количество значений для параметра isList, вы можете использовать статический ответ для выполнения: https://cloud.google.com/dialogflow/cx/docs/concept/fulfillment#static. Вы можете добавить несколько ответов в зависимости от возвращаемых параметров, как показано в приведенных примерах.

person jess    schedule 22.09.2020
comment
Это здорово, если вы знаете, какой у вас длинный список. Однако, если длина списка является динамической, ваше решение потребует написания n ответов, где n - допустимая длина списка. Я просто хочу напечатать весь список без скобок, независимо от длины. Мне трудно поверить, что никто в Google не рассматривал это со времен ES. - person boristhescot; 05.10.2020
comment
в вашем ответе, где вы указали два варианта: список [0] или список [0] и список [1], считаете ли вы, что CX должен уметь выбирать, какой ответ использовать, исходя из количества элементов в списке? Я знаю, что ES использовал это, когда определенные объекты были установлены / не установлены, но я не думаю, что это работает для CX. Он просто пройдется по списку ответов, а затем продолжит повторять последний пункт. - person dcsan; 15.12.2020