Добрый день, подскажите пожалуйста, можно ли создать правило, которое будет выполняться 1 раз после загрузки контроллера?
WB6
Добрый день, подскажите пожалуйста, можно ли создать правило, которое будет выполняться 1 раз после загрузки контроллера?
WB6
Добрый день. Да, конечно. Использовать Cron для этого не нужно, все скрипты выполняются после загрузки (или перезапуска wb-rules), для того чтобы определить - была ли перезагрузка можно проверить uptime контроллера.
Если не затруднит можно пример, мне при включение нужно подать на реле управляющий сигнал, в описание движка написано что dev[] не стоит использовать вне функции, Но функцию без when я не могу создать, т.к. в When мне не чего писать и нечего отслеживать. Спасибо!
И не нашел пример как вызывается Uptime из wb-rules
Например так:
//06_15_test_04.js
defineVirtualDevice("StartRule", {
title: "StartRule",
cells: {
executed : {
type : "switch",
value : false,
readonly: true,
forceDefault: true,
},
}
});
function onstart(){
if (!dev["StartRule/executed"]){
dev["StartRule/executed"] = true
//выполняется что-то
}
}
setTimeout(function() {onstart()}, 2000) //задержка старта выполнения
его надо через выполнение внешних процессов запускать-парсить.
А можно еще ткнуть меня носом, как получить ответ от запуска runShellCommand, нашел только как запускать, хочется спарсить ответ от внешней команды.
Вот так, например: