Comment créer une simple fonction ET avec " Automatisations et scènes"

Bonjour,
Je souhaite faire une simple fonction ET ( A & B = light )
mon problème est tellement basique… : :frowning:
J’arrive à faire : Front A (passe de « off » à « on ») & B état « on » alors light « on »
Mais cela ne marche que si j’active B à « on » en premier ( normal, A est un « front »).

Comment saisir une automation du type:
Si état A « on » et état B « on » alors Light « on »
Si état A « off » ou état B « off » alors Light « off »

Explique ton besoin de façon concrète avec un exemple parce que là on comprends pas trop ce que tu veux faire.

Il faut utiliser « Choisir » dans bloc de construction et tu prends en compte les 4 cas :

  • A = On et B = On
  • A = On et B = Off
  • A = Off et B = On
  • A = Off et B = Off

Ce que je ferait :

  • triggers :
    • changement d’état de A
    • changement d’état de B
  • action
    • Si A = true ET B = true alors allume lampe
    • sinon éteint lampe

Merci Cleya et Titoumimi,
Ok pour saisir les triggers
mais comment saisir les actions ou bloc de construction ?


Tu peux sélectionner un bloc de construction depuis les automatismes ou depuis un script.

En cliquant sur le bouton « Ajouter un bloc de construction », tu peux choisir la structure de contrôle que tu souhaites :

image

image

normalement, avec tout ça, tu devrais pouvoir t’en sortir :wink:

Ok merci ça fonctionne
mais que c’est compliqué pour un simple H2&H3=Light
Ci dessous le code YAML généré:


alias: H2on & H3on = Créd_on
description: ""
trigger:
  - platform: state
    entity_id:
      - input_boolean.helper_2
      - input_boolean.helper_3
condition:
  - condition: and
    conditions:
      - condition: state
        entity_id: input_boolean.helper_2
        state: "on"
      - condition: state
        entity_id: input_boolean.helper_3
        state: "on"
action:
  - service: light.turn_on
    metadata: {}
    data: {}
    target:
      entity_id: light.credence
mode: single

alias: H2off OR H3off = Cdréd_off
description: ""
trigger:
  - platform: state
    entity_id:
      - input_boolean.helper_2
      - input_boolean.helper_3
condition:
  - condition: or
    conditions:
      - condition: state
        entity_id: input_boolean.helper_2
        state: "off"
      - condition: state
        entity_id: input_boolean.helper_3
        state: "off"
action:
  - service: light.turn_off
    target:
      entity_id:
        - light.credence
    data: {}
mode: single

Il y a peut-être moyen de faire plus simple ?

oui, tu peux regrouper les deux automatisations en une seule :

alias: Nouvelle automatisation 12
description: ""
trigger:
  - platform: state
    entity_id:
      - input_boolean.test1
  - platform: state
    entity_id:
      - input_boolean.test2
condition: []
action:
  - if:
      - condition: state
        entity_id: input_boolean.test1
        state: "on"
      - condition: state
        entity_id: input_boolean.test2
        state: "on"
    then:
      - service: switch.turn_on
        target:
          entity_id: switch.prise_test_bureau
        data: {}
    else:
      - service: switch.turn_off
        target:
          entity_id: switch.prise_test_bureau
        data: {}
mode: single

(ici avec une prise connectée, mais le principe reste identique pour ta lampe)

En effet, ça marche
et c’est bien mieux comme cela
Encore Merci :slight_smile:

1 « J'aime »

Re-bonjour,
Décidément je galère avec les automatisations.
Maintenant, je veux faire if A< « valeur num1 » et B< « valeur num2 » then « light on » esle « light Off »
La méthode précédente ne semble pas applicable de façon identique
:thinking:

ce sont tes conditions qu’il faut légèrement modifier :

action:
  - if:
      - condition: numeric_state
        entity_id: number.capteur_salon_comfort_humidity_max
        above: 50
      - condition: numeric_state
        entity_id: number.capteur_bureau_comfort_humidity_max
        below: 15

Bonjour Titoumimi,
Ok ça fonctionne
Il faut bien capter quels champs génèrent le bon code YAML
Encore merci :sweat_smile:

1 « J'aime »