Получать комментарии в качестве входных данных от пользователя - PullRequest
1 голос
/ 05 июля 2019

Я использую Node.js и Dialogflow для небольшого действия Google.

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

Проблема в том, что после запроса, хотят ли они оставить сообщение, мой следующий ввод обнаруживается какНамерение отступления.

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

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

1 Ответ

1 голос
/ 05 июля 2019

Короткий ответ - ты не можешь. Но ... есть способы, которыми вы можете настроить дополнительные резервные элементы, которые запускаются только тогда, когда вы ожидаете комментариев в свободной форме. Я не уверен, что вы пытались сделать с событиями, но это почти наверняка тоже не правильный путь - события предназначены не для ввода пользовательского диалога, а для других инициирующих действий (триггеры графического интерфейса, события без ввода и т. Д.) .

Аварийное намерение срабатывает всякий раз, когда есть ввод, который не совпадает ни с одним другим намерением. Поскольку вы хотите, чтобы ваш ответ был произвольным, по умолчанию он не может совпадать ни с чем другим. Нет никакого способа создать нормальное Намерение, которое соответствовало бы.

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

Таким образом, когда вы просите пользователя предоставить комментарий, вы можете установить контекст «комментария» и иметь отступление, которое имеет «комментарий» в качестве входного контекста. Чтобы создать отступление таким образом, выберите значок меню из трех точек

enter image description here

А затем «Создать отступление»

enter image description here

Введите имя для отступного намерения, добавьте «комментарий» (или любой другой выбранный вами контекст) в качестве входного контекста и измените продолжительность жизни на 0 в выходном контексте (чтобы контекст очищался после выполнения пользователем). Не забудьте включить Fulfillment.

enter image description here

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

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

...