FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: rallye am 03 Februar 2018, 13:17:34

Titel: Ferienkalender modeStart HEX-Zeichen ...
Beitrag von: rallye am 03 Februar 2018, 13:17:34
Ich habe meinen Ferienkalender wie im WIKI https://wiki.fhem.de/wiki/Wochenende,_Feiertage_und_Schulferien (https://wiki.fhem.de/wiki/Wochenende,_Feiertage_und_Schulferien) empfohlen nach diesem Vorbild https://forum.fhem.de/index.php/topic,36244.msg299631.html#msg299631 (https://forum.fhem.de/index.php/topic,36244.msg299631.html#msg299631) als Datei gespeichert und entsprechend dem erstgenannten WIKI den dummy AT_Ferientag
Internals:
   NAME       AT_Ferientag
   NR         97
   STATE      0
   TYPE       dummy
   READINGS:
     2018-02-03 00:00:10   state           0
Attributes:
   room       ferien_test


bzw. das Notify nfy_AT_Ferien
Internals:
   .COMMAND   {fhem "set AT_Ferientag " . (ReadingsVal("AT_Ferien", "modeStart", "") =~ "ferien" ? 1: 0) }
   DEF        AT_Ferien {fhem "set AT_Ferientag " . (ReadingsVal("AT_Ferien", "modeStart", "") =~ "ferien" ? 1: 0) }
   NAME       nfy_AT_Ferien
   NOTIFYDEV  AT_Ferien
   NR         135
   NTFY_ORDER 50-nfy_AT_Ferien
   REGEXP     AT_Ferien
   STATE      2018-02-03 00:00:10
   TYPE       notify
   READINGS:
     2018-02-01 16:42:45   state           active
Attributes:
   room       ferien_test

