Alexa sdk спросить

У меня есть сценарий, когда клиент спрашивает Алексу, какой у меня план путешествия, который соответствует «TravelIntent». Это намерение извлекает данные о поездках клиентов из REST API и обнаруживает, что у клиента более 1 плана поездки. Теперь я предлагаю пользователю увидеть, что существует более одного плана. Скажем 1 для поездки на выходные, скажем 2 для бла-бла ... и т. Д. Теперь, когда пользователь отвечает, говоря 2, Alexa может представить пользователю, что ваша поездка на следующей неделе в Дели и т. Д. Теперь вопрос в том, должен ли я запрашивать отдых api для получения подробной информации или есть ли способ, которым я могу сохранить данные в сеансе Alexa, и как он использует ответ «спросить» от пользователя, потому что «TravelIntent» уже получил данные от rest api.


person user398707    schedule 07.11.2017    source источник


Ответы (1)


Да, сначала вы можете получить ответ пользователя, создав слоты с намерением, например,

{
      "slots": [
        {
          "name": "Plan",
          "type": "AMAZON.NUMBER"
        }
      ],
      "intent": "TravelIntent"
}

После этого вы получите номер плана, и вы сможете его получить,

var planNumber = event.request.intent.slots.Plan.value;

и запросить ответ соответственно.

Теперь вы можете сохранять свои данные, создавая модули и получая их, когда захотите. Нравится,

var dataModule = function(){};

dataModule.prototype.setData = function(data){
    this.data = data;
}

dataModule.prototype.getData = function(data){
    return this.data;
}

module.exports = new dataModule();

и требовать его там, где вы хотите данные, всего в одну строку,

var data = require ('./ dataModule');

Теперь вы можете использовать объект данных для получения данных.

person Siddharth Sheth    schedule 07.11.2017