Вопросы по коду

  1. подскажите пожалуйста, обновляются ли переменные при перезапуске контроллера, например, вот эта переменная в процессе выполнения кода, например если вдруг во время выполнения правила “ObogrevSKS” контроллер выключится, при новом запуске какое состояние будет у переменной heatingActive?
var heatingActive = false;

defineRule("ObogrevSKS", { 
  whenChanged: "wb-w1/28-00000e7dc263", 
  then: function (newValue, devName, cellName) { 
    if (newValue < 25 && !heatingActive) { 
      heatingActive = true; dev["обогрев/heatingActive"] = heatingActive;
      dev["wb-gpio/EXT4_R3A1"] = true; 
      dev["wb-gpio/EXT4_R3A2"] = true; 
      dev["wb-gpio/EXT4_R3A3"] = true; 
      dev["wb-gpio/EXT4_R3A4"] = true;   

      setTimeout(function() {
      dev["wb-gpio/EXT4_R3A1"] = false; 
      dev["wb-gpio/EXT4_R3A2"] = false; 
      dev["wb-gpio/EXT4_R3A3"] = false; 
      dev["wb-gpio/EXT4_R3A4"] = false; 
      heatingActive = false; dev["обогрев/heatingSKSActive"] = heatingActive;  
      }, 600000); // 10 мин
    } 
  }
});
  1. как добавить лог, чтобы можно было в любом месте кода, добавить строчку выводящую куда-нибудь текст. в примерах я встречал вот такое, но где он выводится?

false

  1. в скриншоте у вас пример команды вывода сообщения а лог есть, а чтоб его посмотреть - на страничке правил в интерфейсе WB внизу странички значок ключика - нажмите и откроется лог
1 лайк

Добрый день.

Вы эту переменную объявляете при запуске скрипта:

Соответственно будет false.
Для того чтобы хранить есть специальный механизм, например Не сохраняются уставки - #3 от пользователя BrainRoot