il se crée automatiquement quand google calendar est bien configuré je crois
Je ne l’ai pas. Je vois bien le calendrier via chrome sur le PC.
Par contre, il fait planter la page sur le le chrome android !
Je pense que je vais devoir le supprimer et le recharger
EDIT: supprimé, rechargé, même état. Pas de fichier yaml.
Je vais investiguer, mais on a pas beaucoup de trace dispo
EDIT2: En le créant à vide , il a été mis à jour , donc reconnu
Mais il a disparu du côté gauche de l’aperçu
Ma foi … on verra ça demain !
J’ai réinstallé HA sur un DD en btrfs sur virtual machine manager et j’ai pu activer le superviseur (et surtout file editor)
Le google agenda est revenue et j’ai fini par me plonger dans la syntaxe yaml (enfin, va falloir approfondir !)
Bref, j’ai fini par faire ma première automatisation fonctionnelle .
Reste à identifier le bon mode pour qu’elle se lance se relance tous les jours : Parallel , Restart ou Queue !
alias: Chauffage_si_Travail_clinique
description: Chauffage si Travail clinique
trigger:
- platform: calendar
event: start
offset: "-1:30:0"
entity_id: calendar.xxxxxxxxxx_gmail_com
condition:
- condition: state
entity_id: calendar.xxxxxxxxxx_gmail_com
attribute: message
state: Travail clinique
- condition: or
conditions:
- condition: state
entity_id: calendar.xxxxxxxxxx_gmail_com
attribute: message
state: Travail Clinique
action:
- service: climate.set_temperature
data:
temperature: 20
target:
area_id: rez_de_chaussee
device_id: xxxxxxxxxxxxxxxxxxx
entity_id: climate.rez_de_chaussee
mode: parallel
max: 10
Deux remarques :
- A mon avis tu n’as besoin que d’une seule exécution à la fois. Sauf à avoir un calendrier bizarre avec des événements qui se superposent, tu as 1 action par jour. Je crois que single est une option disponible
- Je ne vois pas bien l’intérêt de la condition double avec le OR… On dirait 2 fois la même chose
OK. Donc single, permet de le lancer tous les jours .
Pour le OR, c’est pour le tester en prendre en compte la rédaction « Clinique ou clinique »
Question: A quoi sert le max ?
C’est à confirmer mais je pense que c’est pas sensible à la casse…
Quand plusieurs actions, en parallèle notamment on limite à 10
Merci pour les réponses.
J’en ai profité pour faire une deuxième automatisation: le réveil en radio !
alias: Radio_si_Travail
description: ""
trigger:
- platform: calendar
event: start
offset: "-1:15:0"
entity_id: calendar.xxxxxxxxxxx_gmail_com
condition:
- condition: state
entity_id: calendar.xxxxxxxxxxxxx_gmail_com
attribute: message
state: Travail clinique
action:
- service: media_player.play_media
target:
entity_id: media_player.chambre_principale
data:
media_content_id: media-source://radio_browser/003baf55-9ac9-4352-bceb-375ee4203133
media_content_type: audio/aac
metadata:
title: France Info
thumbnail: >-
https://www.francetvinfo.fr/assets/common/images/pwa/launcher-120x120-2e45ada1.png
media_class: music
children_media_class: null
navigateIds:
- {}
- media_content_type: app
media_content_id: media-source://radio_browser
- media_content_type: music
media_content_id: media-source://radio_browser/country/FR
mode: single
Bonjour, avant d’ouvrir un nouveau post, je pose ma question ici, c’est un peu dans le thème.
J’ai des automatisations que j’annule en période de Vacances.
Pour ce faire j’ai une condition directement dans l’automatisation, basé sur l’attribut « message » d’un calendrier Google.
Mon souci c’est qu’il faut que l’intitulé soit exacte ! Par exemple si dans mon calendrier je note « Vacances toto » alors la condition est false
Est il possible de passé d’une philosophie de « EST Vacances » à « CONTIENT Vacances » ?
je ne sais pas si je suis clair
passe en yaml et modifie ta condition
j’ai fait ceci pour avoir du chauffage 1h30 avant mon départ en cours:
alias: "Chauffage si cours "
description: Chauffage si cours td tp
trigger:
- platform: calendar
event: start
offset: "-1:30:0"
entity_id: calendar.xxxxxx
condition:
- condition: and
conditions:
- condition: template
value_template: >-
{% if (((now().timestamp() | timestamp_custom('%H:%M')) > '05:00' )
and ((now().timestamp() | timestamp_custom('%H:%M')) < '08:30')) %}
true {% else %} false {% endif %}
- condition: template
value_template: >-
{% if ('cours' in state_attr('calendar.xxxx','message')|lower) or
('tp' in state_attr('calendar.xxxx','message')|lower) or ('td' in
state_attr('calendar.xxxx','message')|lower) or ('eval' in
state_attr('calendar.xxxx','message')|lower) %} true {% else %}
false {% endif %}
action:
- service: climate.set_temperature
data:
temperature: 19
target:
area_id: rez_de_chaussee
entity_id: climate.rez_de_chaussee
mode: single
ce qui t’intéresse est dans la deuxième condition
Depuis le temps que je voulais me pencher sur cette formule.
Merci @Thierry.P
Je suis toujours impressionné, et un peu frustré, de tous ces codes qui m’échappent
Il y a une bibliothèque ou un tuto qui apprends à coder ???
Essaie chatgpt
Il aide bien !
Bonjour,
J’ai du mal a vous suivre,
Est ce que quelqu’un peut me dire ce que je dois mettre comme condition pour que ma regle se déclennche quand HA voit « Garde » dans le calendrier « famille » ?
J’ai ca, mais ca ne fonctionne guere
condition: template
value_template: "{{ 'Garde' in state_attr('calendar.famille','message') }}"
merci
il manque le test: if
value_template: >-
{% if (‹ Garde › in state_attr(‹ calendar.xxxx ›,‹ message ›)|lower)
Merci pour l’aide
- condition: template
value_template: >-
{% if ("Garde" in state_attr("calendar.famille","message")|lower)}
Mais je ne peux pas encore enregister mon code. tu vois ce qu’il me manque?
merci
regarde mon message au dessus. Tu as un exemple à reprendre et adapter
la tu verifies qu’une de ces conditions soit ok
mais je ne comprends pas ca
{% if ('cours' in state_attr('calendar.xxxx','message')|lower) or
('tp' in state_attr('calendar.xxxx','message')|lower) or
('td' in state_attr('calendar.xxxx','message')|lower) or
('eval' in state_attr('calendar.xxxx','message')|lower) %} true
{% else %} false
{% endif %}
Ecris comme ca, c’est plus facile à piger
voila, c’est ça.
Tu mets donc ta condition sur la chaine de caractère « Garde » à la place des miennes.
Le | lower permet de s’affranchir des majuscules/minuscules
- condition: template
value_template: >-
{% if ('Garde' in state_attr('calendar.famille','message')|lower) %} true
{% else %} false
{% endif %}
Toujours impossible d 'enregistrer
je trouve pas mon erreur de syntaxe
tu as peut être un pb d’indentation sur l’ensemble de la requête
Peux-tu la mettre en entier ?