Aide sur la syntaxe du code (suite ...)

Le problème

Je n’arrive pas à faire changer la couleur de l’icône lorsque j’active switch.

Le switch en question est le suivant :
----- entity_id: switch.switch_1_statico_palma

  timer_ciclo_1:
    alias: "[IRR] 1° Ciclo irrigazione"
    sequence:
      #- service: timer.start                                      #da eliminare 25-08-2021
      #  data_template:                                            #da eliminare 25-08-2021
      #    entity_id: timer.t_fine_ciclo_1                         #da eliminare 25-08-2021
      #    duration: "{{ states('sensor.secondi_ciclo_1') }}"      #da eliminare 25-08-2021
      - service: counter.configure
        data_template:
          entity_id: counter.contatore_cicli_irrigazione
          value: "{{ states('counter.contatore_cicli_irrigazione')|int + 1 }}" #conta i cicli di irrigazione fatti     
      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_1_c1.state | int > 0 }} 
          sequence:
            - service: homeassistant.turn_on
              entity_id: switch.switch_1_statico_palma  
            - delay: '00:00:{{ states.input_number.irr_zona_1_c1.state | int }}'  
            - service: homeassistant.turn_off
              entity_id: switch.switch_1_statico_palma      
            - delay: '00:00:02'

      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_2_c1.state | int > 0 }} 
          sequence:
            - service: homeassistant.turn_on
              entity_id: switch.switch_2_statico_casetta      
            - delay: '00:00:{{ states.input_number.irr_zona_2_c1.state | int }}'
            - service: homeassistant.turn_off
              entity_id: switch.switch_2_statico_casetta      
            - delay: '00:00:02'

Merci à tous pour l’aide …

Partage ta carte Lovelace…

Colorer avec quoi ? Custom-ui ? Button-card ?

Bonjour Clemalex et merci pour la réponse rapide

Le code fait partie d’un script (je n’ai pas pu joindre l’ensemble du package), et ce que je voudrais faire, c’est changer la couleur de l’icône du commutateur switch.switch_1_statico_palma en vert lorsqu’il est en cours d’exécution …

# -----------------------------------------------------------------
#   esecuzione primo programma 
# -----------------------------------------------------------------
  timer_ciclo_1:
    alias: "[IRR] 1° Ciclo irrigazione"
    sequence:
      #- service: timer.start                                      #da eliminare 25-08-2021
      #  data_template:                                            #da eliminare 25-08-2021
      #    entity_id: timer.t_fine_ciclo_1                         #da eliminare 25-08-2021
      #    duration: "{{ states('sensor.secondi_ciclo_1') }}"      #da eliminare 25-08-2021
      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_1_c1.state | int > 0 }} 
          sequence:
            - service: homeassistant.turn_on
              entity_id: switch.switch_1_statico_palma 
            - delay: '00:00:{{ states.input_number.irr_zona_1_c1.state | int }}'  
            - service: homeassistant.turn_off
              entity_id: switch.switch_1_statico_palma      
            - delay: '00:00:02'

      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_2_c1.state | int > 0 }} 
          sequence:
            - service: homeassistant.turn_on
              entity_id: switch.switch_2_statico_casetta      
            - delay: '00:00:{{ states.input_number.irr_zona_2_c1.state | int }}'
            - service: homeassistant.turn_off
              entity_id: switch.switch_2_statico_casetta      
            - delay: '00:00:02'

      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_3_c1.state | int > 0 }} 
          sequence:
            - service: homeassistant.turn_on
              entity_id: switch.switch_3_statico_orto
            - delay: '00:00:{{ states.input_number.irr_zona_3_c1.state | int }}'
            - service: homeassistant.turn_off
              entity_id: switch.switch_3_statico_orto
            - delay: '00:00:02'
  
      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_4_c1.state | int > 0 }} 
          sequence:
            - service: homeassistant.turn_on
              entity_id: switch.switch_4_statico_pini_dx_sx
            - delay: '00:00:{{ states.input_number.irr_zona_4_c1.state | int }}'
            - service: homeassistant.turn_off
              entity_id: switch.switch_4_statico_pini_dx_sx
            - delay: '00:00:02'

Je vous mets également le code de la carte, qui fonctionne effectivement même si ce n’est pas simultanément avec l’activité du switch, en pratique elle s’active au bout de 20-30 secondes à partir du moment où le switch est activé, donc j’aimerais changer la couleur de l’icône sur le script qui contrôle les interrupteurs… j’espère que je me suis bien exprimé.

                                                
- type: vertical-stack
  cards: 
    - entity: input_number.irr_zona_1_c1
      template: light_room_sergio
      variables:
        room_icon: 'mdi:sprinkler-variant'
        light_icon: true                      #con TRUE non visualizza l'icona in alto a sx
        light_name: 1 Statico Palma
        var_stato: |
          [[[ if ( (states['switch.switch_1_statico_palma'].state == 'off') ) return 'off'; else return 'on'; ]]] 
      type: 'custom:button-card'
    - entity: input_number.irr_zona_2_c1
      template: light_room_sergio
      variables:
        room_icon: 'mdi:sprinkler-variant'
        light_icon: true                     #con TRUE non visualizza l'icona in alto a sx
        light_name: 4 Statico casetta
        var_stato: |
          [[[ if ( (states['switch.switch_2_statico_casetta'].state == 'off') ) return 'off'; else return 'on'; ]]]         
      type: 'custom:button-card'
    - entity: input_number.irr_zona_3_c1
      template: light_room_sergio
      variables:
        room_icon: 'mdi:sprinkler-variant'
        light_icon: true                     #con TRUE non visualizza l'icona in alto a sx
        light_name: 5 Statico Orto
        var_stato: |
          [[[ if ( (states['switch.switch_3_statico_orto'].state == 'off') ) return 'off'; else return 'on'; ]]] 
      type: 'custom:button-card'      
  type: horizontal-stack   

