Der WeekdayTimer-Thread ab 2020

Begonnen von Beta-User, 10 September 2020, 16:42:29

Vorheriges Thema - Nächstes Thema

juemuc

Asche auf mein Haupt. Ich hatte die falsche Holiday-Datei gepflegt  ::)

Es passt alles. Vielen Dank
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

 :) kein Problem, Danke für die Rückmeldung!
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

mr_petz

Hey Beta-User,
Mir ist gerade was aufgefallen was mich einwenig verwirrt hat...
Wenn 8 oder !we definiert ist wird mir Profil 8 mit Werktage angezeigt aber nur mo bis fr gesetzt. Werktage sind eigentlich mo bis sa...
Könntest du das korrigieren oder siehst du das anders?
Besser wäre da Wochentage oder Wochentags als Profilanzeige oder?
Soll nur ein Hinweis und keine Krümelkackerei sein.
Danke und LG mr_petz

Beta-User

Zitat von: mr_petz am 30 Januar 2023, 22:33:23
Hey Beta-User,
Mir ist gerade was aufgefallen was mich einwenig verwirrt hat...
Wenn 8 oder !we definiert ist wird mir Profil 8 mit Werktage angezeigt aber nur mo bis fr gesetzt. Werktage sind eigentlich mo bis sa...
Könntest du das korrigieren oder siehst du das anders?
Na ja, ich habe das v.a. im Wesentlichen halt so übernommen, wie es "immer" war...

Das mit $we und !$we ist ja noch etwas komplexer, wenn man die noWeekend-Option in holiday2we kennt...

Zitat
Besser wäre da Wochentage oder Wochentags als Profilanzeige oder?
Soll nur ein Hinweis und keine Krümelkackerei sein.
Finde das keine Krümelkackerei, letztlich geht es darum, eine "verständliche" Benutzerführung zu haben. "Wochentags" wäre vielleicht ein Kompromiss, vielleicht auch "Arbeitstage" (um wegen des etwas ungewohnten Wordings einen gewissen Nachdenk-Schubs da stehen zu haben).

Allerdings habe ich irgendwann mal eine Änderung an den Internals gemacht, die uns bei FUIP auf die Füße gefallen ist (war kein großes Ding). Von daher sollte man eventuelle Änderungen dann so machen bzw. abstimmen, dass sowohl FTUI (das du betreust?) wie auch FUIP (das das ggf. aus dem FTUI-Code übernimmt?) keine Probleme damit haben.
(Und sich ggf. dann auch noch die anderen im Code vorkommenden Sprachen mal ansehen).
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

mr_petz

Ja ok Arbeitstage wäre natürlich richtig. Würde es sinn machen auch die Werktage einzuführen? Wäre dann z.Bsp. 9 und wkt oderso...

LG

juemuc

Hallo zusammen,

aus meiner Sicht wäre es vielleicht am sinnvollsten die Komplexität zu reduzieren. Wenn jemand immer die gleichen Tage hat, kann er dies ja über die Auswahl der Tage einfach definieren. Zusätzlich liefert noch die Variable $we true, wenn es sich um Sa, So oder um einen "Feiertag" laut holiday-Datei handelt. Reicht das nicht aus?
Ich versuche nun einmal die mir in den Sinn kommenden Konstellationen abzubilden:

  • gleichbleibende Tage für die Aktionen -> Auswahl der Tage Mo-So
  • Wochenende + Feiertag in der Woche -> Auswahl über "we" und Nutzung der globalen Variable holiday2we
  • Mo-Sa + Feiertag in der Woche -> Auswahl über "we" + Auswahl Sa und Nutzung der globalen Variable holiday2we
  • Nur "Feiertage aus holiday2we -> Auswahl über "we" + Auswahl aller Tageund Nutzung der globalen Variable holiday2we

Gibt es noch weitere Ausnahmen?
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).

mr_petz

@juemuc

mo-fr wäre !we
+ sa + Feiertage
= Werktage

LG

juemuc

@mr_petz,

was ist, wenn z.B. mi ein Feiertag ist und !we ausgewählt wurde? Wird dann der mi berücksichtigt? Ich würde !we nicht mehr definieren. Die Tage mo-fr auszuwählen sollte jedem möglich sein.
mo-fr + sa + Feiertage <> Werktage, da Feiertage keine Werktage sind.

