使用多个Amazon Echo Dot设备时,是否可以识别触发技能的设备?

时间:2016-11-21 00:55:45

标签: aws-lambda alexa-skills-kit alexa-skill

我使用亚马逊的Echo Dot,我有几个Echo设备。我们假设这是设置:

  • 1号房间(Echo Dot 1) - > Light 1
  • 2号房间(Echo Dot 2) - > Light 2

我已经设置了Smart Home Skill来开灯,我可以通过这样的话来打开/关闭灯光:

  
      
  • " Alexa,打开灯1"
  •   
  • " Alexa,打开灯2"
  •   

到目前为止,这么好。现在,我想不要告诉Alexa" light 1"或者"亮2",但检测哪个Echo设备(Echo Dot 1Echo Dot 2)检测到话语并触发技能,所以我可以这样说:

  
      
  • " Alexa,打开灯"
  •   

..然后通过查看激活了哪个Echo Dot来决定我们是在1号房间还是2号房间,并打开/关闭匹配灯。

由于必须预先发现设备,并且如果没有找到指定名称的设备,该技能将无法触发,我认为这将涉及返回某种类型的虚拟" Discover端点中的设备,对Light 1Light 2进行建模,并使用触发事件的Echo Dot的ID来确定它是哪一个。

但是,在调试调用的AWS Lambda函数时,我找不到有关哪个特定Echo设备被激活的任何指示。

这可能吗?如果没有,您是否知道有任何其他方法可以实现相同的用户体验?

2 个答案:

答案 0 :(得分:2)

不,遗憾的是这是不可能的。我们很多人都希望这样......

参考

this answer from Amazon中(粘贴此处以进行访问,稍微重新格式化):

  
    

在帐户上有多个回声,自定义技能中是否有办法确定请求来自的回音?

  
     

回答[亚马逊] Levon @ Amazon·7月11日上午11:32

     

...

     

很遗憾,目前不支持该用例。

答案 1 :(得分:1)

可能的hacky解决方案......让每个点都有自己的亚马逊帐户,并将每个点与他们自己的lambda函数变体相关联。所以Dot A使用lambda A代表房间A而B代表使用lambda B代表B房。我看到的一个问题是他们不能很好地在一起,因为他们在不同的帐户上,你不会得到你的主要订阅亚马逊音乐等。但他们不无论如何,因为我听说过这样可能不是什么大问题。如果我为主要客厅的其他房间购买更多东西,我可能最终会为我的次要点做些什么。