# Выключение реле в определенное время

**URL:** <https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656>\
**Category:** Программное обеспечение\
**Created:** [May 31, 2025, 6:36am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656 "2025-05-31T06:36:35Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![azazzelo](https://avatars.discourse-cdn.com/v2/letter/a/3ab097/32.png) [@azazzelo](https://support.wirenboard.com/u/azazzelo)\
**Post date:** [May 31, 2025, 6:36am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/1 "2025-05-31T06:36:35Z")

</div>

Добрый день, прошу помощи, поправить скрипт.  
Вроде все просто в полночь по Москве, реле должно выключаться, каждый день, но не срабатывает. В чем ошибка?

function dailyRelayOff\_EXT1\_K14(deviceName){  
defineRule(“dailyRelayOff\_EXT1\_K14”, {  
when: cron(“0 00 21 \* \*”),  
then: function () {  
dev[“wb-gpio/EXT1\_K14”] = false;  
}  
}  
) }

---

<div class="post-metadata">

**Author:** ![hexprof](https://support.wirenboard.com/user_avatar/support.wirenboard.com/hexprof/32/23124_2.png) [@hexprof](https://support.wirenboard.com/u/hexprof)\
**Post date:** [May 31, 2025, 7:20am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/2 "2025-05-31T07:20:56Z")

</div>

> [@azazzelo](#):
>
> when: cron(“0 0 0 \* \* \*”),

Вот так

---

<div class="post-metadata">

**Author:** ![azazzelo](https://avatars.discourse-cdn.com/v2/letter/a/3ab097/32.png) [@azazzelo](https://support.wirenboard.com/u/azazzelo)\
**Post date:** [May 31, 2025, 7:38am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/3 "2025-05-31T07:38:51Z")

</div>

Cron правила

 ![image](https://support.wirenboard.com/uploads/default/original/3X/f/8/f85a95223b1039e4bf0ae69b5e9f161e2e3e2fe1.png)

И если не ошибаюсь время не московское, а минус 3 часа

---

<div class="post-metadata">

**Author:** ![hexprof](https://support.wirenboard.com/user_avatar/support.wirenboard.com/hexprof/32/23124_2.png) [@hexprof](https://support.wirenboard.com/u/hexprof)\
**Post date:** [May 31, 2025, 8:07am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/4 "2025-05-31T08:07:27Z")

</div>

Тут с секундами. 6 позиций.  
Время системное. Которое установлено на контроллере. Если настроен часовой пояс, то локальное.

---

<div class="post-metadata">

**Author:** ![BrainRoot](https://avatars.discourse-cdn.com/v2/letter/b/c2a13f/32.png) [@BrainRoot](https://support.wirenboard.com/u/BrainRoot)\
**Post date:** [June 2, 2025, 2:17pm UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/6 "2025-06-02T14:17:00Z")

</div>

> [@azazzelo](#):
>
> Cron правила

Это точно из документации к используемой библиотеки?

---

<div class="post-metadata">

**Author:** ![azazzelo](https://avatars.discourse-cdn.com/v2/letter/a/3ab097/32.png) [@azazzelo](https://support.wirenboard.com/u/azazzelo)\
**Post date:** [June 3, 2025, 4:03am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/7 "2025-06-03T04:03:56Z")

</div>

> [@azazzelo](#):
>
> }  
> }  
> ) }

Это ссылка с

> <https://github.com/wirenboard/wb-rules/blob/master/README.md>

> **[cron package - github.com/robfig/cron/v3 - Go Packages](https://pkg.go.dev/github.com/robfig/cron/v3#hdr-CRON_Expression_Format)**
>
> Package cron implements a cron spec parser and job runner.

---

<div class="post-metadata">

**Author:** ![azazzelo](https://avatars.discourse-cdn.com/v2/letter/a/3ab097/32.png) [@azazzelo](https://support.wirenboard.com/u/azazzelo)\
**Post date:** [June 3, 2025, 4:17am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/8 "2025-06-03T04:17:26Z")

</div>

Выставил в консоли часовой пояс Москвы.  
исправил на when: cron(“0 0 0 \* \* \*”),

Все равно не отключает.  
Подскажите, пожалуйста, что может быть не так.

---

<div class="post-metadata">

**Author:** ![hexprof](https://support.wirenboard.com/user_avatar/support.wirenboard.com/hexprof/32/23124_2.png) [@hexprof](https://support.wirenboard.com/u/hexprof)\
**Post date:** [June 3, 2025, 5:01am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/9 "2025-06-03T05:01:14Z")

</div>

А правило, обернутое в функцию точно нужно? Функция откуда-то вызывается? Или достаточно:

```js
defineRule("dailyRelayOff_EXT1_K14", {
  when: cron('0 0 0 * * *'),
  then: function () 
  {
    dev["wb-gpio/EXT1_K14"] = false;
  }
});

```

---

<div class="post-metadata">

**Author:** ![azazzelo](https://avatars.discourse-cdn.com/v2/letter/a/3ab097/32.png) [@azazzelo](https://support.wirenboard.com/u/azazzelo)\
**Post date:** [June 3, 2025, 6:49am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/10 "2025-06-03T06:49:18Z")

</div>

в файле еще таймеры есть.  
Убрал функцию, все равно не сработало(

//light in the vestibule

function deviceTimerOff4(deviceName, timerValue){  
var timerId = null;  
defineRule( “wb-mr6c\_105/K6\_vestibule” ,{  
whenChanged: “wb-mr6c\_105/K6”,  
then: function (newValue, devName, cellName){  
[//log.info](https://log.info)(“I’m here!”, newValue)  
if(newValue) { //Если включилось  
if (timerId){ //Если таймер УЖЕ есть  
[//log.info](https://log.info)(“Timer started BEFORE”, newValue)  
clearTimeout(timerId); //останавливаем таймер  
}  
[//log.info](https://log.info)(“Timer started”, newValue) //Запускаем таймер  
timerId = setTimeout(function () { //Начинаем описывать таймер  
dev[“wb-mr6c\_105/K6”] = false; //выключаем  
timerId = null; //Сбрасываем идентификатор отработавшего таймера  
}, timerValue);  
}  
}  
})  
}  
deviceTimerOff4(“wb-mr6c\_105/K6”, 300\*1000);//время - в миллисекундах

//light in Amilia upper sockets  
//function dailyRelayOff\_EXT1\_K14(deviceName){  
defineRule(“dailyRelayOff\_EXT1\_K14”, {  
when: cron(‘0 48 9 \* \* \*’),  
then: function ()  
{  
dev[“wb-gpio/EXT1\_K14”] = false;  
}  
});

---

<div class="post-metadata">

**Author:** ![azazzelo](https://avatars.discourse-cdn.com/v2/letter/a/3ab097/32.png) [@azazzelo](https://support.wirenboard.com/u/azazzelo)\
**Post date:** [June 3, 2025, 7:11am UTC](https://support.wirenboard.com/t/vyklyuchenie-rele-v-opredelennoe-vremya/27656/11 "2025-06-03T07:11:57Z")

</div>

Все заработало, большое спасибо за помощь!
