我在获取和更改 Nest 恒温器提供的一些基本数据时遇到了麻烦。
使用命令行,如何获取或更改恒温器上的个别设置或值?
这是几个用户的汇编,解释了如何检索或更改一些基本信息,并添加了一些我自己的经验。无论我在哪里使用<VALUE>
,都将其替换为设置中的适用信息。如果您使用的是 Windows,则需要git-scm 之类的东西。
下面是认证过程的一部分。您需要已经在 Nest 的开发者页面上创建了一个客户端,并按照提供的授权 URL 获取您的身份验证代码。运行此行以获取访问令牌:
curl --data 'code=<AUTH CODE>&client_id=<CLIENT ID>&client_secret=<CLIENT SECRET>&grant_type=authorization_code' https://api.home.nest.com/oauth2/access_token
要获取有关与授权代码关联的恒温器的一些信息:
curl -v -L https://developer-api.nest.com/devices/thermostats?auth=<AUTH CODE>
要获取有关特定恒温器的一些信息:
curl -v -L https://developer-api.nest.com/devices/thermostats/<THERMOSTAT ID>?auth=<AUTH CODE>
从指定的恒温器中获取以 F 为单位的目标温度。您可以将 target_temperature_f 替换为Nest API 参考中恒温器下列出的任何其他值:
curl -v -L https://developer-api.nest.com/devices/thermostats/<THERMOSTAT ID>/target_temperature_f?auth=<AUTH CODE>
要更改target_temperature_f:
curl -v -L -X PUT "https://developer-api.nest.com/devices/thermostats/<THERMOSTAT ID>/target_temperature_f?auth=<AUTH CODE>" -H "Content-Type: application/json" -d "65"
将具体结构改为away。这里的值是一个字符串,所以一定要包含单引号:
curl -v -L -X PUT "https://developer-api.nest.com/structures/<STRUCTURE ID>/away?auth=<AUTH_TOKEN>" -H "Content-Type: application/json" -d '"away"'
这主要归功于以下用户: thesimm、mccv、Nagesh Susarla和David W. Keith。