Как навык Алекса знает контекст ответа пользователя
Я хочу создать навык Alexa, используя NodeJS. Этот навык выполнит задачи администратора, которые мы хотим установить в офисе. Он будет извлекать информацию о посетителе из БД при предоставлении идентификатора сотрудника. Затем запрашивает количество дней посещения, и пользователь отвечает, указав количество дней. Затем он спрашивает об имени хоста, и умение отправляет почту / сообщение с указанным именем хоста. Весь навык должен иметь хороший поток вопросов и ответов пользователей на него.
Я построил несколько базовых навыков Alexa, но это потребовало от меня задать вопрос, и навык отвечает после сопоставления этого конкретного вопроса с намерением. В этом навыке, по моему мнению, нет необходимости в отдельных намерениях, но вместо этого Алекса задает вопросы, и должно быть надлежащее сопоставление каждого вопроса с соответствующим ответом.
Мой вопрос заключается в том, как Alexa знает разговорный контекст, чтобы ваши навыки знали, на что ссылается ответ клиента. Например, пользователь может ответить "да" или "нет" на разные вопросы, и все они будут привязаны к одному и тому же Amazon.YesIntent/Amazon.NoIntent.
Я знаю, что это включает в себя некоторые концепции обработки состояний, я сослался на эту ссылку и эту ссылку
Но подробный пример очень поможет!
1 ответ
Вы должны сохранить свое состояние в своем ответе json. (в атрибутах сеанса)
Amazon говорит, что:
Возвращая свой ответ, вы можете включить данные, которые необходимо сохранить во время сеанса, в свойство sessionAttributes. Атрибуты, которые вы предоставляете, затем передаются вашему навыку при следующем запросе.
https://developer.amazon.com/docs/custom-skills/request-and-response-json-reference.html
Если вам нужен пример, эта ссылка будет полезной https://www.raymondcamden.com/2017/09/01/an-example-of-sessions-with-amazon-alexa-skills/