Nest 是否为我的应用提供 API 以 auto-detect/discover 添加新设备
Does Nest provide an API for my app to auto-detect/discover a new device being added
我使用 developer.nest.com 网站上的 API 说明创建了一个应用程序。因此该应用程序可以获得现有设备的列表并按照我想要的方式控制它们。
但是,如果我希望应用程序在我添加新设备时做一些特别的事情怎么办?这在今天可能吗?有人成功过吗?
您可以通过几种不同的方式收听更新。这取决于您使用的是什么:Firebase、Rest Stream、Rest polling 等。
基本上,您需要在代码中创建一个侦听器,然后检查触发的事件。您可以收听不同级别:结构或整个帐户(根级别)。
如果您有 Rest 流,您可以查看此 curl 命令以查看 JSON 中触发的内容:
1.Open 控制台和 Nest 开发者工具
- 运行 在控制台(root 级别)使用您为客户提供的访问令牌*:
curl -L -v "https://developer-api.nest.com?auth=" -H "接受:text/event-stream”
3.Remove 来自您虚拟帐户的任何恒温器。
4.Check 控制台中的触发事件:您将 JSON 丢失刚刚删除的恒温器的数据。
5.Now 向上一层结构:curl -L -v "https://developer-api.nest.com/structures/?auth=" -H "Accept: text/event-stream”
- 对虚拟设备重复相同的过程。
*要为您的客户端获取访问令牌,请转到此处:https://developer.nest.com/documentation/cloud/how-to-auth
如果您想在代码级别检查它,可以在 Nest Sample Code 中找到它。所有示例都有监听器,可以让您看到 account/structure 中恒温器发生的任何变化。
P.S。如果您希望实时触发这些事件,最好使用 Firebase 或 Rest Stream。
我使用 developer.nest.com 网站上的 API 说明创建了一个应用程序。因此该应用程序可以获得现有设备的列表并按照我想要的方式控制它们。
但是,如果我希望应用程序在我添加新设备时做一些特别的事情怎么办?这在今天可能吗?有人成功过吗?
您可以通过几种不同的方式收听更新。这取决于您使用的是什么:Firebase、Rest Stream、Rest polling 等。 基本上,您需要在代码中创建一个侦听器,然后检查触发的事件。您可以收听不同级别:结构或整个帐户(根级别)。
如果您有 Rest 流,您可以查看此 curl 命令以查看 JSON 中触发的内容:
1.Open 控制台和 Nest 开发者工具
- 运行 在控制台(root 级别)使用您为客户提供的访问令牌*: curl -L -v "https://developer-api.nest.com?auth=" -H "接受:text/event-stream”
3.Remove 来自您虚拟帐户的任何恒温器。
4.Check 控制台中的触发事件:您将 JSON 丢失刚刚删除的恒温器的数据。
5.Now 向上一层结构:curl -L -v "https://developer-api.nest.com/structures/?auth=" -H "Accept: text/event-stream”
- 对虚拟设备重复相同的过程。
*要为您的客户端获取访问令牌,请转到此处:https://developer.nest.com/documentation/cloud/how-to-auth
如果您想在代码级别检查它,可以在 Nest Sample Code 中找到它。所有示例都有监听器,可以让您看到 account/structure 中恒温器发生的任何变化。
P.S。如果您希望实时触发这些事件,最好使用 Firebase 或 Rest Stream。