Re: fragen zum widget
Verfasst: 26. Nov 2024 21:33
Wobei das Alter zu einem bestimmten Datum auszurechnen (bei bekanntem Geburtsdatum) keine große Herausforderung darstellen sollte...
...Das ist natürlich vollkommen richtig, das war auch meine ursprüngliche Idee. Aber das Geburtsjahr ist in meinem ICS-Kalender nicht vorhanden. Dieser Kalender wird in Mozilla-Thunderbird aus den Kontakten separat generiert, leider nur mit dem aktuellen - und falls gewünscht auch mit einem historischen und auch zukünftigen - Datum, wobei man Historie und Zukunft selbst festlegen kann. Es wird dann für das jeweilige Jahr ein entsprechendes "Satzbündel" generiert.
Code: Alles auswählen
url="http://<openHAB>:8080/static/geburtstage.ics"
Code: Alles auswählen
BEGIN:VCALENDAR
PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN
VERSION:2.0
BEGIN:VEVENT
CREATED:20241127T214111Z
LAST-MODIFIED:20241127T221501Z
DTSTAMP:20241127T221501Z
UID:900b5910-3c95-4673-aba7-afa1adbbcbd7
SUMMARY:birthday Bagira (60)
RRULE:FREQ=YEARLY;COUNT=3;BYMONTH=11;BYMONTHDAY=27
DTSTART;VALUE=DATE:20241127
DTEND;VALUE=DATE:20241128
TRANSP:TRANSPARENT
X-MOZ-GENERATION:3
END:VEVENT
BEGIN:VEVENT
CREATED:20241127T221419Z
LAST-MODIFIED:20241127T221439Z
DTSTAMP:20241127T221439Z
UID:900b5910-3c95-4673-aba7-afa1adbbcbd7
SUMMARY:birthday Bagira (61)
RECURRENCE-ID;VALUE=DATE:20251127
DTSTART;VALUE=DATE:20251127
DTEND;VALUE=DATE:20251128
TRANSP:TRANSPARENT
X-MOZ-GENERATION:3
END:VEVENT
BEGIN:VEVENT
CREATED:20241127T221444Z
LAST-MODIFIED:20241127T221501Z
DTSTAMP:20241127T221501Z
UID:900b5910-3c95-4673-aba7-afa1adbbcbd7
SUMMARY:birthday Bagira (62)
RECURRENCE-ID;VALUE=DATE:20261127
DTSTART;VALUE=DATE:20261127
DTEND;VALUE=DATE:20261128
TRANSP:TRANSPARENT
X-MOZ-GENERATION:3
END:VEVENT
END:VCALENDAR
Das ist so nicht ganz richtig.BaluderBaer hat geschrieben: ↑27. Nov 2024 23:34 wenn ich dich jetzt richtig verstanden habe, setzt du den wert pro geburstag per hand.
Das geht bestimmt mit "split" und einer anschliessenden Subtraktion. Da ist aber @udo1toni der bessere Ansprechpartner.BaluderBaer hat geschrieben: ↑28. Nov 2024 08:13 wenn ich hinter dem name ( title ) das geburtsjahr vom kalender mituebergebe, ist es schwierig dies dann da rauszuloeschen, in der zeile subtitle einzufuegen und daraus das alter zu errechnen ?
Code: Alles auswählen
Geburtstag, Balu der Bär, 1997
Code: Alles auswählen
=items.remind_birth1_Title_2.state.split(",")[1] + " " + (Number.parseInt(dayjs().format('YYYY ')) - Number.parseInt(items.remind_birth1_Title_2.state.split(", ")[2]) )
Code: Alles auswählen
component: oh-label-cell
config:
color: teal
icon: material:cake
item: remind_birth1_Begin_0
label: =items.remind_birth1_Title_2.state.split(",")[1] + " " +
(Number.parseInt(dayjs().format('YYYY ')) -
Number.parseInt(items.remind_birth1_Title_2.state.split(", ")[2]) )
on: "true"
stateStyle:
color: red
fontSize: 21px
subtitle: =items.remind_birth1_Title_2.state.split(",")[1] + " hat " +
items.remind_birth1_Title_2.state.split(",")[0]
title: =Number.parseInt(items.remind_birth1_Title_2.state.split(", ")[2])
Code: Alles auswählen
SUMMARY:Balu der Bär (61)
Code: Alles auswählen
SUMMARY:Birthday, Balu der Bär (61)
Code: Alles auswählen
Birthday, Balu der Bär (61)
Code: Alles auswählen
=items.remind_birth1_Title_1.state.split(",")[1] + " " + items.remind_birth1_Begin_1.displayState
Ich vermute mal, das liegt an dem Parameter "datetimeStart" bzw."Start" in der UI. Da hast du vermutlich "1" drin stehen. Das solltest du dann auf "0" ändern.BaluderBaer hat geschrieben: ↑4. Dez 2024 12:12 aber das ist eigendlich nicht mein hauptproblem ( was ich zur zeit suche )
Code: Alles auswählen
//------------------------------------------ Geburtstagskalender -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Bridge icalendar:calendar:birthday "Geburtstage " @ "Arbeitszimmer" [ url="http://192.168.178.76:8080/static/geburtstage_2024.ics", refreshTime=720 ]
Thing icalendar:eventfilter:birth1 "Geburtstage" (icalendar:calendar:birthday) @ "Esszimmer" [ maxEvents=3, refreshTime=720, datetimeUnit="DAY", datetimeStart=0, datetimeEnd=31, datetimeRound=true, textEventField="SUMMARY", textEventValue="Geburtstag", textValueType="TEXT" ]