definiert. Leider wird der Dummy NIE auf 1 gesetzt, da "modeStart" anstatt für Menschen lesbare Zeichen nur irgendwelche HEX-Codes (aktuell: 38728c2fb57148c1b23e46db2ab82ed6) enthält (ich möchte an dieser Stelle festhalten, dass in Niederösterreich heute der erste Ferientag der Semesterferien ist.

Der Befehl get AT_Ferien  text modeStart ergibt korrekter Weise eine Bildschirmausgabe von "03.02.18 00:00 Semesterferien" in einer netten Box, die mit ok zu quittieren ist.

Aufgrund der Hex-Zeichen kann die ReadingsVal-Abfrage im Notify wie erwähnt nicht "true" werden. Ich möchte den Umweg über eine Subroutine vermeiden mit der ich das get AT_Ferien  text modeStart abfrage und dann den Dummy entsprechend setze (wie als Beispiel hier ==> https://wiki.fhem.de/wiki/Google-Kalender_zur_Steuerung_von_Dummies (https://wiki.fhem.de/wiki/Google-Kalender_zur_Steuerung_von_Dummies) beschieben, sondern ganz simpel mit einem PERL/FHEM-Befehl lt. WIKI die Abfrage machen. Gibt es da eine Möglichkeit die ich als noch Anfänger noch nicht kenne ? Danke für die Hinweise und Anregungen !!!

Der Vollständigkeit halber noch das Listing meines Kalenders:
Internals:
   DEF        ical file ferien.ics 86400
   NAME       AT_Ferien
   NOTIFYDEV  global
   NR         98
   NTFY_ORDER 50-AT_Ferien
   STATE      triggered
   TYPE       Calendar
   .fhem:
     iCalendar  BEGIN:VCALENDAR
VERSION:2.0
PRODID:icalendar-ruby
CALSCALE:GREGORIAN
METHOD:PUBLISH
BEGIN:VEVENT
DTSTAMP:20180124T091659Z
UID:38728c2f-b571-48c1-b23e-46db2ab82ed6
DTSTART;VALUE=DATE:20180203
DTEND;VALUE=DATE:20180204
DESCRIPTION:Semesterferien 2018 in Niederösterreich - Importiert von Ferien
wiki.de
SUMMARY:Semesterferien
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20180124T091659Z
UID:84345cac-d604-413d-9495-21c74891882a
DTSTART;VALUE=DATE:20180205
DTEND;VALUE=DATE:20180211
DESCRIPTION:Semesterferien 2018 in Niederösterreich - Importiert von Ferien
wiki.de
SUMMARY:Semesterferien
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20180124T091659Z
UID:d8b920c6-b471-43c8-90b6-e5a1f6520f40
DTSTART;VALUE=DATE:20180511
DTEND;VALUE=DATE:20180512
DESCRIPTION:Pfingstferien 2018 in Niederösterreich - Importiert von Ferienw
iki.de
SUMMARY:Pfingstferien
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20180124T091659Z
UID:22f8f969-691e-44c1-af3d-a6e8ff89d602
DTSTART;VALUE=DATE:20180519
DTEND;VALUE=DATE:20180523
DESCRIPTION:Pfingstferien 2018 in Niederösterreich - Importiert von Ferienw
iki.de
SUMMARY:Pfingstferien
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20180124T091659Z
UID:ae3c7f85-c251-4b33-923a-7e1a464cadf9
DTSTART;VALUE=DATE:20180324
DTEND;VALUE=DATE:20180404
DESCRIPTION:Osterferien 2018 in Niederösterreich - Importiert von Ferienwik
i.de
SUMMARY:Osterferien
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20180124T091659Z
UID:47fe7574-7d57-433e-aa64-ea899796acbc
DTSTART;VALUE=DATE:20180630
DTEND;VALUE=DATE:20180903
DESCRIPTION:Sommerferien 2018 in Niederösterreich - Importiert von Ferienwi
ki.de
SUMMARY:Sommerferien
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20180124T091659Z
UID:8546415d-d074-4d3b-9726-558e6d9e3c74
DTSTART;VALUE=DATE:20181115
DTEND;VALUE=DATE:20181116
DESCRIPTION:Weihnachtsferien 2018 in Niederösterreich - Importiert von Feri
enwiki.de
SUMMARY:Weihnachtsferien
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20180124T091659Z
UID:9c3a6919-ab51-4148-8faa-09011883efee
DTSTART;VALUE=DATE:20181224
DTEND;VALUE=DATE:20190107
DESCRIPTION:Weihnachtsferien 2018 in Niederösterreich - Importiert von Feri
enwiki.de
SUMMARY:Weihnachtsferien
END:VEVENT
END:VCALENDAR

     interval   86400
     lastUpdate 2018-02-03 00:00:10
     lastid     8
     lstUpdtTs  1517612410.01078
     nextUpdate 2018-02-04 00:00:10
     nextWake   2018-02-04 00:00:00
     nextWakeTs 1517698800
     nxtUpdtTs  1517698810.01078
     type       file
     url        ferien.ics
     vevents:
   READINGS:
     2018-02-03 00:00:10   lastUpdate      2018-02-03 00:00:10
     2018-01-24 15:25:44   modeAlarm       
     2018-02-03 00:00:00   modeAlarmOrStart 38728c2fb57148c1b23e46db2ab82ed6
     2018-01-24 15:25:44   modeAlarmed     
     2018-02-03 00:00:10   modeChanged     
     2018-01-24 15:25:44   modeEnd         
     2018-01-24 15:25:44   modeEnded       
     2018-02-03 00:00:00   modeStart       38728c2fb57148c1b23e46db2ab82ed6
     2018-02-03 00:00:10   modeStarted     
     2018-02-03 00:00:10   modeUpcoming    9c3a6919ab5141488faa09011883efee;47fe75747d57433eaa64ea899796acbc;84345cacd604413d949521c74891882a;ae3c7f85c2514b33923a7e1a464cadf9;8546415dd0744d3b9726558e6d9e3c74;22f8f969691e44c1af3da6e8ff89d602;d8b920c6b47143c890b6e5a1f6520f40
     2018-02-03 00:00:10   nextUpdate      2018-02-04 00:00:10
     2018-02-03 00:00:10   nextWakeup      2018-02-04 00:00:00
     2018-02-03 00:00:10   state           triggered
Attributes:
   room       ferien_test
   update     async

Titel: Antw:Ferienkalender modeStart HEX-Zeichen ...
Beitrag von: rallye am 03 Februar 2018, 18:12:29
nach weiteren Recherchen komme ich zu dem Schluss, dass das Szenario vor dem Joana F. vor bereits fast 4 Jahren hier https://forum.fhem.de/index.php/topic,11218.msg76192.html#msg76192 (https://forum.fhem.de/index.php/topic,11218.msg76192.html#msg76192) "gewarnt" hat leider eingetreten ist. Gibt es mittlerweile eine Möglichkeit die "DESCRIPTION" ohne subs (ReadingsVal/Value/...) auszulesen ? Ich sehe derzeit nur die Möglichkeit abzufragen ob modeStart leer ist oder nicht. Nachdem der Kalender vom Ferienwiki importiert wurde darf ich einmal davon ausgehen, dass nur Ferienevents drinnen stehen ...

Bessere (elegantere) Ideen herzlich willkommen !