Witam . Może ktoś pomoże w zrobieniu automatyzacji wydarzenia w kalendarzu. O co dokładnie chodzi . Mieszkam z paroma sąsiadami w naszej prywatnej kamienicy, Ustaliliśmy sobie że każdy z nas będzie wystawiał po kolei kosz z odpadami zmieszanymi . Czyli mieszkanie nr. 1 potem 2, 3, 4 itd . I znowu następna kolejka od nowa . Jak wspomniałem w HA mam integrację kalendarza gdzie wszystkie wydarzenia z wywozem śmieci aktualizują się automatycznie . Jak zrobić automatyzację aby np. co czwarty wywóz śmieci zmieszanych przychodziło mi powiadomienie, że teraz moja kolej wystawienia kubła .
Dodaj nowy kalendarz do HA
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTSTART;TZID=Europe/Warsaw:20250708T070000
DTEND;TZID=Europe/Warsaw:20250708T073000
RRULE:FREQ=WEEKLY;INTERVAL=4;COUNT=13
SUMMARY:Odpady zmieszane
DESCRIPTION:Twoja kolej wystawienia kubła (cykl 4‑tygodniowy)
LOCATION:Pod domem
STATUS:CONFIRMED
SEQUENCE:0
UID:94e70c02-0b65-4276-868d-ef407f10a26f
DTSTAMP:20250706T215657Z
BEGIN:VALARM
TRIGGER:-PT10M
ACTION:DISPLAY
DESCRIPTION:Przypomnienie o wystawieniu kubła
END:VALARM
END:VEVENT
END:VCALENDAR
Zapisz kod do pliku z roszeniem .ics
, np. odpady_zmieszane_2025_2026.ics
Następnie dodaj go do kalendarza w HA (Kalendarz lokalny)
Utwórz kalendarz
i zaznacz
Prześlij plik iCalendar (.ics)
Od kiedy (dnia) można edytować w kodzie np.
20250708T070000
= 8 lipca 2025 o 07:00
(rok, miesiąc, dzień, “T” godzina…
Dzięki bardzo za wyczerpujący wpis . Wieczorem będę próbować . Tylko zastanawia mnie jeden problem . To nie ma być cykl 4-tygodniowy, tylko ma to być cykl co czwarte kolejne wydarzenie, to samo wydarzenie, czyli wywóz śmieci zmieszanych . Czyli nawet jak zmienią datę wywozu to i tak powinno przyjść powiadomienie np. dzień przed czwartym wydarzeniem .
Myślałem, że regularnie - tygodniowo
To z innej beczki
Do configuration.yaml
dodaj licznik:
counter:
kolejka_dyzuru_smieci:
name: Kolejka dyżuru śmieci
initial: 1 # startujemy od nr 1
step: 1
minimum: 1
maximum: 4 # "masz" 4 sąsiadów
restore: true # po restarcie HA zachowuje wartość
Automatyzacja do wklejenia w trybie YAML:
alias: Odpady zmieszane – moja kolejka dyżuru
trigger:
- platform: state
entity_id: calendar.smieci # Nazwa kalendarza
to: 'on'
condition:
- condition: template
value_template: >
{{ state_attr('calendar.smieci', 'message') | lower == 'odpady zmieszane' }}
action:
- variables:
kolej_na_dzis: "{{ states('counter.kolejka_dyzuru_smieci') | int }}"
# Jeśli to Twoja kolej (np. Ty nr 2), to wyślij powiadomienie
- if:
- condition: template
value_template: "{{ kolej_na_dzis == 2 }}" # Jesteś Nr2
then:
- service: notify.mobile_app_nazwa
data:
title: Twoja kolej na kubeł!
message: Dziś Twój dyżur – wystaw odpady zmieszane.
# Przesuń licznik na kolejnej numer – reset jeśli był ostatni, w przeciwnym razie +1
- choose:
- conditions:
- condition: template
value_template: "{{ kolej_na_dzis == 4 }}" # ostatni w kolejce, liczenie odbędzie się od początku
sequence:
- service: counter.reset
target:
entity_id: counter.kolejka_dyzuru_smieci
default:
- service: counter.increment
target:
entity_id: counter.kolejka_dyzuru_smieci
mode: single
Automatyzacja zadziała tylko wtedy, gdy w Twoim kalendarzu (przykład calendar.smieci
) w aktywnym wydarzeniu znajduje się: Odpady zmieszane
.
Daj znać czy działa.
Komentarze- objaśnienia (# …) znikną po zapisaniu automatyzacji.
/
W automatyzacji dostosuj, do kalendarza który masz i dostosuj nazwę wydarzenia taką jaką trzymujesz w powiadomieniu z kalendarza.
Pierwszy post, to tylko do regularnych co 4 tygodnie, chyba że dokonasz zmian w kodzie.
Ale muszę utworzyć w HA nowy kalendarz jak to napisałeś w pierwszym poście , czy tylko wstawić nazwę mojego w automatyzacji ?