Nextcloud-Kalender soll Shelly triggern -- nur wie?

white_rabbit

New member
Hallo.
Wir nutzen ein paar Shellys, um damit Anzeigeboards smart an-/ausschalten zu können. Nun wurde die Anzahl der Shellys immer größer, so dass wir eine einheitliche Oberfläche für alles installiert haben. Daher laufen sämtliche Shellys jetzt mit der alternativen Firmware Tasmota und wurden unter Home Assistant auch problemlos sofort erkannt.
Der nächste Schritt sollte sein, dass ein Kalender, der in unserer Nextcloud für alle freigegeben ist, als Trigger für die Shellys dienen soll. Das funktioniert aber bisher nicht richtig. Ich habe den Kalender mit allen Ferien und Feiertagen bereits unter Home Assistant eingerichtet und die Ferien/Feiertage werden dort auch ordnungsgemäß als Ganztagesereignisse angezeigt.

Die Idee ist relativ einfach: Immer dann, wenn irgendein ein Ferien-/Feiertag (oder einfach nur irgendein Eintrag) in diesem Kalender steht, sollen die Shellys aus bleiben. An allen anderen Wochentagen sollen sie morgens um 07 Uhr an- und nachmittags wieder ausgeschaltet werden. Daher habe ich versucht, eine Automatisierung einzurichten, in der dies steht:
Screenshot_20230311_190339.png
und dann bei den Bedingungen das hier:
Screenshot_20230311_190411.png
Weiter geht es leider nicht -- ich vermute es liegt daran, dass bei den Attributen nichts weiter als "Offset reached" auswählbar ist?
Daher die Frage, wie man das zuverlässig und elegant lösen kann?
Danke für einen guten Tipp.
 
Hi. Ja, das habe ich gesehen und daher stammt auch die Syntax, wie der Kalender überhaupt abonniert wurde.
Aber irgendwas scheint dennoch nicht ganz richtig zu laufen. Wenn ich unter
Einstellungen -> Entitäten auf den abonnierten Kalender gehe, erscheint dies:
Screenshot_20230311_191400.png
Übrigens: Newbie ... daher sorry, wenn das Anfängerfragen sind...
 
Hier als Beispiel von Urlaub und Urlaubmodus die Funktion ist dennoch die selbe

YAML:
- alias: Kalender Urlaub
  id: kalender_urlaub
  trigger:
    - platform: calendar
      event: start
      entity_id: kalender.urlaub
    - platform: calendar
      event: end
      entity_id: kalender.urlaub
  condition:
    - condition: template
      value_template: "{{ 'Urlaub' in trigger.calendar_event.summary }}"
  action:
    - if:
        - "{{ trigger.event == 'start' }}"
      then:
        - service: input_boolean.turn_on
          entity_id: input_boolean.urlaub
      else:
        - service: input_boolean.turn_off
          entity_id: input_boolean.urlaub
  mode: queued
 
Danke -- leider verstehe ich dennoch bisher nicht den Unterschied zwischen einem lokalen Kalender und dem abonnierten Nextcloud-Kalender. Wenn ich einen lokalen Kalender anlege, gibt es bei den Attributen und Zuständen alle möglichen Einstellungen doch beim abonnierten Nextcloud-Kalender fehlt das komplett. Sehe ich das also richtig, dass die Intergration des Nextcloud-Kalenders nur direkt über die
Code:
configuration.yaml
klappt??
 
Lokaler Kalender ist das was du im ha Kalender einträgst, nextcloud oder sonstige abonnierte sind ics Kalender, und ja nextcloud muß manuell in der configuration eingetragen werden.

Muss so in der config angegeben werden

YAML:
#nextcloud
  url: deineURLzuNEXTCLOUD
  username: !secret nextcloud_username
  password: !secret nextcloud_password
 
Hallo.
Wir haben es nun soweit hinbekommen, dass ein Kalenderevent wie z.B. "Osterferien" einen Shelly schaltet. Das sieht also soweit schon mal ganz gut aus. Allerdings steht im Moment bei der Entität:
Kalender -> Attribut: Message -> Zustand: Osterferien
Wir haben bereits versucht, dort mit Wildcard-Einträge zu arbeiten aber das funktioniert nicht. Also weder .* noch "*" o.ä. Geht das an dieser Stelle nicht mit so einer Einstellung oder wie lautet die Syntax?
 
Gerade schreibt mein Kollege mir, dass er das hier gefunden hat:
Code:
{{ state_attr('calendar.kalender', 'all_day') | default(false, true) }}
Damit kann nach Terminen gesucht werden die den Ganzen Tage laufen. Und dann die Aktion auslösen lassen....
 
Könnte man so abfragen und erweitern...

Dies ändert dir die atribute z.B. Ostern auf true und dies nur für den angegebenen Zeitraum ein Tag später steht unter Ostern wieder Ostern -> natürlich nur unter HA dies wird nicht im Kalender selbst geändert.

YAML:
      state: >
        {% set cond = state_attr('calendar.kalender', 'all_day') %}
        {% if cond == 'Ostern' %}
          true
        {% elif cond == 'Fronleichnam' %}
          true
        {% elif cond == 'Pfingsten' %}
          true
        {% elif cond == 'Halloween' %}
          true
        {% endif %}
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
4.379
Beiträge
45.227
Mitglieder
3.980
Neuestes Mitglied
Joe33
Zurück
Oben