Node-Red cronplus a cron obecně - snad nejlepší časovač

Použití některých nodů
Odpovědět
Uživatelský avatar
Lion®
Administrátor fóra
Administrátor fóra
Příspěvky: 1604
Registrován: 28. září 2020, 14:07
Bydliště: podkrkonoší
Dal poděkování: 144 poděkování
Dostal poděkování: 193 poděkování
Kontaktovat uživatele:

Node-Red cronplus a cron obecně - snad nejlepší časovač

Příspěvek od Lion® »

Nod "cronplus"

On-line generator pokud si nebude vědět rady nebo pro ověření zadání je zde.

cron001.PNG
cron001.PNG (1.31 KiB) Zobrazeno 991 x
Načasujete snad i nenačasovatelné pomocí sedmi "hvězdiček"
cron002.PNG
čas se zadává pomocí hodnot v 7 segmentech (co hvězdička to segment)

Kód: Vybrat vše

* * * * * * *
sekundy minuty hodiny dny_měsíce měsíce den_týdne rok

hvězdička ve svém segmentu představuje přesně v pořadí hodnotu "každý"
každou_sekundu každou_minutu každou_hodinu každý_den_měsíce každý_měsíc každý_den_týdne každý_rok

Hvězdičky, pro zadání času nahrazujeme hodnotami nebo znaky podle potřeby:
IMG_20210429_101545.jpg
Každý segment má sadu platných hodnot, které lze zadat.
Tyto hodnoty by měly být celkem zřejmé.
  • Sekundy čísla 0 až 59
  • Minuty hodnoty 0 až 59
  • Hodiny hodnoty 0 až 23
  • Den v měsíci může mít libovolnou hodnotu 1–31, ale musíte si dávat pozor na to, kolik dní v daném měsíci je!
  • Měsíce lze zadat jako hodnoty mezi 0 a 11 nebo pomocí řetězců JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV a DEC.
  • Dny v týdnu lze zadat jako hodnoty mezi 1 a 7 (1 = Mon - podle nastaveného regionu) nebo pomocí řetězců SUN, MON, TUE, WED, THU, FRI a SAT.
Znak "/" lze použít k určení přírůstků hodnot. Pokud například vložíte do segment Minuty „0/15“, znamená to „každou 15. minutu v hodině, počínaje nulovou minutou“. Pokud jste v segmentu Minuty použili „3/20“, znamenalo by to „každou 20. minutu v hodině, počínaje třetí minutou“ - nebo jinými slovy je to stejné jako zadání „3,23,43“ v Minutách segment. Všimněte si, že „0/35neznamená * „každých 35 minut“ - to znamená „každou 35. minutu v hodině, počínaje nulovou minutou“ - nebo jinými slovy to samé jako zadání „0,35“.

L“ je povolen pro segment den_měsíce a den_týdne. Tento znak znamená „poslední“, ale v každém ze dvou segmentech má jiný význam.
Například hodnota „L“ v segmentu den v měsíci znamená „poslední den v měsíci“ - 31. den pro leden, 28. den pro únor v nepřestupných letech. Pokud se použije v segmentu den_týdne samo o sobě, znamená to jednoduše „7“ nebo „Sun“. Pokud je ale použit v segmentu den_týdne po jiné hodnotě, znamená to „poslední xxx den v měsíci“ - například „5L“ nebo „FRIL“ znamená „poslední pátek v měsíci“. Můžete také určit posun od posledního dne měsíce, například „L-2“, což by znamenalo předposlední den kalendářního měsíce. Při použití možnosti „L“ je důležité nezadávat seznamy nebo rozsahy hodnot, protože získáte matoucí / neočekávané výsledky.

W“ se používá k určení dne v týdnu (pondělí až pátek) nejblíže danému dni. Například pokud je jako hodnota pro segment den v měsíci zadána hodnota „15W “, znamená to: „nejbližší den v týdnu k 15. dni v měsíci." Pokud je tedy 15. den sobota, spouštěč spustí v pátek 14. den. Pokud je 15. neděle, spoušť se spustí v pondělí 16. dne. Pokud je patnáctý den úterý, spouští se v úterý patnáctý den. Pokud je však jako hodnota pro den v měsíci zadána hodnota „1W“ a první je sobota, aktivační událost se spustí v pondělí 3., protože „nepřeskočí“ přes hranici dnů měsíce. Znak „W“ lze zadat pouze v případě, že je v měsíci jeden den, nikoli rozsah nebo seznam dnů.

