Как установить контекст в alexa - PullRequest
0 голосов
/ 07 апреля 2020

Я работал над Dialogflow, где я установил контекст для своего намерения, но не знаю, как установить контекст в Alexa

user: open demo bot
alexa: welcome! How can I help you?

User: update my name
Alexa: What's your name?

User: Jason
Alexa: your name is updated as Jason, Anything else?

user: John
Alexa: your name is updated as John, Anything else?

, это должно выдать ошибку, но оно непосредственно обновляет имя (Джон ).

пример 2

user: open demo bot
alexa: welcome! How can I help you? (WelcomeIntent)

user: order food
alexa: We offer item1, item2. What you would like to have? (FoodItemIntent)

user: item2
alexa: you have ordered item2, your order will be served soon. (OrderFoodIntent)

сессия заказа еды завершена здесь

теперь, если пользователь снова скажет какой-либо продукт, такой как

user: item1
alexa: you have ordered item1, your order will be served soon. (OrderFoodIntent)

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

, так как сеанс заказа еды был завершен.

1 Ответ

0 голосов
/ 07 апреля 2020

В Alexa в настоящее время это не так просто, как в Dialogflow. Но вы можете играть со стороны сервера, где вы можете симулировать контекст.

Например, в ответе / запросе Alexa вы будете хранить историю и значения намерений. Исходя из этого, вы можете построить контекст на стороне сервера. Например, когда вы получаете намерение, которое не соответствует контексту, вы отправляете пользователю повторную реплику, чтобы сказать все, что вам нужно. Для этого я рекомендую некоторые общие намерения, такие как text_intent, который соответствует тексту, или number_intent для чисел и т. Д. намерение), то предложение будет отправлено в диалоговом потоке NLU API, и на основе предложения вы получите контекстный ответ.

...