[gelöst] Random Timer Wochenende

Begonnen von oelidoc, 15 April 2025, 10:34:39

Vorheriges Thema - Nächstes Thema

oelidoc

Hallo,
ich habe hier mehrere Random Timer, die ich gerne nach Wochenende und Wochentag unterschieden schalten lassen würde. Leider komme ich mit der Perldefinition !we nicht weiter.
So sieht ein Random Timer bisher aus:
define zufall_arbeitszimmer_morgens RandomTimer *{sunrise_abs(+1140,"06:44","07:29")} Licht_Arbeitszimmer +02:03:00 300
attr zufall_arbeitszimmer_morgens disable 0
attr zufall_arbeitszimmer_morgens disableCond (Value("rgr_Residents") eq "home")
attr zufall_arbeitszimmer_morgens offCmd set Licht_Arbeitszimmer off
attr zufall_arbeitszimmer_morgens onCmd set Licht_Arbeitszimmer on
attr zufall_arbeitszimmer_morgens room Arbeitszimmer
attr zufall_arbeitszimmer_morgens switchmode 900/50
#   COMMAND    off
#   DEF        *{sunrise_abs(+1140,"06:44","07:29")} Licht_Arbeitszimmer +02:03:00 300
#   DEVICE     Licht_Arbeitszimmer
#   FUUID      5c65c107-f33f-74ea-d6c2-4f6d44520da93466
#   NAME       zufall_arbeitszimmer_morgens
#   NR         155
#   STATE      disabled
#   TYPE       RandomTimer
#   eventCount 21
#   READINGS:
#     2025-04-13 08:49:11   LastCommand     set Licht_Arbeitszimmer off
#     2025-04-15 10:27:02   StartTime       2025-04-15 06:44:00
#     2019-08-01 00:05:30   Startzeit       2019-08-01 06:44:00
#     2025-04-15 10:27:02   StopTime        2025-04-15 08:47:00
#     2019-08-01 00:05:30   Stoppzeit       2019-08-01 08:47:00
#     2025-04-15 10:27:02   TimeToSwitch    300
#     2025-04-15 10:28:03   active          0
#     2025-04-15 10:28:03   state           disabled
#   helper:
#     NEXT_CHECK 15.04.2025  08:49:22
#     REL       
#     REP        *
#     SIGMAWHENOFF 900
#     SIGMAWHENON 50
#     STARTTIME  15.04.2025  06:44:00
#     STOPTIME   15.04.2025  08:47:00
#     SWITCHMODE 900/50
#     S_REL      +
#     TIMESPEC_START *{sunrise_abs(+1140,"06:44","07:29")}
#     TIMESPEC_STOP +02:03:00
#     TIMETOSWITCH 300
#     VAR_DURATION 0
#     VAR_START  0
#     active     0
#     offReading state
#     offRegex   off
#     startTime  1744692240
#     stopTime   1744699620
#
setstate zufall_arbeitszimmer_morgens disabled
setstate zufall_arbeitszimmer_morgens 2025-04-13 08:49:11 LastCommand set Licht_Arbeitszimmer off
setstate zufall_arbeitszimmer_morgens 2025-04-15 10:27:02 StartTime 2025-04-15 06:44:00
setstate zufall_arbeitszimmer_morgens 2019-08-01 00:05:30 Startzeit 2019-08-01 06:44:00
setstate zufall_arbeitszimmer_morgens 2025-04-15 10:27:02 StopTime 2025-04-15 08:47:00
setstate zufall_arbeitszimmer_morgens 2019-08-01 00:05:30 Stoppzeit 2019-08-01 08:47:00
setstate zufall_arbeitszimmer_morgens 2025-04-15 10:27:02 TimeToSwitch 300
setstate zufall_arbeitszimmer_morgens 2025-04-15 10:28:03 active 0
setstate zufall_arbeitszimmer_morgens 2025-04-15 10:28:03 state disabled

