Читать книгу Создание чат-ботов с Dialogflow, Watson, ChatterBot и Rasa онлайн
26 страница из 31
Но у нас нет функции для заказа пиццы, и это то, что мы собираемся сюда добавить.
И далее, как только вы создали функцию, вам нужно сопоставить намерение с выполнением этой функции, с помощью добавления записи в карту намерений Map.
И если мы включим, например, Fulfillment в намерении приветствия, тогда если мы наберем в Try it – hello, чат-бот ответит не фразой намерения, а функцией приветствия агента, которая определена в вебхук.
Теперь, давайте создадим функцию для заказа пиццы.
Здесь у нас есть функция order pizza, которая определяет переменные для извлечения параметров из пользовательского запроса.
Она создает ключ для хранения в базе данных, а затем создает новую сущность.
Эта сущность будет содержать значения переменных.
Возврат этой функции – это действие сохранения содержимого созданной нами сущности в Datastore.
И в конце, мы должны добавить запись в карту намерений.
После этого развернем заново наш вебхук.
И теперь нужно включить Fulfillment для намерения order.pizza.upsell.drink-no, чтобы после того, как клиент отказался от напитка, мы сохранили наш заказ в базе данных.