From 67a0a03093b0c31626e8acc25eaa5b422bc98cc0 Mon Sep 17 00:00:00 2001 From: Commander1024 Date: Fri, 10 Jul 2026 12:24:01 +0200 Subject: [PATCH] Add template sensors for calendar events - somewhat working --- template.yaml | 45 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 43 insertions(+), 2 deletions(-) diff --git a/template.yaml b/template.yaml index 18b08ee..baa96c8 100644 --- a/template.yaml +++ b/template.yaml @@ -143,5 +143,46 @@ state: > {{ (( states('sensor.wan_out_derivative') | float * 8 / 1000000 ) | round(2)) }} unit_of_measurement: 'Mbps' - attributes: - last_reset: '1970-01-01T00:00:00+00:00' + +# ── Kalender-Ereignisse für epaperframe ── +# Quelle: calendar.privat und calendar.tkrz_kalender +# Diese Sensoren lesen das aktuelle (laufende) Event aus dem Kalendereintrag. + - text_sensor: + - name: "Kalender heute Privat" + unique_id: kalender_heute_privat + state: >- + {% set desc = state_attr('calendar.privat', 'description') or '' %} + {% set msg = state_attr('calendar.privat', 'message') or '' %} + {% if desc or msg or state_attr('calendar.privat', 'start_time') %} + {{ (msg if msg else desc) | replace('\n', ', ') | trim | truncate(60) }} + {% else %} + - + {% endif %} + - name: "Kalender heute Arbeit" + unique_id: kalender_heute_arbeit + state: >- + {% set desc = state_attr('calendar.tkrz_kalender', 'description') or '' %} + {% set msg = state_attr('calendar.tkrz_kalender', 'message') or '' %} + {% if desc or msg or state_attr('calendar.tkrz_kalender', 'start_time') %} + {{ (msg if msg else desc) | replace('\n', ', ') | trim | truncate(60) }} + {% else %} + - + {% endif %} + - name: "Kalender heute Privat Uhrzeit" + unique_id: kalender_heute_privat_uhrzeit + state: >- + {% set st = state_attr('calendar.privat', 'start_time') %} + {% if st %} + {{ as_timestamp(st) | timestamp_custom('%H:%M', true) }} + {% else %} + - + {% endif %} + - name: "Kalender heute Arbeit Uhrzeit" + unique_id: kalender_heute_arbeit_uhrzeit + state: >- + {% set st = state_attr('calendar.tkrz_kalender', 'start_time') %} + {% if st %} + {{ as_timestamp(st) | timestamp_custom('%H:%M', true) }} + {% else %} + - + {% endif %}