Domoticz dzVents скрипт lastUpdate.secondsAgo

Если устройство test обновляло статус более 5 секунд назад то переводит выключатель test2 в положение off (выключено). Скрипт выполняется каждую минуту:

-- dzVents скрипт
-- Если устройство test обновляло статус более 5 секунд назад то переводит выключатель test2 в положение off (выключено) 
-- Выполняется каждую минуту
return {
    active = true,
    on = {
        timer = {'Every minute'}
    },
    execute = function(dz)
		if (dz.devices('test').lastUpdate.secondsAgo > 5) then
			dz.devices('test2').switchOff()
		end 
	end
}

 

Можно, например, выключать термостат отопления, если на датчиках движения не было активности

 

Тоже самое, но в «если» 2 устройства:

-- dzVents скрипт
-- Если устройство test и test3 обновляло статус более 5 секунд назад то переводит выключатель test2 в положение off (выключено) 
-- Выполняется каждую минуту
return {
    active = true,
    on = {
        timer = {'Every minute'}
    },
    execute = function(dz)
		if (dz.devices('test').lastUpdate.secondsAgo > 5 and dz.devices('test3').lastUpdate.secondsAgo > 5) then
			dz.devices('test2').switchOff()
		end 
	end
}

 

Теперь будет отправлено уведомление:

-- dzVents скрипт
-- Если устройство test и test3 обновляло статус более 5 секунд назад то переводит выключатель test2 в положение off (выключено) с отправкой уведомления
-- Выполняется каждую минуту
return {
    active = true,
    on = {
        timer = {'Every minute'}
    },
    execute = function(dz)
		if (dz.devices('test').lastUpdate.secondsAgo > 5 and dz.devices('test3').lastUpdate.secondsAgo > 5) then
			dz.devices('test2').switchOff()
			 dz.notify('Тест2 выключился.',
                            'Хорошего дня!',
                            domoticz.PRIORITY_LOW)
		end 
	end
}

 

 

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

-- dzVents скрипт
-- Если устройство test и test3 обновляло статус более 5 секунд назад то переводит выключатель test2 в положение off (выключено) 
-- Выполняется, если сработает триггер
return {
    active = true,
    on = {
        devices = {'test2'}
    },
    execute = function(domoticz)
		if (domoticz.devices('test').lastUpdate.secondsAgo > 5 and domoticz.devices('test').lastUpdate.secondsAgo < 6) then
			domoticz.devices('test2').switchOff()
			 domoticz.notify('Тест2 выключился.',
                            'Хорошего дня!',
                            domoticz.PRIORITY_LOW)
		end 
	end
}

 

Поделитесь с друзьями
Подписаться
Уведомить о
guest

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

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии