【问题标题】:Is possible to programmaticaly request smart devices connected to google home account?是否可以以编程方式请求连接到 google home 帐户的智能设备?
【发布时间】:2019-06-05 10:58:16
【问题描述】:

我正在尝试开发一个 Android 应用,该应用可以请求连接到 google home 帐户的智能设备,检查这些设备的状态并更改其中的一些设备,例如打开或关闭,这是否可以通过编程方式实现?

我正在尝试使用 Google Actions SDK 构建一些自定义操作,问题是 Actions SDK 仅适用于 Google Assistant 命令,因此 Actions o Dialogflow 不是选项

基本上我需要的是“控制”或以编程方式发送命令来查询设备状态并能够更改这些状态​​(我只需要打开或关闭)

【问题讨论】:

    标签: dialogflow-es actions-on-google google-assistant-sdk google-home


    【解决方案1】:

    没有 API 可供第三方开发者从不同的提供商处访问用户的设备。

    【讨论】:

    • Google Actions 中的 smart home nodejs 示例怎么样?我现在正在构建它,但我不知道我可以根据需要将该样本带到多远SmartHomeNodejs Sample
    • 通过智能家居示例,您只能看到您在该项目中设置的设备。您无权访问其他项目/公司的设备。
    • 我的情况是这样,我有一个智能开关和一个 google home 设备,都与我的 google 帐户相关联,我已经建立了一个 firebase 项目,建立了实现,设置了操作上的帐户链接,我想在Request Sync docs 使用 homegraph 的 api 检查我的帐户中有哪些设备,但是如何将我的设备与第一次同步的 agentuserid 链接?用谷歌主页上的命令可能吗?同步具有特定 ID 的设备?
    • 您无法检查与 Google 帐户关联的所有设备。
    • 您可以向以您身份登录的 Google 助理发送文本命令,但这将是虚拟的 Google 助理表面,而不是本地的 Google Home。它也无法返回您的设备或状态的结构化列表。
    【解决方案2】:

    您可以为此使用 Dialogflow!如果您创建 Intent,您会在页面底部找到一个选项“Fulfillment Enable webbook call for this intent”。 我将意图路由到我的网络空间上的 PHP 脚本。服务器必须是 Internet 中的服务器(不是您的 Google-Home 的本地网络),并且必须可以通过 HTTPS 访问。 基本上你得到的参数是 JSON,你必须用 JSON 结构化数据来回答。

    更新:我上传了我的代码https://github.com/Limag/aiplayer

    【讨论】:

    • 但是如何在 google home 中链接设备?所以你可以用这些设备回答,我有一个智能开关,我在谷歌主页上注册它,现在我想在我的服务器中以编程方式检查我的链接设备的状态
    • 首先,设备只能响应 Google Home 而永远不会自行启动交互(我害怕)。 Google Home 和您的设备之间发生的链接就是所谓的 Fulfillment 请求。在我的示例 PHP 代码中,在自托管的 Web 空间上。
    猜你喜欢
    • 1970-01-01
    • 2010-11-17
    • 2014-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-23
    相关资源
    最近更新 更多