Ошибка завершения работы таймера


#1

День добрый.
В лог файле заметил такую ошибку:
Jul 4 06:19:12 wirenboard-ARAXKJYF daemon.info wb-rules[24963]: ERROR: trying to stop unknown timer: 134

Jul 4 14:19:56 wirenboard-ARAXKJYF daemon.info wb-rules[24963]: ERROR: trying to stop unknown timer: 145
Jul 4 15:10:15 wirenboard-ARAXKJYF daemon.info wb-rules[24963]: ERROR: trying to stop unknown timer: 146
Jul 4 15:27:52 wirenboard-ARAXKJYF daemon.info wb-rules[24963]: ERROR: trying to stop unknown timer: 147

Вроде всегда делаю очистку таймера перед установкой нового.
в чем подвох, кто знает?

есть такой кусок кода для света, может быть что подозрительного или причина в другом кроется?

defineRule("CELLAR_Light_Detector_switch", {
  asSoonAs: function() {
    return (!dev["wb-mio-gpio_185:1"]["DR3"] && dev["wb-ms-thls-v2_46"]["Illuminance"] < illuminance_lev_1)
    //если сумеречно и срабатывает датчик движения
  },
  then: function () {
      if (light_cellar_timer_id) { clearTimeout(light_cellar_timer_id); }

      if (!dev["wb-gpio"]["EXT1_R3A5"]) { //если свет не горел, то включить
          dev["wb-gpio"]["EXT1_R3A5"] = 1; 
          log("[CELLAR]: MOVING DETECTOR ACTIVATED... Light is ON");
          light_cellar_sensor = 30; //таймер света сократим до 3х минут
      }              
    
      light_cellar_timer_id = setTimeout(function() {
          dev["wb-gpio"]["EXT1_R3A5"] = 0;
          log("[CELLAR]: Time ({}min) is up. Light is OFF",light_cellar_timer/light_cellar_sensor);
          light_cellar_timer_id = null;
      }, light_cellar_timer/light_cellar_sensor * 60000);
  }
});

#2

Фрагмент кода из нашего примера:

if (relay_down_timer_id) {
        relay_down_timer_id = clearTimeout(relay_down_timer_id); 
      };

У вас после

if (light_cellar_timer_id) { clearTimeout(light_cellar_timer_id); }

light_cellar_timer_id не меняется же никак.


#3

Че, серьезно?)))))
Ну надо же, как же раньше не обращал внимания

Спасибище!


#4

Ну, мне так кажется на первый взгляд. Попробуйте!