2017-05-05 34 views
0

如果我已经创建了多个Alexa技能,是否有一个userId在所有技能中保持不变?具体来说,如果用户在技能1中执行操作,我希望知道技能2和技能3 ......并且基本上允许技能共享相同的DynamoDB表。跨多个Alexa技能跟踪用户ID

理想情况下,我不会要求用户进行任何形式的登录,但它会根据与其亚马逊帐户绑定的唯一标识符来知道其用户是同一用户。

+0

爱用户名! – Padraic

回答

3

不。大约一年前,亚马逊做了具体的修改,以防止你这样做。您也无法识别卸载技能的用户,然后重新安装。你总是得到一个新的随机用户ID。

移动开发也发生了同样的情况:Google和Apple阻止访问任何可以让您识别物理设备的内容,或者阻止访问不同应用安装的用户而无需进行某种帐户链接 - 因此我怀疑亚马逊会放松这一点。

+1

感谢您的信息! – HelpMeStackOverflowMyOnlyHope

0

根据this part of the documentation,应该可以通过使用设备ID代替用户id的:

设备 提供关于用于发送 请求的设备信息的对象。设备对象包含deviceId和 supportedInterfaces属性。 deviceId属性唯一地标识设备 。 [...]

你找到它:

deviceId = this.event.context.System.device.deviceId 

这是你需要使用新的地址的API请求设备地址相同的值。因此,我不明白为什么它不适合您的需求。