je suis nouveau sous homeassistant je viens de l’installer il y a presque une semaine. Avant j’étais sous jeedom.
Bref, je voudrais créer un Automation basé sur un device RTE Tempo.
Dans ce device, j’ai une entity (couleur, dont les attributs peuvent être Bleu, Blanc ou Rouge)
Je voudrais créer une scénario qui allume la lampe du salon de 6h30 à 6h45 (avec la couleur indiquée par le jour en cours)
Dans trigger, je mets l’heure : 06:30:00
Dans le And if :
entity : RTE Tempo Couleur actuelle
Attribute : Attribution
State : Blanc
Then do : je sélectionne ma lampe et sa couleur
Si je teste la condition (le and if) en faisant un clic droit « Test », HA m’indique : Condition did not pass
Pourtant à l’heure du clic, on est bien en jour Blanc !!!
Qu’est-ce que je fais mal ?
Merci pour votre aide.
Ensuite comment indiquer que l’on doit éteindre la lampe 15 min après l’avoir allumée ?
faire une recherche sur le sujet, car tu n’es pas le seul à faire des tests sur la couleur du jour…
préciser comment tu récupères cette couleur du jour car il n’est pas exclu non plus que l’un d’entre nous utilise exactement la même solution (par exemple moi j’ai un zlinky de lixee… voir ma description…)
coller ton automatisme qu’on puisse voir ta syntaxe et éventuellement la corriger (au passage, utilise le texte formatté pour la lisibilité
Tu copies le code obtenu et tu le colles avec le mode texte formaté comme indiqué au dessus… ce sera plus simple de le copier chez nous pour le tester le cas échéant…
exemple:
alias: TEMPO - notification demain jour rouge
description: Les Alexas (Salon SdB Cuisine) annoncent que demain sera rouge vers 20h
trigger:
- platform: state
entity_id:
- input_text.couleur_demain
to: ROUGE
for:
hours: 0
minutes: 0
seconds: 5
condition:
- condition: time
after: "19:30:00"
before: "20:30:00"
action:
- service: notify.alexa_media
data:
message: Attention ! Demain sera un jour rouge.
target:
- media_player.echo_dot_jeanne
- media_player.echo_jeanne
- media_player.jeanne_echo_dot
data:
type: tts
title: Annonce jour rouge
- delay:
hours: 0
minutes: 0
seconds: 5
milliseconds: 0
- service: notify.alexa_media
data:
message: Attention ! Demain sera un jour rouge.
target:
- media_player.echo_dot_jeanne
- media_player.echo_jeanne
- media_player.jeanne_echo_dot
data:
type: tts
title: Annonce jour rouge
mode: single
Et manip inverse pour récuperer du code sur le forum: tu copies le YMAL puis tu colles le YAML dans l’editeur puis tu cliques sur ‹ modifier dans l’editeur visuel › pour l’importer chez toi…
Merci, en enlevant le champ attribution cela fonctionne. En fait ce n’est pas clair, car quand on passe par le visuel, il nous demande de choisir entre attribution et device class; on a l’impression qu’il faut forcement choisir un des deux.
Pour lui dire d’éteindre au bout de 15 min, on peut faire qqchose dans le trigger ou pas ?
De multiples solutions s’offrent à toi:
1/ La plus simple dans la même automatisation, dans les actions (surtout pas dans le trigger) tu met la sequence:
Lampe ON
attente 15 min (delay, cherche dans les actions tu vas trouver).
lampe OFF
2/ Remplacer le delay par un timer (c’est plus complexe mais plus robuste… un peu de recherche dans le forum…), mais à ce stade ce n’est pas indispensable.
3/ Créer une deuxième automatisation avec un autre trigger:
trigger: si lumière ON depuis 15min
actions: Lumière OFF
et concernant les automatisation, le concept est assez simple une fois qu’on sait de quoi on parle.
le trigger déclenche (when)
les conditions permettent d’arrêter l’automatisation dans les cas où le trigger déclenche « trop » (and if)
les actions c’est la liste des actions (ou script) que tu voudrais faire faire à ton automatisation (then do) c’est dans ce champ qu’il faut mettre tout le contenu que tu veux faire… (y compris des syntaxes if then else, etc…)
En effet ça paraît simple et l’UI pour faire des automation dans HA est vraiment intuitif.
Mais comme l’a dit @BBE, c’est plus facile pour nous de t’aider si tu nous transmet le yaml de ton automation
A première vu sur cette image
j’imagine que le soucis était que le « and if » ne devrait pas se trouver dans « and if » effectivement mais dans « then do »
Puisque « when » et « and if » vont définir respectivement ce qui va DECLENCHER ton automation et si ELLE DOIT effectuer une action
Alors que toi tu veux que ton automation SOIT déclencher et que si X condion alors Y paramètre.
Tu dois donc définir « when » pour qu’elle se déclanche. Rien dans « and if » parceque tu veux qu’elle effectue une action quelque soit la situation puis dans l’action a réaliser, là, tu lui indique si blanc alors X, si bleu alors Y, si rouge alors Z.
Voila j’espère que ca t’aide un peut a comprendre comment fonctionnent les automation. En tout cas bienvenue sur HA
Ton déclencheur c’est l’heure.
donc ton trigger c’est bien celui que tu as fait.
Tu n’as pas de conditions (tu veux que systématiquement ton automatisation se lance à 6h45)
Donc tu laisse le champ des conditions « And if » (optional) vide mais tu pourrais mettre ici « si lundi, mardi, mercredi, jeudi, vendredi » dans les conditions pour ne pas allumer à 6h45 le week end…
Ton action à réaliser (champ « Then do ») est la suivante:
Si RTE=BLANC alors allume lampe en BLanc
Sinon si RTE=Bleu alors allume lampe en Bleu
Sinon si RTE=Rouge alors allume lampe en Rouge
il faut que tu regardes dans l’interface les blocs de constructions:
Ok, je vais regarder MAIS
Je n’avais pas compris que le premier bloc and if marchait avec le trigger !!!
Ensuite que voulez-vous que j’envoie comme Yaml, sachant que je n’arrivais pas à faire mon automation avec l’UI ???
Enfin, les tutos je les ai lus, mais AUCUN d’entre aux n’abordent l’automation avec l’UI, ou alors j’'ai raté des pages …
oui, merci j’ai cliqué sur le ?, mais où vois-tu que cela marche de concert avec le trigger ?
Pour moi ce if, avait la meme valeur que ceux du choose !!!
Pas facile d’intégrer le concept, je vais y arriver, mais c’est vraiment loin d’être aussi intuitif que les blocs de jeedom. En tout cas c’est aps du tout la même façon d’appréhender les choses.