Notice: We're retiring Works with Nest. See the home page for more information.
Google 致力于为黑人社区推动种族平等。查看具体举措
此页面由 Cloud Translation API 翻译。
Switch to English

离开预计到达时间

远

在Nest API中,“住家”或“离开”的概念对Nest的节能和便捷功能的行为具有强大的影响。

外出如何工作

Nest会使用各种信号来检测房屋中是否有人。如果Nest在很长一段时间内未检测到存在,它将自动将房屋设置为“离开”。当它检测到人的存在时,它将结构返回到Home状态。

对“居家/离开”状态的变化做出反应,为您的产品提供了广泛的机会。例如,您的产品可以:

  • 房屋离开时关掉灯以节省能源
  • 当家不在时,如果车库门打开,则发送通知
  • 当房子切换到家庭时播放音乐

ETA如何运作

在某些情况下,用户会有一个第三方应用程序,该应用程序使用GPS向Nest API提供估计的到达时间(ETA)数据。在其他情况下,用户可能会使用应用程序手动输入其预计到达时间。或者,可能是根据用户的定期时间表来计算ETA。

与Nest Nest恒温器集成的ETA应用程序使恒温器在用户到达之前开始对房屋进行加热或冷却。

当用户帐户中存在ETA /恒温器集成时,ETA数据可用于其他Works with Nest开发人员在其Works with Nest集成中使用。

将ETA输入Nest服务后,另一个与Nest集成的Works可以将其用作信号,为用户的到来做好准备。

  1. ETA由Nest开发人员使用只写PUT eta API调用编写。
  2. Nest Thermostat会使用此数据。
  3. 如果其他开发人员也想使用它,则可以使用只读的GET eta_begin API调用
ETA数据

要记住的重要一点是,ETA数据必须由第三方输入。 Nest目前不提供ETA数据。如果尚未写入ETA数据,则Nest API将返回默认值“ 1970-01-01T00:00:00.000Z”。

例如,假设您是照明供应商。您可以获取ETA /恒温器集成提供的ETA数据,并将其用作打开灯的信号。

这样,不仅温度舒适,而且当用户回家时灯也亮。

对ETA状态的变化做出反应,为您的产品提供了广泛的机会。例如,您的产品可以:

  • 用户回家时打开电视
  • 用户快要回家时打开车库门
  • 用户回家后已经播放了音乐

离开权限

以下访问权限级别可用于与客有关的数据值



访问

远看
远读/写

预计到达时间

ETA读/写

烟雾+一氧化碳警报读取
温控器读取
温控器读/写
away
eta_begin (只读)
eta对象(仅写)

有关更多信息,请参见“ 权限概述”

离开功能

家乡

away数据值可以告诉您Nest是否认为该结构已被占用。可能的值为:

描述
home 结构中有人。可以设置此状态:
•通过Nest技术,如果它对运动传感器数据有很高的信心
•由用户通过Nest应用程序 ,Nest Thermostat或您的产品
•通过ETA算法
away 结构中没有人。用户已通过Nest应用程序 ,Nest Thermostat或您的产品将结构明确设置为不使用。
unknown 如果没有设备与该结构关联,则离开状态unknown

Nest API提供了直接设置“回家”和“离开”以及侦听这些状态更改的功能。但是,在设置“住家”和“离开”时,应像Nest应用程序一样进行:这是明确的用户请求的结果。尝试以算法方式设置此状态会带来创建混乱的用户体验的风险, Nest设计策略禁止这样做。

请注意,用户始终可以手动设置“归属/离开”状态。

详细了解用户如何设置居家和离开状态

预计到达时间

远

ETA是具有可在结构上设置的字段的对象。它用于让Nest知道预期用户将在特定时间返回家中。设置ETA时,产品会生成一个唯一的trip_id并提供一个预期的到达窗口,由以下值指定:

  • estimated_arrival_window_begin
  • estimated_arrival_window_end

由于出行情况可能会因交通,用户计划变更和其他事件而发生变化,因此产品应在出行过程中定期更新ETA,为Nest提供一连串的预计到达时间(5分钟为理想间隔)。

我们收到的信息越多,我们对ETA输入数据的可靠性就越有信心,这使我们在采取行动准备房屋时更有信心。

ETA独立于本国。如果某个ETA的到达时间与另一个ETA发生冲突,则以最早的到达时间为准。

拨打ETA写电话

ETA逻辑取决于结构中是否存在恒温器。如果结构中不存在恒温器,则对ETA对象的调用将失败,并显示错误消息“ No paired devices” 。即使结构中存在其他类型的设备(例如Nest Cam或Nest Protect),也会发生此错误。

数据值

ETA呼叫需要以下数据值:

名称类型描述
trip_id 唯一的ETA行程标识符
estimated_arrival_window_begin 时间戳记
必须大于NOW ,采用ISO 8601格式
estimated_arrival_window_end 时间戳记
必须大于estimated_arrival_window_begin ,在ISO 8601格式

由于GPS通信中可能会出现连接丢失的情况,因此我们建议您进行一次采样,最好每5分钟采样一次。

每个ETA调用都必须包含您在初始调用中定义的唯一trip_id字符串。其他参数可以通过连续调用同一trip_id来更改。

ETA调用成功返回200 OK HTTP状态代码。

例子

卷曲
curl --location-trusted -X PUT -d \
  '{"trip_id":"sample-trip-id","estimated_arrival_window_begin":"2014-10-31T22:42:00.000Z","estimated_arrival_window_end":"2014-10-31T23:59:59.000Z"}' \
  "http://developer-api.nest.com/structures/5af48890-b516-11e3-9eff-123139166438/eta.json?auth=c.VG6bfzyOxAltaih6P4v..."

取消预计到达时间

要取消eta,请发送estimated_arrival_window_begin = 0 。检查您是否在此调用中发送整数(0),而不是字符串(“ 0”),否则调用将失败。

错误讯息

有关什么是API调用错误的含义以及如何处理错误的信息 ,请参见错误消息