Problem mit ReadingsVal von Calendar Device

Begonnen von Brandensittich, 29 April 2020, 16:23:56

Vorheriges Thema - Nächstes Thema

Brandensittich

Hallo zusammen,

ich will einen Kalender abfragen und habe mir den Wiki Eintrag dazu angesehen:
https://wiki.fhem.de/wiki/Wochenende,_Feiertage_und_Schulferien#Feiertage_mittels_Internet-Kalender

Das Kalenderdevice sieht wie folgt aus:
Internals:
   DEF        ical url https://p41-caldav.icloud.com/*************************************************** 300
   FUUID      5e8a03c0-f33f-7637-5ec1-99312da5df595849
   NAME       Urlaubskalender
   NOTIFYDEV  global
   NR         20
   NTFY_ORDER 50-Urlaubskalender
   STATE      triggered
   TYPE       Calendar
   READINGS:
     2020-04-29 16:19:51   calname         Urlaub (FHEM)
     2020-04-29 16:19:51   lastUpdate      2020-04-29 16:19:49
     2020-04-05 17:52:18   modeAlarm       
     2020-04-29 16:19:34   modeAlarmOrStart A5D969FE4ED24CCB8E6BB0530E71411E
     2020-04-05 17:52:18   modeAlarmed     
     2020-04-29 16:02:06   modeChanged     
     2020-04-05 21:00:00   modeEnd         CCB1EDD9C7864AF1B4EA50C7BDFF70BA
     2020-04-05 21:03:59   modeEnded       
     2020-04-29 16:19:34   modeStart       A5D969FE4ED24CCB8E6BB0530E71411E
     2020-04-29 16:02:06   modeStarted     
     2020-04-29 16:00:00   modeUpcoming   
     2020-04-29 16:19:51   nextUpdate      2020-04-29 16:24:49
     2020-04-29 16:19:51   nextWakeup      2020-04-29 16:24:49
     2020-04-29 16:19:51   state           triggered
Attributes:


Der Notify sieht so aus:
Internals:
   DEF        Urlaubskalender {
        fhem "set Urlaubskalendertag " . (ReadingsVal("Urlaubskalender", "modeStart", "") =~ "urlaub" ? 1: 0) }
   FUUID      5ea987ab-f33f-7637-43f7-c9324518faa0e723
   NAME       Urlaubskalender.notify
   NOTIFYDEV  Urlaubskalender
   NR         23
   NTFY_ORDER 50-Urlaubskalender.notify
   REGEXP     Urlaubskalender
   STATE      2020-04-29 16:19:51
   TRIGGERTIME 1588169991.64496
   TYPE       notify
   READINGS:
     2020-04-29 16:14:03   state           active
Attributes:


Im Kalender eingetragen ist ein Termin mit Betreff "Testurlaub". Im Reading sehe ich einen "verschlüsselten" String "A5D969FE4ED24CCB8E6BB0530E71411E". Damit schlägt die Prüfung (ReadingsVal("Urlaubskalender", "modeStart", "") =~ "urlaub" dann fehl.
Warum ist da der Termin nicht im Klartext drin? Muss ich da noch was umwandeln?

Viele Grüße
Christian!

betateilchen

Zitat von: Brandensittich am 29 April 2020, 16:23:56
Im Reading sehe ich einen "verschlüsselten" String "A5D969FE4ED24CCB8E6BB0530E71411E".

Das ist kein verschlüsselter String, sondern die uuid des Kalendereintrages. Mit dieser uid musst Du noch den Text aus dem Kalendereintrag lesen.

Wie das geht, steht (mit funktionierenden Beispielen!) in der commandref zum Calendar-Modul.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Brandensittich

Vielen Dank für die Info. Dann ist das Wiki-Beispiell so wie es dort dargestellt wurde nicht lauffähig.

Otto123

#3
Der Wiki Eintrag bezog sich offenbar auf die alte Version des Calendar Moduls
Ich habe das Wiki an der Stelle korrigiert. Erstmal quasi 1:1 nach der dort vorhandenen Logik. Funktioniert so, wobei es mir nicht gefällt.
Ich mache das nochmal anders.Ich habe es komplett überarbeitet.

Wie betateilchen schon sagte: es sind gute Beispiele in der commandref, an denen solltest Du Dich orientieren.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz