Condition d'une automatisation sur les event.summary du calendar.list_events?

Condition d’une automatisation sur les event.summary du calendar.list_events ?

Débutant sous HA (et venant de Jeedom), j’ai intégré tout ce dont j’avais besoin pour automatiser mon chauffage dans la maison etc. Mais j’ai la gestion d’un cas : la présence des jumeaux de ma chérie en garde alternée (pour ne pas chauffer leurs chambres et rester sur ‹ eco › ou ne pas allumer leur sdb avant leur douche comme ils ne sont pas là).

J’ai ces périodes où ils sont à la maison dans un calendrier google. (L’event s’appel « TWIX » et j’ai aussi leur période de vacances à la maison « VACS », les jours de télétravail « TT » etc.)

Sous Jeedom, la condition de la présence d’un event était nativement sur tous les évents actifs du moment mais ce n’est pas le cas sous HA :confused:

J’ai vu que depuis une récente maj, on peut remonter une liste d’event via le service calendar.list_events (de date à date ou sur x heure(s) et donc les actifs du jour).
Peut-on effectuer des conditions sur ces « summary actifs » ? et si oui comment ?

Ou faut-il obligatoirement passer par une automatisation de switch que l’on passe à « on » via un trigger.calendar au start event ? (et que chacun de mes events ne commencent pas à la même heure si non ça ne passe à « on » qu’un seul switch)

Et j’avoue être perdu avec le YAML et tout ce que je pu voir un peu partout c’est sur des notifs mobile/telegram sur cette liste d’events.

service: calendar.list_events
data:
  duration:
    hours: 24
target:
  entity_id: calendar.mongooglecalendar

qui me remonte (dans mon cas ajd)

events:
  - start: "2023-10-27T16:00:00+02:00"
    end: "2023-11-03T12:00:00+01:00"
    summary: TWIX
  - start: "2023-10-27T16:00:00+02:00"
    end: "2023-11-03T18:00:00+01:00"
    summary: VACS

→ Mon cheminement jusqu’à là:

A l’origine, j’avais tout conditionné :

condition: state
entity_id: calendar.mongooglecalendar
attribute: message
state: TWIX

Mais je me suis aperçu que ça remonte à true que l’event soit « en cours » ou « à venir »
Du coup je suis passé à :

{% if state_attr( 'calendar.mongooglecalendar', 'message') == 'TWIX'
and as_timestamp ( now() ) > as_timestamp (state_attr('calendar.mongooglecalendar', 'start_time'))
%} {% endif %}

Mais avec l’arrivé de leurs vacances, j’ai vu que
state_attr( 'calendar.mongooglecalendar', 'message')
ne remonte qu’1 seul event du calendrier

et du coup si je veux tester TWIX et VACS, le test :
if state_attr( 'calendar.mongooglecalendar', 'message') == 'VACS'
remonte à false alors que l’event est bien présent.

Je suis parti sur des switchs que je passe à ON quand l’event commence, mais ayant TWIX et VACS commençant en même temps, seul le switch « TWIX LA » passe à ON.

Merci à vous !

Ma config:

version core-2023.10.5
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.11.5
os_name Linux
os_version 6.1.21-v8
arch aarch64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 5000
Installed Version 1.33.0
Stage running
Available Repositories 1316
Downloaded Repositories 3
Home Assistant Cloud
logged_in true
subscription_expiration 12 septembre 2024 à 02:00
relayer_connected true
relayer_region eu-central-1
remote_enabled true
remote_connected true
alexa_enabled true
google_enabled true
remote_server eu-central-1-0.ui.nabu.casa
certificate_status ready
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 11.1
update_channel stable
supervisor_version supervisor-2023.10.1
agent_version 1.6.0
docker_version 24.0.6
disk_total 58.0 GB
disk_used 5.8 GB
healthy true
supported true
board rpi3-64
supervisor_api ok
version_api ok
installed_addons Z-Wave JS (0.2.1), Samba share (10.0.2), File editor (5.6.0), Terminal & SSH (9.7.1), Studio Code Server (5.13.0), Node-RED (14.6.3)
Dashboards
dashboards 1
resources 1
views 3
mode storage
Recorder
oldest_recorder_run 23 octobre 2023 à 16:30
current_recorder_run 28 octobre 2023 à 09:22
estimated_db_size 40.64 MiB
database_engine sqlite
database_version 3.41.2

Salut,
Perso je ne m’embête pas à faire un gros calendrier pour traiter les évènements 1 à 1 ensuite, j’ai pris le partie depuis 1 calendier gmail de faire X calendriers HA

#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- cal_id: xxxx@gmail.com
  entities:
    - device_id: télétravail
      name: Télétravail
      search: "#Télétravail"

    - device_id: poubelle_menagere
      name: Poubelle ménagère
      search: "#ménagère"

    - device_id: poubelle_recyclable
      name: Poubelle recyclable
      search: "#recyclable"
    - device_id: ménage
      name: Ménage
      search: "#Ménage"

Ainsi j’ai mes calendriers qui sert de déclencher dans les automatisations respectives, et je peux aussi me servir des conditions on/off individuelles

![image|690x378](upload://yUEOIlgnTjFlr12zXEzk59nusSB.png)

Les entités sont assez nombreuses au final (et donc ça tiens pas forcement facilement dans 1 vieux) mais c’est le seul inconvénient. En plus je pense que j’aurai le même souci avec autant d’events

Ouais c’est ce que j’ai vu comme « solution de contournement » mais j’ai un peu de tout sous les calendriers google et beaucoup trop l’habitude de m’en servir au quotidien et pas trop envie de dupliquer ce qui existe déjà.
Et puis j’ai pour habitude, que si une donnée existe c’est que l’on peut l’exploiter. Là c’est juste le comment… et comme je n’ai pas les connaissances suffisante je suis en PLS derrière mes 32654012 onglets de posts de community.home-assistant.io :weary:

Je vois pas trop la différence… La gestion du calendrier coté google ne change pas…
La seule différence, c’est que tu mets le ‹ filtre › coté config HA plutot que coté Automatisation HA

Je crois que suis passé complétement à côté de ton conseil et je n’ai pas compris le :
"filtre" coté config HA plutot que coté Automatisation HA"

et que je me doc sur le
cal_id: xxx

(peut-être que l’image que tu as voulu poster étant parlante)

Dans mon cas j’ai 1 calendrier Google (cal_id) dans lequel il y a tout mes rdv, etc et j’en fait dans cet extrait 4 entités distinctes dans HA (télétravail, poubelle x 2, ménage),avec le ‹ search ›
Chaque entité me sert dans mes automatisations en temps que déclencheur individuellement, plutôt qu’une liste générale des événements à un instant T comme le fait jeedom

Je pensais avoir répondu mais il était toujours en brouillon …

Ok je viens de comprendre un truc, depuis la version 2022.06 il n’y a plus de google_calendar.yaml de créé automatiquement (mon installation datant de cette été), pour ça que je ne trouvais pas où tu paramétrais tes cal_id supplémentaires. (et la doc est en mode on n’en parle plus, mais on le fout quand même tout en bas dans More Config. pour ceux qui l’utilisent encore).
Mais en le créant manuellement c’est toujours fonctionnel.

Et de ce je comprends le calendar.list_events (v 2023.07) n’est pas utilisable comme je le souhaite directement ou alors via un moyen détourné pas encore exploité parce que les anciens/connaisseurs utilisent déjà un truc fonctionnel d’avant.

1 « J'aime »

La doc officielle donne des exemples, tant qu’elle n’est pas remise à jour, c’est difficile de tenter autre chose à mon avis