Я пытаюсь использовать 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