Action à heure précise depuis automatisation

Bonjour,

En pleine migration Jeedom ==> Home assistant je commence a migrer mes scénarios.
Dans jeedom il y a la fonction « A ».
Exemple:
Si il fait trop froid dans une pièce, j’allume le chauffage, mais dans ce cas je veux également l’éteindre à un moment précis.

Peut-on, sous Home assistant, « conclure » une automatisation en disant « A 20h tu réalise tel action », le but étant de ne pas réaliser cette action quoi qu’il arrive.

Si ce n’est pas possible ou pas une bonne idée (argumenté) je suis prêt a me rendre à l’évidence, et surtout à la bonne pratique.

Merci d’avance pour votre aide :slight_smile:

Quatsch

Hello

un truc comme ceci ?

alias: Camping Car 2
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.XXXXXXXX_temperature
condition:
  - condition: time
    after: "20:00:00"
    before: "19:00:00"
action:
  - choose:
      - conditions:
          - condition: numeric_state
            entity_id: sensor.XXXXXXX_temperature
            above: 10
        sequence:
          - service: switch.turn_off
            data: {}
            target:
              entity_id: switch.rad_toilette
      - conditions:
          - condition: numeric_state
            entity_id: sensor.XXXXX_temperature
            below: 5
        sequence:
          - service: switch.turn_on
            data: {}
            target:
              entity_id: switch.rad_toilette
    default: []
mode: single

Sinon donne plus d’info de ce que tu souhaites faire réellement

Non pas vraiment, je vais essayer de traduire en langage humain ce que je veux faire:

Si Heure > HH:mm et Heure < HH:mm et Température < 19
Alors
- Allumer Chauffage
et
- A 10h Eteindre Chauffage
Sinon
- Ne rien Faire
Fin

Salut,

Alors pour ce qui est des automatisations, la notion importante est celle de déclencheur.
C’est comme son nom indique ce qui va lancer la logique. Ca doit être un moment précis, soit une heure, soit un changement d’état (température), ça ne marche pas sur une durée.
Mais il peut y avoir plusieurs déclencheurs pour une action.

Donc pour ton idée:

Si Heure > HH:mm et Heure < HH:mm et Température < 19

Il n’y a pas moyen de le traduire tel quel.
Mais plutôt par une combinaison avec 2 déclencheurs + 2 conditions.
Déclencheur 1 : A l’heure de début de page.
Déclencheur 2 : Si la température descend en dessous de 19°
Condition 1: Si on est avant heure de fin de plage
Condition 2: Si le température est < 19°

Ensuite pour les actions:

Alors
- Allumer Chauffage
et
- A 10h Eteindre Chauffage

Allumer chauffage, pas de soucis, c’est une appel à un service « switch.turn_on » je suppose.
A 10h Eteindre le chauffage.
Bon ça c’est plus compliqué, car tu as une action de type « Attendre le déclencheur » où tu peux spécifier une heure à laquelle l’action liée sera lancée… mais j’ai un gros doute de ce qui se passe en utilisant cette logique car l’automatisation continuera à « tourner » le temps d’arriver à l’heure donnée… ce qui est ok… mais sera oublié si HA est redémarré (voir screenshot)

Donc en gros ce que je viens de dire fait ce que tu veux… en 1 seule automatisation, mais risque d’avoir des ratés…

Une autre solution plus sûre mais en 2 automatisations:
Le première est quasiment la même que celle que j’ai décrite, mais à la fin au lieu de faire un « attendre », allume un flag (interrupteur virtuel).
Arrivée l’heure d’extinction, une 2ème automatisation se déclenche, vérifier si le flag est allumé et éteint le chauffage.

image

1 « J'aime »

OK, Merci pour ton retour détaillé (cela fait vraiment plaisir)
Cela confirme un peu ce que je pensais: ce n’est pas possible, et il faut que j’oublie la logique jeedom
De ce que j’ai compris dans jeedom, cela crée comme une tache cron ponctuel, ou nouvel automatisation éphémère à l’heure indiqué.

Je vais donc m’orienter vers ta solution proposé.

J’ai quand même une dernière question :
Est-ce que les automatismes ont une notion « actif » / « inactif », et si oui, peut-on depuis une automatisation activer ou désactiver une autre automatisation ?
Dans ce cas je peux avoir une automation « inactive » (dormant) qui est activé par la première et s’auto-désactive une fois l’action terminé ?

Je vais répondre à ma propre question car du coup j’ai trouvé:

Voici ma première automatisation

alias: Clim-Sejour_On_Cold-Night
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.6sensor_salon_temperature_air
    attribute: value
condition:
  - condition: time
    after: "21:00:00"
    before: "06:00:00"
  - condition: numeric_state
    entity_id: sensor.6sensor_salon_temperature_air
    attribute: value
    below: 18
action:
  - service: climate.turn_on
    data: {}
    target:
      device_id: dfb34bb2ee1bf8d0bed1c9887ecbbb7d
  - service: climate.set_fan_mode
    data:
      fan_mode: Silence
    target:
      device_id: dfb34bb2ee1bf8d0bed1c9887ecbbb7d
  - service: climate.set_temperature
    data:
      hvac_mode: heat
      temperature: 20
    target:
      device_id: dfb34bb2ee1bf8d0bed1c9887ecbbb7d
  - service: automation.turn_on
    data: {}
    target:
      entity_id: automation.clim_sejour_off_cold_night
mode: single

Voici ma seconde automatisation

alias: Clim-Sejour_Off_Cold-Night
description: ""
trigger:
  - platform: time
    at: "06:01:00"
condition: []
action:
  - service: climate.turn_off
    data: {}
    target:
      device_id: dfb34bb2ee1bf8d0bed1c9887ecbbb7d
  - service: automation.turn_off
    data:
      stop_actions: false
    target:
      entity_id: automation.clim_sejour_off_cold_night
mode: single

Merci pour vos aides :slight_smile: je continue ma migration un peu plus sereinement :slight_smile:

Effectivement bien joué ça aussi ça marche :slight_smile:
C’est remplace le flag.

Cela dit, petit commentaire sur le déclencheur de la première automatisation, on est d’accord que là elle va se lancer à chaque fois que tu as une nouvelle valeur de température?
Et qu’en plus entre 21h et 6h elle va relancer les actions à chaque changement de température?

Au minimum j’ajouterais une 3eme condition qui vérifie que ton climate est pas déjà on.
Ca évite l’appel de 4 services toutes les minutes pendant ce temps là.

1 « J'aime »

Oui effectivement, j’ai rajouté la condition supplémentaire! Merci :slight_smile: