Значение conv.user.storage не сохраняется между сеансами при вызове через речь - PullRequest
0 голосов
/ 17 октября 2018

Я пытаюсь использовать conv.user.storage для сохранения информации между сеансами для моего пользователя, а именно, я хочу дать ему идентификатор.

Когда я вызываю свое действие через клавиатуру, он сохраняет моиИдентификатор хранилища пользователя в порядке, и когда я снова запускаю действие из консоли разработчика, он будет console.log сохраненного идентификатора в сеансе.Однако, когда я вызываю действие через речь, оно не будет сохранять значение хранилища для следующего сеанса.

const generateRandomId = require('uuid/v4');
app.intent('Default Welcome Intent',(conv) =>{

  if(conv.user.storage["id"] ==undefined){

    conv.user.storage.id = generateRandomId();
  }

  console.log(conv.user.storage.id);

conv.close(`your user id is ${conv.user.storage.id});
});

, поэтому это намерение будет генерировать новое значение каждый раз для conv.user.storage.id, когдаиспользуя речевое действие с моим домашним устройством Google, я хочу, чтобы оно всегда было одинаковым, поэтому я могу сохранить свой идентификатор пользователя в базе данных для отслеживания их рекордов.

РЕДАКТИРОВАТЬ

Это также происходит, когда я пытаюсь отследить идентификатор с помощью conv.user.id, поэтому, когда я использую свое действие с клавиатурой, он всегда будет иметь такой же идентификатор:

ABwppHGgFSnon5unUNjikof_5G-m_8lldEd_LIokoqYlOsCSFm96--UHDJ_GOHHo6hFOQUZVoMTT6TvfT_edklKbaPm

тогда как идентификатор, который создается conv.user.id при использовании приложения через речь, это просто набор чисел, подобных этому:

1539765602273384238765
...