问题标签 [nest-device-access]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
170 浏览

nest-device-access - 获取访问令牌

我试图通过谷歌文档获取访问令牌。

curl -L -X POST 'https://www.googleapis.com/oauth2/v4/token? client_id=oauth2-client-id&client_secret=oauth2-client-secret&code=authorization-code&grant_type=authorization_code&redirect_uri=https://www.google.com'

有了这个请求,它没有奏效。我添加了-H 'Content-Length: 0',现在我结束了

有人有想法吗?

0 投票
3 回答
526 浏览

nest-device-access - 无法链接到合作伙伴连接

按照以下所列步骤授权帐户时遇到问题: https ://developers.google.com/nest/device-access/get-started

步骤是:

  1. 注册设备访问计划>>使用私人帐户支付
  2. 使用 Google 帐户激活受支持的 Nest 设备。>>使用我的私人 Google 帐户登录 Google home 或 Nest 时,我可以看到我的 Nest 设备。
  3. 创建一个 Google Cloud Platform (GCP) 项目以启用 SDM API 并获取 OAuth 2.0 客户端 ID。>>使用“启用 API 并获取 OAuth 2.0 客户端 ID”按钮并在出现提示时插入重定向 URL。已验证 GCP 控制台中的所有内容均正确无误。
  4. 创建一个设备访问项目以接收项目 ID。>>设置时使用步骤 3 中的 OAuth 客户端 ID

使用此 URL 尝试获取授权码:

是的,我用设备访问控制台中的项目 ID 和第 3 步中的 OAuth 客户端 ID 替换了项目 ID。我从第 1 步和第 2 步中选择了 Google 帐户。

我仍然在浏览器中收到错误消息:

无法链接到 [项目名称]

我从来没有收到提示允许项目访问我的 Google 帐户(此处的步骤 3-5 )。

谢谢您的帮助。

0 投票
0 回答
210 浏览

javascript - 尝试获取访问令牌时出现错误请求

我正在尝试使用 Nest Device API,但是当它抛出时我无法获得访问令牌

我已经从 GCP 下载了我的 credentials.json 并打开了一个新选项卡,其中包含以下 AUTH_URL:

从那里,我有我的回调页面来获取授权码。

这是 API 返回上述错误的地方。我也尝试过使用这个 URL,curl -L -X POST <url>但是我得到了完全相同的结果。

有任何想法吗?

0 投票
3 回答
180 浏览

google-api - 离开/回家模式

API 是否公开了将模式设置为 Away 或 Home 的功能?

我没有在 API 文档中看到这一点。我认为这个功能很重要,因为它现在只允许您关闭恒温器,还可以通过移动应用程序配置警报(我的设置是只在我离开时为我的 NestCams 发送警报)。

0 投票
1 回答
713 浏览

php - 当我使用 PHP curl 向 Google Nest 设备的 SDM API 发送命令时出现“收到无效的 JSON 有效负载”错误

我喜欢使用 SDM API 的命令功能。我必须在 PHP 中执行 Google 文档需要以下语法:

我的 PHP 代码如下所示:

此命令生成以下错误(我将事件 ID 替换为 XYZ):

我已经完成了以下测试:

Google 提供了一个终端功能,它允许我输入文档中描述的原始语法(见上文),而无需依赖 PHP Curl。

成功手动测试后,我使用我的 PHP 代码创建 RAW 数据:

和网址:

我手动将字符串复制到这个结构中:

然后我将以下代码复制粘贴到终端中并且它工作(敏感信息已删除):

所以错误必须来自我的卷曲代码:

0 投票
2 回答
600 浏览

google-api - 错误 400:使用 google 设备访问时的 redirect_uri_mismatch

https://developers.google.com/nest/device-access/authorize#redirect_uri_mismatch

返回后授权账户时

授权错误错误 400:redirect_uri_mismatch

0 投票
1 回答
192 浏览

nest-device-access - 甚至测试智能设备 API 是否需要 OAuth 同意屏幕验证

将 sdm.service 范围添加到 Oauth 同意屏幕时,会触发需要验证的警告。我想知道即使我只是创建一个不会发布的测试应用程序,是否也需要验证?

通过我许多周的尝试,我实际上只能将我的测试应用程序链接到一个帐户两次,我仍然不知道为什么它只工作了两次。在 Google Nest Permissions 屏幕之后,我通常会出现在 No Partner Connection Found 屏幕上。没有重定向,因此没有授权代码来实际访问任何内容。我尝试过干净、全新的项目,使用不同的电子邮件帐户,甚至通过不同的访问方式。在这一点上,我唯一能想到的就是我的 Oauth 同意屏幕可能需要验证。但是,验证过程需要我没有的信息。

欢迎任何想法。

0 投票
1 回答
88 浏览

nest-api - 可以使用新的设备访问控制台设置恒温器的湿度特性吗?

我正在查看可用的恒温器/设备特性,而湿度特性似乎是只读的。有没有办法通过 API 设置湿度水平?我查看了谷歌设备访问文档,我只能找到一个只读湿度特征(developers.google.com/nest/device-access/traits/device/humidity),但无法设置它......想知道有没有人知道的方法...

0 投票
1 回答
97 浏览

nest-device-access - 列出设备和结构为空

使用 Golang SDK 进行智能设备管理,我想访问我的 Nest 恒温器。

我能够对 SDM API 进行身份验证和成功的 API 调用。但是,当我调用Devices.List(...).Do()响应时包含一个空列表。

恒温器肯定与我正在验证的 Google 帐户相关联。

有没有我可能错过的东西。一个简单的代码参考会很棒!

编辑

看起来我可能需要在下面的屏幕截图中添加以下范围。然后需要验证。然后我需要有一个应用程序主页、隐私政策、YouTube 视频来展示我将如何使用这些数据......

如何适合爱好者?

Google OAuth 范围

编辑 2

个人项目显然免于验证过程。我如何使项目个性化!为什么这么难?(我很RTFM!)

编辑 3

现在得到一点。晚上停下来。我意识到关于个人项目的声明只是意味着“继续它,但你的用户会看到一个警告屏幕”。

但是,当我遵循身份验证流程时,权限列表中不会出现任何设备。我认为这就是问题所在。

0 投票
1 回答
286 浏览

google-api - Google 智能设备管理 API 调用中缺少恒温器设备

我的项目与谷歌的新(截至 10 月)SDM OAuth 方案相关联,我可以与https://smartdevicemanagement.googleapis.com/v1/enterprises/project-id/structures.

我的巢门铃摄像头出现在 json 响应中:

但是恒温器没有出现在这里。我确实在 Nest 应用程序本身上看到了它,所以我很确定它都是链接的。我什至在收音机复选框中看到它。

未检测到设备时如何添加设备?这是一个帐户问题吗,我的恒温器不知何故卡在 Nest 旧版中,而其他一切都在新的 SDM 系统上?