Dialog Flow (Api.ai) Разговор в чат-боте

У меня есть приветственное намерение, и это позволяет пользователю выбрать три разных действия. Пример: Добро пожаловать! вы можете распечатать свое имя, вы можете напечатать свою фамилию или вы можете распечатать свой почтовый индекс. Если Пользователь выбирает или вводит фамилию, он должен вызывать намерение фамилии. Таким образом, мы предоставляем несколько вариантов при желании, и пользователь может выбрать любой из них. В зависимости от действия, выбранного пользователем, разговор должен происходить. Пожалуйста, помогите мне, как этого добиться.


person Shenbaga Ganesh    schedule 22.01.2018    source источник


Ответы (2)


Вы даете пользователю возможность продолжить, указав свое имя, фамилию или почтовый индекс.

Чтобы зафиксировать их ответ, вам нужно будет создать три намерения:

  • Захватить имя
  • Захватить фамилию
  • Захватить почтовый индекс

Для каждого намерения вы должны предоставить серию примеров фраз, показывающих, как пользователь может выразить каждую вещь. Например, «Захватить имя» может содержать такие примеры, как:

  • "Меня зовут Дэн"
  • "Дэн"
  • "Дэн - мое имя"

Я бы рекомендовал предоставить около 10 примеров для каждого намерения.

Dialogflow предоставляет системный объект для почтовых индексов, поэтому он сможет автоматически извлеките почтовый индекс из намерения «Захватить почтовый индекс».

Однако, чтобы заставить работать намерения имени и фамилии, вам необходимо создать сущности, которые будут представлять имя и фамилию всех ваших пользователей. Предполагая, что вы знаете эти значения заранее, вы должны сначала создать каждую сущность, а затем написать сценарий для ее заполнения из вашего хранилища данных с помощью / entity endpoint.

После того, как вы создали и заполнили эти сущности, добавьте несколько примеров, которые используют их для своих целей. Убедитесь, что вы выделяете и комментируете любые значения сущностей, которые не идентифицируются автоматически.

Когда ваши намерения будут выполнены, вы можете использовать выполнение Dialogflow, чтобы отправить собранную ими информацию на ваш сервер. .

person Daniel Situnayake    schedule 22.01.2018

Обычно, когда срабатывает приветственное намерение, он отправляет запрос на ваш бэкэнд через веб-перехватчик, из бэкэнда вы можете отправлять ответы в виде шаблонов или кнопок, и пользователь может выбрать один из них, если вы используете здесь бэкэнд.

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

Во втором намерении сохраните одну сущность, содержащую некоторые значения для имени, и используйте выходной контекст, например frstname_output_context

В другом намерении сохранить одну сущность, содержащую некоторые значения для фамилии, в качестве сущности и использовать выходной контекст, например lsttname_output_context

Надеюсь, это прояснится с использованием веб-перехватчика и без веб-перехватчика.

person Biswadev    schedule 22.01.2018