Wb-rules и крон

Добрый день!

Подскажите, как правильно реализовать выполнение скрипта, после перезагрузки WB.
Этот костыль нужен из-за zigbee выключателей Livolo, они не подключаются к контроллеру после его перезагрузки.

cron(“@reboot”) - выдает ошибку

Код

function enableZigbeePermitJoin() {

  // Задержка перед включением Zigbee Permit Join
  setTimeout(function () {
    log("zigbee2mqtt_permit_join: Задержка перед включением началом работы устройств");

    // Устанавливаем значения устройств
    dev["dimmer_1"]["Channel 2"] = 100;
    dev["dimmer_1"]["Channel 3"] = 100;
    log("zigbee2mqtt_permit_join: Каналы 2 и 3 диммера 1 выставлены в 100%");
    dev["dimmer_1"]["K2"] = true;
    dev["dimmer_1"]["K3"] = true;
    log("zigbee2mqtt_permit_join: Реле 2 и 3 диммера 1 выставлены в true");
    dev["dimmer_0-10"]["Channel 1"] = 8000;
    dev["dimmer_0-10"]["Channel 2"] = 8000;
    log("zigbee2mqtt_permit_join: Каналы 1 и 2 диммера 0-10 выставлены в 8000");

    // Включаем Zigbee Permit Join
    dev["zigbee2mqtt/Permit join"] = true;
    log("zigbee2mqtt_permit_join: Включено zigbee2mqtt/Permit join на 1 минуту");

    // Задержка перед выполнением zigbee2mqtt/Update devices
    setTimeout(function () {
      log("zigbee2mqtt_permit_join: Задержка перед выполнением zigbee2mqtt/Update devices");

      // Выполняем zigbee2mqtt/Update devices
      dev["zigbee2mqtt/Update devices"] = true;
      log("zigbee2mqtt_permit_join: Выполнено zigbee2mqtt/Update devices");

      // Задержка перед выключением Zigbee Permit Join
      setTimeout(function () {
        log("zigbee2mqtt_permit_join: Задержка перед выключением Zigbee Permit Join");

        // Выключаем Zigbee Permit Join
        dev["zigbee2mqtt/Permit join"] = false;
        log("zigbee2mqtt_permit_join: Выключено zigbee2mqtt/Permit join.");

        log("zigbee2mqtt_permit_join: Процедура восстановления после перезагрузки завершена");
      }, 60000); // Задержка перед выключением Zigbee Permit Join
    }, 60000); // Задержка перед выполнением zigbee2mqtt/Update devices
  }, 10000); // Задержка перед включением Zigbee Permit Join
}

// Обработчик для ручного запуска функции
defineVirtualDevice("ZigbeePermitJoin", {
  title: "Восстановление после перезагрузки",
  cells: {
    manualTrigger: {
      type: "pushbutton",
      title: "Запустить функцию восстановления"
    }
  }
});

// Правило для ручного запуска функции
defineRule("manualTriggerRule", {
  whenChanged: "ZigbeePermitJoin/manualTrigger",
  then: function () {
    enableZigbeePermitJoin();
  }
});

// Правило для выполнения функции при старте контроллера
defineRule("enableZigbeePermitJoinOnStartup", {
  when: cron("@reboot"),
  then: function () {
    enableZigbeePermitJoin();
  }
});

Добрый день.
Как я понимаю, после перезагрузки контроллера теряются устройства по Zigbee от Livolo. Верно?
Пришлите диагностический архив. Укажите ревизию контроллера и версию ПО.

Другие zigbee-устройства после перезагрузки удачно подключаются?

Какую ошибку выдает? Что вы ожидаете от данного when: cron("@reboot"),

Добрый, диагностический архив прилагаю.

Диагностический архив

приложен диагностический архив, доступен только сотрудникам поддержки
(151,2 КБ)

Версия ПО последняя, стабильная.
Ревизия железки 6.6.0

Выдает ошибку:

17-01-2024 22:55:56.522 [wb-rules] ERROR: rule enableZigbeePermitJoinOnStartup: invalid cron spec: Unrecognized descriptor: @reboot

Я ожидаю выполнения правил строго после перезагрузки.

есть еще такой вариант: @reboot sleep 120

перезапуск правил через 5 минут после запуска контроллера в crontab
@reboot sleep 300 && /usr/sbin/service wb-rules restart > /dev/null 2>&1

Не вижу “reboot” в описании возможных аргументов: cron package - github.com/robfig/cron - Go Packages

Сможете помочь, вроде выложил все.
Жить с костылем не очень хочется.
В последующих проектах сведу на минимум беспородные технологии.

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

Не пробывал, но может получиться есть системный параметр можно смотреть его состояние.
Как только uptime = 5 min делай следующее
/devices/system/controls/Current uptime