Как навык Алекса знает контекст ответа пользователя

Я хочу создать навык 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/

Другие вопросы по тегам