Weekday Timer / spezielles reading - gelöst

Begonnen von Müller, 25 Juni 2020, 21:24:42

Vorheriges Thema - Nächstes Thema

Müller

Hallo,

ich brauche mal wieder eure Hilfe. Bin durch Probieren leider nicht weitergekommen.

Ich habe einen dummy

Internals:
   FUUID      5eb7cefe-f33f-a4d3-f24d-e9ca70c4de6096a3
   NAME       Blumen
   NR         264
   STATE      1:off
2:off
   STILLDONETIME 0
   TYPE       dummy
   READINGS:
     2020-06-25 19:20:23   on1             off
     2020-06-25 20:51:07   on2             off
     2020-06-25 20:50:00   state           {fhem("set Blumen on2 on")}
Attributes:
   alias      Beregnung/Blumen
   devStateIcon 1.on:sani_irrigation@blue 1.off:sani_irrigation@gray:on1+on 2.on:hue_room_garden@blue:on2 2.off:hue_room_garden@gray:on2+on
   disable    0
   group      Beregnung
   readingList on1 on2
   room       Baßler,Baßler_komplett
   setList    on1:on,off on2:on,off
   sortby     02
   stateFormat 1:on1
2:on2


mit dem Kommando

set Blumen on2 on

wird das gewünschte reading auf on geschaltet.

Nun möchte ich das ganze per weekday timer schalten:

Internals:
   COMMAND   
   CONDITION 
   DEF        Blumen en 0123456|21:03|

   DEVICE     Blumen
   FUUID      5eb7ccea-f33f-a4d3-313d-79e0f382ada12a86
   GlobalDaylistSpec
   LANGUAGE   en
   NAME       Blumentimer
   NR         263
   Profil 0: Sunday 00:00:00 21:03
   Profil 1: Monday 00:00:00 21:03
   Profil 2: Tuesday 00:00:00 21:03
   Profil 3: Wednesday 00:00:00 21:03
   Profil 4: Thursday 00:00:00 21:03
   Profil 5: Friday 00:00:00 21:03
   Profil 6: Saturday 00:00:00 21:03
   STATE      active
   STILLDONETIME 0
   TYPE       WeekdayTimer
   READINGS:
     2020-06-25 21:02:08   currValue       21:03
     2020-06-25 19:11:23   disabled        0
     2020-06-25 21:02:08   nextUpdate      2020-06-26 00:00:00
     2020-06-25 21:02:08   nextValue       21:03
     2020-06-25 21:02:08   state           active
   SWITCHINGTIMES:
     0123456|21:03|
   TIMER:
     Blumentimer_SetTimerOfDay:
       HASH       Blumentimer
       MODIFIER   SetTimerOfDay
       NAME       Blumentimer_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   dayNumber:
     !$we       8
     $we        7
     fr         5
     mo         1
     sa         6
     su         0
     th         4
     tu         2
     we         3
   helper:
     daysRegExp (su|mo|tu|we|th|fr|sa|\$we|\!\$we)
     daysRegExpMessage (su|mo|tu|we|th|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         00:00:00   21:03
       1:
         00:00:00   21:03
       2:
         00:00:00   21:03
       3:
         00:00:00   21:03
       4:
         00:00:00   21:03
       5:
         00:00:00   21:03
       6:
         00:00:00   21:03
     WEDAYS:
       2          1
       3          1
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
     nl:
       Zondag
       Maandag
       Dinsdag
       Woensdag
       Donderdag
       Vrijdag
       Zaterdag
       weekend
       werkdagen
   profil:
     1:
       EPOCH      1593036000
       PARA       21:03
       TIME       0123456
       WE_Override 0
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   profile_IDX:
     0:
       00:00:00   1
     1:
       00:00:00   1
     2:
       00:00:00   1
     3:
       00:00:00   1
     4:
       00:00:00   1
     5:
       00:00:00   1
     6:
       00:00:00   1
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
     nl:
       zo
       ma
       di
       wo
       do
       vr
       za
       $we
       !$we
Attributes:
   commandTemplate set Blumen on2 on
   devStateIcon {AttrVal($name,'disable','0') eq "0" ? ".*:general_an\@green" : ".*:general_aus\@red"}
   disable    0
   group      Beregnung
   room       System,Zeitschaltung


ich habe versucht in der definition und mit commandTemplate aber leider krieg ich es nicht hin.
FHEM auf Raspberry, 433mHz & Zigbee für Rollläden, Gartenbewässerung, Beleuchtung, Fußbodenheizung

juemuc

Hallo,

DEF        Blumen en 0123456|21:03|on

sollte funktionieren.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

Beta-User

Vermutlich sollte der ":" helfen (commandref-Zitat):
ZitatUse ":" to replace blanks in parameter and escape ":" in case you need it. So e.g. on-till:06\:00 will be a valid parameter.
Das ergäbe z.B.:
Blumen en 0123456|21:03|on2:on




Bei der Gelegenheit ein paar Anmerkungen:
- language ist optional; warum du hier englisch erzwingst, erschließt sich mir nicht. Generell richtet sich das bzgl. de/en nach der Einstellung in global, eigentlich macht das derzeit nur fpür nl und fr Sinn, die gibt es in global nicht.
- 0-6 ist überflüssig, das macht WDT "sowieso", wenn nichts angegeben ist. Ich finde das übersichtlicher und würde also mit dem hier ins Rennen gehen:
Blumen 21:03|on2:on

- generell sind on/off-Befehle besser in eigenen Devices untergebracht (Stichwort SetExtensions). Warum hier überhaupt irgendein dummy dazwischen ist, wäre ggf. auch nochmal zu überlegen, ich vermute irgendeine überflüssige Kaskade von Abfragen auf Werte, auf die man auch direkt zugreifen könnte (z.B. den state des WDT, falls der nicht besser direkt - ggf. vermittelt über eine disable-Cond oder Perl-Code) schalten soll...)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Müller

Blumen en 0123456|21:03|on

funktioniert nicht.

denanderen Vorschlag probiere ich morgen mal aus.
(":" habe ich schon in verschiedenen Varainten getestet, .....)
FHEM auf Raspberry, 433mHz & Zigbee für Rollläden, Gartenbewässerung, Beleuchtung, Fußbodenheizung

Beta-User

Hmm, also nochmal im Detail:

"Eigentlich" hätte es schon mit deinem Code klappen sollen. Aus dem list ist zu erkennen, dass du nicht auf der aktuellsten Version von WDT bist, bitte mache daher zuerst mal ein update.

Auch juemuc's Variante sollte gehen, da müßte dann aber das commandTemplate angepaßt werden auf
set $NAME  on1 $EVENT

Persönlich mag ich deine  hartcodierte Variante und auch diese Anpassung nicht so sehr, daher mein Vorschlag mit den Doppelpunkten. Dafür müßte das commandTemplate aber auf den (nicht-Heizungs-) defaultset $NAME  $EVENT
Der sollte automatisch eingestellt werden, wenn du das Attribut vor dem Neustart nach dem update löschst, speicherst und nach dem update den restart durchgeführt hast.

Wie immer: es müßten eigentlich viele Wege nach Rom führen, es muß halt zueinander passen...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Müller

Hallo,

habe es erst mit Verspätung getestet, da ich gestern nicht fit war ....

Blumen en 0123456|09:08|on2:on

funktioniert wie gewünscht. vielen Dank

(Blumen en 0123456|21:03|on  hat den reading state verändert, aber nicht das das reading on2)
FHEM auf Raspberry, 433mHz & Zigbee für Rollläden, Gartenbewässerung, Beleuchtung, Fußbodenheizung