Google is committed to advancing racial equity for Black communities. See how.

В гостях и расчетное время прибытия

Далеко

В Nest API концепция «дома» или «вдали» сильно влияет на поведение функций энергосбережения и удобства Nest.

Как работает Home and Away

Nest использует различные сигналы для обнаружения присутствия человека в доме. Если Nest обнаруживает отсутствие присутствия в течение длительного периода времени, он автоматически устанавливает для дома значение «Нет на месте». Когда он обнаруживает присутствие человека, он возвращает структуру в исходное состояние.

Реагирование на изменение статуса «Домой / Нет на месте» открывает перед вашими товарами широкий спектр возможностей. Например, ваши продукты могут:

  • Выключайте свет, когда дом уходит в гостиную, чтобы сберечь энергию.
  • Отправить уведомление, если дверь гаража открыта, когда дома нет дома
  • Слушайте музыку, когда дом переключается на Дом

Как работает ETA

В некоторых случаях у пользователей есть стороннее приложение, которое использует GPS для предоставления данных о предполагаемом времени прибытия (ETA) в Nest API. В других случаях пользователь может использовать приложение, чтобы вручную ввести свое расчетное время прибытия. Или, может быть, ETA рассчитывается на основе обычного расписания пользователя.

Приложения ETA, интегрированные с термостатом Nest, заставляют термостат начать нагрев или охлаждение дома до прибытия пользователя.

Если в учетной записи пользователя существует интеграция ETA / термостата, данные ETA доступны другим разработчикам Works with Nest для использования в своих интеграциях Works with Nest.

После того, как ETA введено в службу Nest, другая интеграция Works с Nest может использовать его в качестве сигнала для подготовки дома к прибытию пользователя.

  1. ЕТА написана разработчиком Nest с использованием только для записи PUT eta API вызова .
  2. Термостат Nest использует эти данные.
  3. Если другие разработчики хотят использовать его, тоже, они могут использовать только для чтения GET eta_begin вызова API .
Данные ETA

Важно помнить, что данные ETA должны вводиться третьей стороной. В настоящее время Nest не предоставляет данные о расчетном времени прибытия. Если данные ETA не были записаны, Nest API возвращает значение по умолчанию 1970-01-01T00: 00: 00.000Z.

Предположим, например, что вы продавец освещения. Вы можете получить данные ETA, предоставленные интеграцией ETA / термостата, и использовать их в качестве сигнала для включения света.

Таким образом, не только поддерживается комфортная температура, но и включается свет, когда пользователь возвращается домой.

Реагирование на изменение статуса ETA открывает широкий спектр возможностей для ваших товаров. Например, ваши продукты могут:

  • Включите телевизор, когда пользователь подходит к дому.
  • Откройте дверь гаража, когда пользователь почти дома
  • Музыка уже играет, когда пользователь возвращается домой

Разрешения на выезд

Следующие уровни разрешений доступа доступны для Вдали-связанных значений данных :



Доступ

В гостях читать
Нет чтения / записи

ETA читать

ETA чтение / запись

Дым + сигнал тревоги CO прочитан
Термостат читать
Чтение / запись термостата
away да да да
eta_begin (только для чтения) да да
eta объект (только для записи) да

Для получения дополнительной информации см Обзор разрешений .

В гостях

Дома и в гостях

away значение данных может сказать вам , если Nest думает , что структура занята. Возможные значения:

Значение Описание
home В структуре есть кто-то. Это состояние можно установить:
• компанией Nest, если она имеет высокую степень достоверности на основе данных датчика движения.
• пользователя через приложение Nest , гнездо термостат или ваш продукт
• алгоритмически через ETA
away В структуре никого нет. Пользователь явно установить структуру прочь, либо через приложение Nest , гнездо термостат или продукт.
unknown Если устройства не связаны со структурой, то далеко состояние unknown .

Nest API предоставляет возможность напрямую устанавливать Home и Away, а также отслеживать изменения этих состояний. Однако, при установке дома и на выезде, это должно быть сделано , как приложение Nest делает это: в результате явного требования пользователя. Попытка алгоритмический установить это состояние возникает риск создания запутанного пользовательского опыта и запрещено политикой дизайна Nest .

Имейте в виду , что пользователи всегда имеют возможность вручную установить Home / Away состояние.

Узнайте больше о том , как пользователи настраивают и отсутствующие состояния .

ETA

Далеко

ЕТА представляет собой объект с полями , которые могут быть установлены на структуру. Он используется, чтобы сообщить Nest, что пользователь должен вернуться домой в определенное время. При установке ETA, продукт генерирует уникальный trip_id и обеспечивает ожидаемое окно прибытия, указанное с помощью следующих значений:

  • estimated_arrival_window_begin
  • estimated_arrival_window_end

Поскольку обстоятельства поездок могут измениться из-за загруженности дорог, измененных планов пользователей и других событий, продукты должны периодически обновлять расчетное время прибытия по мере продвижения поездки, предоставляя Nest поток расчетного времени прибытия (идеальный интервал - 5 минут).

Чем больше информации мы получим, тем больше мы сможем быть уверены в надежности входных данных ETA, что делает нас более уверенными при принятии мер по подготовке дома.

ETA не зависит от страны проживания. Если время прибытия одного ETA противоречит другому времени прибытия, самое раннее время прибытия имеет приоритет.

Сделать звонок для записи ETA

Логика ETA зависит от наличия термостата в конструкции. Если нет термостата не существует в структуре, вызовы , сделанные на объект ETA неудача с «Нет сопряженные устройства» сообщение об ошибке. Эта ошибка возникает, даже если в структуре существуют другие типы устройств (например, 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 возвращает код состояния HTTP 200 OK.

Примеры

Завиток
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..."

Отменить расчетное время прибытия

Для того, чтобы отменить ЭТОТ отправить estimated_arrival_window_begin = 0 . Убедитесь, что в этом вызове вы отправляете целое число (0), а не строку («0»), в противном случае вызов завершится ошибкой.

Сообщения об ошибках

Для получения информации о том , что означают ошибки API вызова и как обращаться с ними, увидеть сообщения об ошибках .