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調用錯誤的含義以及如何處理錯誤的信息 ,請參見錯誤消息