我可以通过语音命令让 Alexa 关闭麦克风吗?

物联网 亚马逊回声 亚历克斯
2021-06-26 22:24:52

是否可以构建一个自定义技能,相当于按下 Amazon Echo 顶部的麦克风开/关按钮?

我从How-To Geek 上的这篇文章中了解到,默认情况下此类语音命令不可用:

我们发现缺少的一项功能,令人惊讶的是,考虑到 Echo 的整个吸引力在于语音控制,它无法通过语音命令关闭麦克风。如果您向 Alexa 发出诸如“Alexa,关闭麦克风”之类的命令,她会高兴地宣布没有符合该描述的联网家庭设备,并为您提供有关如何设置 Alexa/Echo 的联网家庭功能的说明系统。

这是否意味着此功能也无法通过 API 调用使用?

如果不可能,为什么亚马逊不支持此功能?

4个回答

看来,有没有办法将麦克风静音通过语音在这个时候,你的建议; 这个 Reddit 线程证实了这一点,但不幸的是我找不到它的官方亚马逊来源。设备顶部的静音按钮似乎是目前唯一的方法。

令人失望的是,开发一种使麦克风静音的技能似乎也是不可能的。您的技能必须以这种格式返回 JSON 响应,其中包含以下键:

  • version - Alexa API 版本
  • sessionAttributes - 持久的键值对(用于保存在会话中的自定义数据)
  • response
    • outputSpeech - 你想让 Alexa 说的话
    • card - Alexa 应用程序中要显示的“卡片”数据
    • reprompt - 如果用户没有正确响应并需要重新提示时使用的文本
    • directives - 使用 Alexa API 中的接口执行的设备级操作
    • shouldEndSession - 用你的技能结束当前的聊天会话

看起来任何控制设备的响应都是directive. 截至 2017 年 1 月,此处列出了 Alexa 支持的当前接口

  • AudioPlayer
  • PlaybackController

这些都没有提供与麦克风的任何接口,所以看起来你不走运。

为什么?

我怀疑亚马逊故意不支持这一点,因为 Alexa 可以在许多不同的设备上运行有些是按键通话,有些是点击通话(例如亚马逊 Tap),还有一些是唤醒词启动(“一直在听”)。添加对麦克风静音的支持将使 Alexa 更接近唤醒词启动的设备,这可能会出现问题。

此外,支持按语音静音可能会导致令人沮丧的事故,Alexa认为您说的是“将麦克风静音”,迫使您起床并取消静音,因为它现在被静音后无法响应您

将 Alexa 电源插入兼容 Alexa 的智能插座。将智能插座命名为“Alexa”。您现在应该能够告诉它自行关闭。

当然,必须以其他方式重新打开它。

一种方法如下:

如果您想使用智能插头打开/关闭 Amazon Echo。

  1. 将 Echo 插入智能插头并为其通电
  2. 使用另一个 Alexa 设备(例如 Dot 2)来配置和控制智能插头。完成后,您的所有 Alexa 设备都会看到智能插头,但您将使用 Dot 2 打开和关闭 Echo 插入的智能插头。

所以单独的Dot 2用于开启和关闭智能插头。Echo连接到智能插头。

我不是程序员,但我认为这样做的聪明方法是建立一种技能,使回声无视命令(而不是关闭麦克风)。有点像 Windows 语音在您说“停止收听”时起作用,它并没有真正停止收听,但会忽略除“开始收听”之外的所有命令。我相信会有比我更熟练的人会解决这个问题。这当然是一个非常需要的命令选项。希望亚马逊大哥正在倾听。