voici le code du template…

light_center_frame_sergio:
  type: 'custom:button-card'
  variables:
    room_icon: ''
    light_name: ''
    mode: ''
  icon: >
    [[[
      var ico = (variables.room_icon ? variables.room_icon : entity.attributes.icon);
      return (ico ? ico : 'mdi:lightbulb-group');
    ]]]
    
  name: >
    [[[
      var nm = (variables.light_name ? variables.light_name : entity.attributes.friendly_name);
      return (nm ? nm : 'light');
    ]]]
    
  tap_action:
    action: toggle
  hold_action:
    action: more-info
  color: auto-no-temperature
  color_type: icon
  styles:
    card:
      - background-color: 'rgba(0, 0, 0, 0.0)'
      - height: '[[[ return (variables.mode == "room")? "58px" : "34px" ]]]'
      - width: 450px
      - padding: 0px
      - border-radius: 0%
      - box-shadow: 0px 0px
    icon:
      - height: 40px
      - width: 40px
      - align-self: center
      - color: >
          [[[
            if (variables.var_stato === 'on') return 'green';
            if (variables.var_stato === 'off') return 'yellow';
            else return 'red';
          ]]]        
    name:
      - font-size: 16px
      - align-self: center #end #start
      #- font-weight: bold
    grid:
      #- grid-template-areas: '"i" "n"'
      - grid-template-columns: auto
      - grid-template-rows: '[[[ return (variables.mode == "room")? "40px 18px" : "34px" ]]]' 
      

Si le switch met trop longtemps a basculé ou à se mettre à jour, il faut passer par un input_boolean.

L’utiliser dans la carte Lovelace , et le mettre à vrai par le script.

La mise à faut également par le script ou alors part la mise à jour du switch

En fait c’est ce que j’aimerais faire, lancer le changement de couleur directement depuis le script qui lance le squitch mais je n’ai pas compris comment faire
En gros, j’essayais de faire quelque chose comme ça …

  timer_ciclo_1:
    alias: "[IRR] 1° Ciclo irrigazione"
    sequence:
      #- service: timer.start                                      #da eliminare 25-08-2021
      #  data_template:                                            #da eliminare 25-08-2021
      #    entity_id: timer.t_fine_ciclo_1                         #da eliminare 25-08-2021
      #    duration: "{{ states('sensor.secondi_ciclo_1') }}"      #da eliminare 25-08-2021
      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_1_c1.state | int > 0 }} 
          sequence:
            - service: homeassistant.turn_on
              entity_id: switch.switch_1_statico_palma  

              icon:
                color: 'green'

            - delay: '00:00:{{ states.input_number.irr_zona_1_c1.state | int }}'  
            - service: homeassistant.turn_off
              entity_id: switch.switch_1_statico_palma      
            - delay: '00:00:02'

Impossible de gérer les couleur dans les scripts.

Passe par un input_boolean et mets le en lieu est place du switch.

aide help aiuto Clemalex

Je ne peux tout simplement pas insérer input_bolean, dans cette séquence … si je retire le switch, le relais ne fonctionne pas

  timer_ciclo_1:
    alias: "[IRR] 1° Ciclo irrigazione"
    sequence:
      #- service: timer.start                                      #da eliminare 25-08-2021
      #  data_template:                                            #da eliminare 25-08-2021
      #    entity_id: timer.t_fine_ciclo_1                         #da eliminare 25-08-2021
      #    duration: "{{ states('sensor.secondi_ciclo_1') }}"      #da eliminare 25-08-2021
      - service: counter.configure
        data_template:
          entity_id: counter.contatore_cicli_irrigazione
          value: "{{ states('counter.contatore_cicli_irrigazione')|int + 1 }}" #conta i cicli di irrigazione fatti     
      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_1_c1.state | int > 0 }} 
          sequence:
            - service: homeassistant.turn_on
              entity_id: switch.switch_1_statico_palma  
            - delay: '00:00:{{ states.input_number.irr_zona_1_c1.state | int }}'  
            - service: homeassistant.turn_off
              entity_id: switch.switch_1_statico_palma      
            - delay: '00:00:02'

      - choose:
        - conditions: >
            {{ states.input_number.irr_zona_2_c1.state | int > 0 }}

Dans l’automatisation il faut ajouter :

service: input_boolean.turn_on # et off après le timer
entity_id: input_boolean.Pour_la_coloration_de_la_carte

Et dans la carte l’utiliser