Wenn ich jetzt !we einfüge, werden vollkommen falsche Schaltzeiten angezeigt, da kann also was nicht stimmen:
define zufall_arbeitszimmer_morgens_WE RandomTimer *{sunrise_abs(+1140,"07:29","08:59"|$we)} Licht_Arbeitszimmer +02:03:00 300
attr zufall_arbeitszimmer_morgens_WE disable 1
attr zufall_arbeitszimmer_morgens_WE disableCond (Value("rgr_Residents") eq "home")
attr zufall_arbeitszimmer_morgens_WE offCmd set Licht_Arbeitszimmer off
attr zufall_arbeitszimmer_morgens_WE onCmd set Licht_Arbeitszimmer on
attr zufall_arbeitszimmer_morgens_WE room Arbeitszimmer
attr zufall_arbeitszimmer_morgens_WE switchmode 900/50
#   CFGFN     
#   COMMAND    off
#   DEF        *{sunrise_abs(+1140,"07:29","08:59"|$we)} Licht_Arbeitszimmer +02:03:00 300
#   DEVICE     Licht_Arbeitszimmer
#   FUUID      67fd33b1-f33f-74ea-433d-07bd2fbf638baf50
#   NAME       zufall_arbeitszimmer_morgens_WE
#   NR         667
#   STATE      disabled
#   TYPE       RandomTimer
#   eventCount 22
#   READINGS:
#     2025-04-15 00:05:30   StartTime       2025-04-15 00:00:00
#     2025-04-15 00:05:30   StopTime        2025-04-15 02:03:00
#     2025-04-14 19:30:52   TimeToSwitch    300
#     2025-04-15 02:04:45   active          0
#     2025-04-15 02:04:45   state           disabled
#   helper:
#     NEXT_CHECK 15.04.2025  02:04:45
#     REL       
#     REP        *
#     SIGMAWHENOFF 900
#     SIGMAWHENON 50
#     STARTTIME  15.04.2025  00:00:00
#     STOPTIME   15.04.2025  02:03:00
#     SWITCHMODE 900/50
#     S_REL      +
#     TIMESPEC_START *{sunrise_abs(+1140,"07:29","08:59"|$we)}
#     TIMESPEC_STOP +02:03:00
#     TIMETOSWITCH 300
#     VAR_DURATION 0
#     VAR_START  0
#     active     0
#     offReading state
#     offRegex   off
#     startTime  1744668000
#     stopTime   1744675380
#   hmccu:
#
setstate zufall_arbeitszimmer_morgens_WE disabled
setstate zufall_arbeitszimmer_morgens_WE 2025-04-15 00:05:30 StartTime 2025-04-15 00:00:00
setstate zufall_arbeitszimmer_morgens_WE 2025-04-15 00:05:30 StopTime 2025-04-15 02:03:00
setstate zufall_arbeitszimmer_morgens_WE 2025-04-14 19:30:52 TimeToSwitch 300
setstate zufall_arbeitszimmer_morgens_WE 2025-04-15 02:04:45 active 0
setstate zufall_arbeitszimmer_morgens_WE 2025-04-15 02:04:45 state disabled


Wer kann mir mit etwas Perl Code aushelfen - ich komme alleine nicht weiter  :'( .

Vielen Dank

oelidoc

Beta-User

Ungetestet: Die disableCond erweitern um sowas wie
|| !$we
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

oelidoc

Ah okay,

meinst du so?
attr RandomTimer disableCond (Value("rgr_Residents") eq "home" || !$we)
Vielen Dank für die Unterstützung

oelidoc

Beta-User

Zitat von: oelidoc am 15 April 2025, 13:20:47Ah okay,

meinst du so?
attr RandomTimer disableCond (Value("rgr_Residents") eq "home" || !$we)
Vielen Dank für die Unterstützung

oelidoc
So war es gemeint :) .
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

oelidoc

Vielen Dank, werde es testen...

Gruß

oelidoc