我正在考虑购买Nest,并对API功能有一些想法。我有一个入侵者/安全警报与房子周围的PIR。我打算做的是通过API在这个系统和Nest之间建立一个接口。
我的理由是使用来自警报PIR传感器的运动检测来“通知”Nest有人仍然在场所(由于它们的移动)并因此阻止Nest在房子时切换到其自动离开状态有人居住。
当房子在离开模式下武装时,我希望Nest立即进入自动离开状态。
所以我想知道的是,是否可以通过API执行以下操作:
1)保持/切换Nest进/出Home 2)将Nest置于自动离开状态
干杯伊恩
答案 0 :(得分:1)
您可以将Nest切换为Away或Home,但无法控制Auto-Away。根据我的经验,Auto-Away可能不是你想要的,因为Nest似乎每次越过预定的加热/冷却等事件时都会退出Auto-Away模式。
这正是我使用API的方式 - 在设置闹钟时将Nest设置为Away,并在闹钟未设置时设置为Home。
答案 1 :(得分:0)
我遇到了关于使用我的安全警报运动检测器(我已经有一台显示器)的相同问题,让Nest知道某人在家。似乎Nest与其他可以提供Nest活动数据的公司合作,但API中没有任何相关信息。
我还有一个脚本,一旦警报布防,就会将Nest设置为离开模式,使用已发布的API很容易实现。
这是我的REST JavaScript函数,将Nest设置为home / away模式,原谅我糟糕的JavaScript(我是一个菜鸟)。
// Turn on/off away mode based on true/false parameter
function setAway(doAway) {
var url = "https://developer-api.nest.com/structures/"+myNest.struct+"?auth="+myNest.auth;
if (doAway) {
var newState = "away";
} else {
var newState = "home";
}
var nowAway = isAway();
var options = {
method: "put",
contentType: "application/json",
accept: "application/json",
payload: '{"away":"'+newState+'"}'
};
// only update if state changed
if (doAway != nowAway) {
var response = UrlFetchApp.fetch(url, options);
var data = JSON.parse(response);
}
}