При внезапном отъезде можно переводить дом в режим "Away", а затем и в "Vacation".
Гики используют для этого геофенсинг, но в принципе, я могу разрешить попользоваться хатой друзьям или родственникам, так что геофенсинг - зло.
У гиков и свет включается от сенсоров - им лучше закрыть этот страшный пост
Как савтоматизироваться? Обычно используют дверной сенсор, датчик движения или акустический сенсор (крутая штука, скоро должны появиться), но они бычно на батарейках, т.е. не очень надёжны.
Либо у кого-то их нет.
Но у всех есть выключатель или диммер. Его всегда включают в прихожей хоть раз в день.
Проблема в том, что у выключателей нет четкого времени срабатывания, либо выключатели участвуют в сценариях автоматизации.
Однако, у большинства есть функция "Передать ИД сцены". Т.е. действие, которое делали с выключателем - щелкали/гладили/нажимали/отпускали и т.д.
Нам сейчас не важно, что делали, важно, что при этом запоминается КОГДА делали и это точно сделано РУКОЙ, а не скриптом.
И так: Работаем по сенсору или последнему тыканию выключателя
Активируем "сцены" на выключателе/диммере согласно инструкции.
Делаем сцену "каждый час, в режиме Home или Night"
Luup:
local HallDimmer = <id>
local HallSensor = <id>
local HmodeID = <id>
local HmodeType = "urn:micasaverde-com:serviceId:HouseModes1"
local HallSensorType="urn:micasaverde-com:serviceId:SecuritySensor1"
local LastSceneTim= luup.variable_get("urn:micasaverde-com:serviceId:SceneController1", "LastSceneTime",HallDimmer) or 0
local LastTrip=luup.variable_get (HallSensorType, "LastTrip", HallSensor) or 0
local MaxWait=3600*24
LastSceneTim=tonumber(LastSceneTim)
LastTrip=tonumber(LastTrip)
if (LastSceneTim< LastTrip and LastTrip>0 ) then
LastSceneTim=LastTrip
end
if (LastSceneTim>0 and os.difftime(os.time(),LastSceneTim)>MaxWait) then
-- set away mode
luup.call_action(HmodeType ,"SetHMode", {newHModeValue= "2"}, HmodeID )
end
Сутки простоя и дом "уснёт".