#“ Se používá k určení pořadí den_týdne v měsíci. Například hodnota „6#3“ nebo „Sat#3“ v segmentu den_v_týdnu znamená „třetí sobotu v měsíci".
  1. příklad - výraz pro vytvoření spouštěče, který se jednoduše spustí každých 5 minut

    Kód: Vybrat vše

    0 0/5 * * * * *
  2. příklad - výraz pro vytvoření spouštěče, který se spouští každých 5 minut, 10 sekund po minutě (tj. 10:00:10, 10:05:10 atd.).

    Kód: Vybrat vše

    10 0/5 * * * * *
  3. příklad - výraz pro vytvoření spouštěče, který se spouští v 10:30, 11:30, 12:30 a 13:30 každou středu a pátek.

    Kód: Vybrat vše

    0 30 10-13 * * ST,FRI *
  4. příklad - výraz pro vytvoření spouštěče, který se spouští každou půl hodinu mezi 8:00 a 10:00 5. a 20. dne každého měsíce. Pamatujte, že spoušť NENÍ aktivována v 10:00, právě v 8:00, 8:30, 9:00 a 9:30

    Kód: Vybrat vše

    0 0/30 8-9 5,20 * * *
  5. příklad - výraz pro vytvoření spouštěče, který se spouští každých 6 sekund 30té minuty každé hodiny každého dne (240 sepnutí dennně)

    Kód: Vybrat vše

    0/6 30 * * * * *
  6. příklad - výraz pro vytvoření spouštěče, který se spouští každých 6 sekund 30té minuty 15té hodiny každého dne (10 sepnutí dennně)

    Kód: Vybrat vše

    0/6 30 15 * * * *
  7. příklad - výraz pro vytvoření spouštěče, který se spouští každých 6 sekund od 15:30:00 do 15:30:59 2. března 2021 (10 sepnutí)

    Kód: Vybrat vše

    0/6 30 15 2 3 * 2021
  8. příklad - výraz pro vytvoření spouštěče, který se spouští každých 6 sekund od 15:30:00 do 15:30:59 každý čtvrtek:

    Kód: Vybrat vše

    0/6 30 15 * * 4 *
  9. příklad - výraz pro vytvoření spouštěče, který se spouští Od 1. listopadu každých 30 minut mezi 19:00 až 6:59 hodinami až do 31. prosince:

    Kód: Vybrat vše

    0 0/30 19-6 * 11-12 * * 

    Kód: Vybrat vše

    0 0/30 19-6 * Nov-Dec * *
  10. příklad - výraz pro vytvoření spouštěče, který se spouští každých 6 sekund 30té minuty v druhou středu v měsíci:

    Kód: Vybrat vše

    0/6 30 * * * 3#2 *
  11. příklad - výraz pro vytvoření spouštěče, který se spouští každých 6 sekund 30té minuty v poslední středu v měsíci:

    Kód: Vybrat vše

    0/6 30 * * * 3L *


Upozorňujeme, že některé požadavky na plánování jsou příliš komplikované na to, aby byly vyjádřeny jediným spouštěčem - například „každých 5 minut mezi 9:00 a 10:00 a každých 20 minut mezi 13:00 a 22:00“. Řešením v tomto scénáři je jednoduše vytvořit dva spouštěče a zaregistrovat je oba ke spuštění stejné úlohy


V tomto Nodu si můžete dát časovačů kolik potřebujete a každý může odesílat jinou zprávu:
Přílohy
cron003.PNG
________________
🍻 Přispěj a získej přístup do obsahu fóra pro dárce. :thx:
Oficiální sada s Raspberry Pi 4B/4GB, černá +Argon NEO Raspberry Pi 4 Case
Patriot Burst 2.5" SATA SSD 120GB + AXAGON EE25-XA6 ALINE box

Galerie realizací

adamis
Dárce - Donátor
Dárce - Donátor
Příspěvky: 378
Registrován: 18. březen 2021, 20:22
Bydliště: kousek od České Lípy
Dal poděkování: 50 poděkování
Dostal poděkování: 17 poděkování

Re: Node-Red cronplus - snad nejlepší časovač

Příspěvek od adamis »

Velmi dobrá záležitost, tenhleten cronplus. Dneska jsem si s ním chvíli pohrál a fakt BOMBA. Jdou tam nastavit neskutečné kombinace. Je to trochu složitější na pochopení, ale potom velký pomocník!!
NUC - Proxmox a v něm Home Assistant, vše ESP a ZigBee2MQTT (WiFi Sonoff a Tuya jsem vyhodil z baráku)

Linux a HA jsou pro mě něco jako řízení letového provozu na raketové základně... :roll: :roll:

Odpovědět

Zpět na „Node - který, jak,...“