【问题标题】:When using multiple Amazon Echo Dot devices, is it possible to identify which one triggered a skill?使用多个 Amazon Echo Dot 设备时,是否可以确定是哪一个触发了一项技能?
【发布时间】:2017-04-04 07:49:25
【问题描述】:

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

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

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

  • “Alexa,打开灯 1”
  • “Alexa,打开灯 2”

到目前为止,一切都很好。现在,我不想告诉 Alexa“灯 1”或“灯 2”,而是检测哪个 Echo 设备(Echo Dot 1Echo Dot 2)检测到话语并触发了技能,所以我可以说类似的话:

  • “Alexa,打开灯”

.. 然后通过查看激活的 Echo Dot 来决定我们是在 Room 1 还是 Room 2,然后打开/关闭匹配的灯。

由于必须预先发现设备,如果没有找到指定名称的设备,则不会触发该技能,我认为这将涉及在 Discover 端点中返回某种“虚拟”设备,以对两者进行建模Light 1Light 2,根据触发事件的Echo Dot的ID判断是哪一个。

但是,在调试调用的 AWS Lambda 函数时,我找不到任何关于激活了哪个特定 Echo 设备的迹象。

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

【问题讨论】:

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


    【解决方案1】:

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

    参考

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

    在一个帐户上有多个回显,自定义技能中是否可以确定请求来自哪个回显?

    由 [Amazonian] Levon@Amazon 回答 · 7 月 11 日上午 11:32

    ...

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

    【讨论】:

      【解决方案2】:

      可能的 hacky 解决方案...让每个点都有自己的亚马逊帐户,并将每个点与它们自己的 lambda 函数变体相关联。所以点 A 对房间 A 使用 lambda A,点 B 对房间 B 使用 lambda B。我看到的一个问题是它们不能很好地一起玩,因为它们在不同的帐户上,而且你不会获得亚马逊音乐等的主要订阅。但他们没有反正我听说的同步不太好,所以可能不是什么大问题。如果我为其他房间购买比我的主要起居室更多的东西,我最终可能会为我的次要点做这件事。

      【讨论】:

      • 好主意,就像你说的那样,它会使其他用例无效,但会绕过这个限制,谢谢!
      猜你喜欢
      • 2019-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-05
      • 2011-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多