So mein Verständnis.

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).

juemuc

Eine Einfache Formel wäre doch, dass alle definierten Tage verwendet werden, es sei denn, dass für diesen Tag die Variable $we=true ist. Das wäre eine einfache und verständliche Definition.

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).

mr_petz

@juemuc

Das ist mir schon klar. Du weist warum ich hier Frage...
Ich muss es halt für mein FTUI3 Modul wissen...

LG

juemuc

Ich weiß  8)

Deshalb bin ich auch der Meinung, dass es "Fhem-einheitlich" definiert werden sollte. Warten wir mal auf die Info von Beta-User.

Ich habe allerdings auch schon gemerkt, dass meine "Definition" nicht passt, da bei sa die Variable $we auch true liefert. Es ist wohl doch nicht so einfach, wie ich es mir gedacht hatte  :(
Ich überlege weiter. Vieleicht hat ja noch jemand eine zündende Idee für eine "einfache" Definition.

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).

juemuc

Kann mir jemand diese Info aus der Fhem-Referenz für "holiday2we" erklären? Vieleicht hilft das ja bei unsere Definition.

Falls sich einer der Elemente dieser Liste weekEnd nennt, dann wird nicht auf Samstag/Sonntag geprüft. Falls einer der Elemente noWeekEnd ist, und nicht "none" zurückliefert, dann ist $we 0.

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).

juemuc

So, ich habe heute Nachmittag ein wenig getestet. Wenn man in global bei "holiday2we" neben der Feiertagsdatei auch noch "weekEnd" mit Komma getrennt hinterlegt (z.B. "by,weekEnd"), wird bei "$we" das Wochenende nicht berücksichtigt. Dies aber als Voraussetzung für den Weekdaytimer zu verwenden, halte ich für Problematisch. So langsam gehen mir die Ideen aus.

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

Sorry, hatte nur Gelegenheit, das kurz zu überfliegen, und den Eindruck, dass wir vorab mal klarstellen sollten, dass eine Konstruktion wie "Sonntags, aber nicht am Wochenende" durchaus sinnvoll sein können...

Der WeekdayTimer kann das jedenfalls iVm. h2we abbilden, und ich habe definitiv keine Pläne, daran was zu ändern :) .

Zitat von: juemuc am 31 Januar 2023, 20:46:19
So, ich habe heute Nachmittag ein wenig getestet. Wenn man in global bei "holiday2we" neben der Feiertagsdatei auch noch "weekEnd" mit Komma getrennt hinterlegt (z.B. "by,weekEnd"), wird bei "$we" das Wochenende nicht berücksichtigt. Dies aber als Voraussetzung für den Weekdaytimer zu verwenden, halte ich für Problematisch.
Wieso ist das problematisch? Das ist so gewollt, weil:
- es Kulturkreise und Communities gibt, bei denen z.B. der "Sonntag" am Freitag ist;
- manche User eher nach Schichtplänen wohnen und leben denn nach der starren Wochentagsbenennung
- ...

Dass es schwierig ist, das ggf. in einem Widget abzubilden, ist soweit klar, aber bevor diese grundlegende Funktionalität nicht klar ist, macht es keinen großen Sinn, über "Etiketten" zu sprechen.

Die "9" ist übrigens bei DOIF schon irgendwie vorbelegt, und wenn, dann sollte man zuerst schauen, ob diese Vorbelegung ggf. auch für den WDT sinnvoll übernommen werden könnte.
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

juemuc

Hi Beta-User,
danke für Deine Antwort. Ich glaube, aufgrund Deiner Aussage noch einen Fehler in weekdaytimer erkannt zu haben.

Wenn ich bei einem dummy den Samstag (6) und !we (8) auswähle, sollte aufgrunde der Variable $we doch keine Aktion erfolgen, wenn (wie in meinem Fall) in der globalen Variablen holiday2we nur der Feiertagskalender "by" eingetragen ist. In meinem Testbeispiel wird in dem Beispiel die Aktion trotzdem durchgeführt.
Habe ich hier etwas falsch verstanden?
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).