Когда мы сможем получить доступ к статусу автоматического поиска гнезд?
Позвольте мне подчеркнуть, что я не программист, но мне нравится возиться с вещами. Я использую @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 очень полезен для сбора всей информации и т. Д.;
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
}