Когда мы сможем получить доступ к статусу автоматического поиска гнезд?

Позвольте мне подчеркнуть, что я не программист, но мне нравится возиться с вещами. Я использую @ifttt и @nest в течение многих лет, и недавно начал использовать @smartthings, чтобы делать классные вещи в моем доме.

Я хотел выключить устройства, такие как мой свет и водонагреватель, когда выходил из дома. Вместо того, чтобы это зависело от одного устройства, такого как телефон или брелок, я хотел использовать функцию автоматического отключения гнезда.

Автоотключение не подвергается воздействию @ifttt или @smartthings. Я спросил @nestsupport, и они сказали мне, чтобы прийти сюда:-o.

Кто-нибудь из команды разработчиков Nest знает, когда разработчики и другие продукты смогут использовать его с устройства Nest? Жаль, что через несколько лет это еще не раскрыто. Не только это, но это может быть дополнительным пунктом продажи для интеграции и включения / выключения предметов в вашем доме.

Поблагодарить

3 ответа

Я не из команды разработчиков Nest, но в прошлом я играл с Nest API и использую его для составления графика использования энергии.

Информация об "автоматическом отключении" уже доступна в API и, по-видимому, будет использоваться в ряде рецептов IFTTT:

https://ifttt.com/recipes/search?q=auto+away&ac=false

В данных (JSON), полученных обратно в API, статус "автоматического отключения" доступен через;

shared->{serial_number}->auto_away

Это установлено как логическое значение (0 или 1).

Если вам нравится возиться с кодом и вы знаете какой-либо PHP, тогда этот класс PHP для Nest API очень полезен для сбора всей информации и т. Д.;

https://github.com/gboudreau/nest-api

Auto-Away есть и всегда был доступен для чтения https://developer.nest.com/documentation/cloud/api-overview

Есть несколько способов сделать это, но если вы пишете SmartApp только для собственных нужд, я бы предложил использовать один из существующих типов устройств для Nest на SmartThings. В качестве быстрого примера я буду использовать тот, который я использую:

https://github.com/bmmiller/device-type.nest/blob/master/nest.devicetype.groovy

После строки 96 это представляет статус для любого приложения SmartApp, которое вы можете написать:

attribute "temperatureUnit", "string"
attribute "humiditySetpoint", "number"
attribute "autoAwayStatus", "number"     // New Line

Теперь вам нужно позаботиться о получении данных в существующем методе poll(), который в настоящее время начинается со строки 459.

После строки 480 обновить атрибут

sendEvent(name: 'humidity', value: humidity)
sendEvent(name: 'humiditySetpoint', value: humiditySetpoint, unit: Humidity)
sendEvent(name: 'thermostatFanMode', value: fanMode)
sendEvent(name: 'thermostatMode', value: temperatureType)
sendEvent(name: 'autoAwayStatus', value: data.shared.auto_away)     // New Line

Это предоставит числовое значение для статуса auto_away.

  • -1 = автоматическое отключение не включено
  • 0 = автоматическое выключение
  • 1 = Auto Away On

Затем в вашем SmartApp вы пишете, где вы включаете вход типа термостата, как это:

section("Choose thermostat... ") {
    input "thermostat", "capability.thermostat"
}

Вы сможете получить доступ к статусу Auto Away, обратившись к

thermostat.autoAwayStatus 

Из любого места в вашем коде, где вы можете сделать что-то вроде

if (thermostat.autoAwayStatus == 1) {
     // Turn off everything
}
Другие вопросы по тегам