Climate automation - Best practice

Hello,

how looks your approach for climate automation? This is my first try and I’m looking for some improvements:

automation:
###############################
###Window Shutters##################
###############################
- alias: 'Toilet Window open'
  hide_entity: True
  trigger:
    platform: state
    entity_id: binary_sensor.jmd4004141_state
    to: 'on'

  condition:
      condition: state
      entity_id: binary_sensor.jmd4004141_state
      state: 'on'

  action:
    - service: climate.set_temperature
      data:
        entity_id: climate.jmd3003324
        temperature: 12

- alias: 'Toilet Window close'
  hide_entity: True
  trigger:
    platform: state
    entity_id: binary_sensor.jmd4004141_state
    to: 'off'

  condition:
      condition: state
      entity_id: binary_sensor.jmd4004141_state
      state: 'off'

  action:
      - service: climate.set_temperature
        entity_id: climate.jmd3003324
        data:
          temperature: 20

- alias: 'Toilet Window reminder'
  hide_entity: True
  trigger:
    platform: state
    entity_id: binary_sensor.jmd4004141_state
    state: 'on'
    for:
      hours: 0
      minutes: 10
      seconds: 0

  condition:
      condition: state
      entity_id: binary_sensor.jmd4004141_state
      state: 'on'

  action:
      service: notify.pushbullet
      data_template:
        title: "Jarvis"
        message: "WC Fenster seit mehr als 10 Minuten offen"
- alias: 'Livingroom Window open'
  hide_entity: True
  trigger:
    platform: state
    entity_id: binary_sensor.jmd4015744_state
    to: 'on'

  condition:
      condition: state
      entity_id: binary_sensor.jmd4015744_state
      state: 'on'

  action:
    - service: climate.set_temperature
      data:
        entity_id: climate.jmd3019546
        temperature: 12

- alias: 'Livingroom Window close'
  hide_entity: True
  trigger:
    platform: state
    entity_id: binary_sensor.jmd4015744_state
    to: 'off'

  condition:
      condition: state
      entity_id: binary_sensor.jmd4015744_state
      state: 'off'

  action:
      - service: climate.set_temperature
        entity_id: climate.jmd3019546
        data:
          temperature: 20

- alias: 'Livingroom Window reminder'
  hide_entity: True
  trigger:
    platform: state
    entity_id: binary_sensor.jmd4015744_state
    to: 'on'

  condition:
      condition: state
      entity_id: binary_sensor.jmd4015744_state
      state: 'on'
      for:
        hours: 0
        minutes: 10
        seconds: 0
  action:
    service: notify.home_assistant
    data: 
      message: "Wohnzimmer Fenster seit mehr als 10 Minuten offen!"

###############################
###Climate OFF###
###############################
- alias: Climate OFF
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: 'device_tracker.tom'
        state: 'not_home'
      - condition: state
        entity_id: 'device_tracker.judith'
        state: 'not_home'
      - condition: or
        conditions:
          - condition: state
            entity_id: input_boolean.climate_awaymode
            state: 'on'
          - condition: numeric_state
            entity_id: sensor.weather_daily_low_temperature
            above: 10
  action:
      - service: climate.set_temperature
        data:
          temperature: 16          

###############################
###Climate ON###
###############################
- alias: 'Climate NIGHT TEMPS'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/10'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'            
  action:
      - service: climate.set_temperature
        data:
          #Küche
          entity_id: climate.jeq0183089
          temperature: 16
      - service: climate.set_temperature        
        data:
          #WC
          entity_id: climate.jmd3003324
          temperature: 17          
      - service: climate.set_temperature
        data:
          #Kinderzimmer
          entity_id: climate.jmd3019382
          temperature: 18
      - service: climate.set_temperature
        data:
          #Wohnzimmer
          entity_id: climate.jmd3019546
          temperature: 16
      - service: climate.set_temperature
        data:
          #Bad
          entity_id: climate.keq0635113
          temperature: 17          

- alias: 'Climate Toilet ON'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'     
      - condition: template
        value_template: '{{ states.climate.jmd3003324.attributes.temperature < 17 }}'       
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.jmd3003324
          temperature: 17  

- alias: 'Climate Bathroom ON - WEEK'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'     
      - condition: template
        value_template: '{{ states.climate.keq0635113.attributes.temperature < 21 }}' 
      - condition: time             
        after: '06:30:00'
        before: '08:30:00'
        weekday:
        - mon
        - tue
        - wed
        - thu
        - fri        
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.keq0635113
          temperature: 21           
          
- alias: 'Climate Livingroom ON - WEEK'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'    
      - condition: template
        value_template: '{{ states.climate.jmd3019546.attributes.temperature < 20 }}'   
      - condition: time             
        after: '15:30:00'
        before: '23:30:00'
        weekday:
        - mon
        - tue
        - wed
        - thu
        - fri
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.jmd3019546
          temperature: 20          

- alias: 'Climate Livingroom ON - WEEKEND'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'     
      - condition: template
        value_template: '{{ states.climate.jmd3019546.attributes.temperature < 20 }}'              
      - condition: time           
        after: '09:00:00'
        before: '23:30:00'
        weekday:
        - sat
        - sun
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.jmd3019546
          temperature: 20     

- alias: 'Climate Children ON - WEEK'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'     
      - condition: template
        value_template: '{{ states.climate.jmd3019382.attributes.temperature < 18 }}'              
      - condition: time           
        after: '15:30:00'
        before: '20:00:00'
        weekday:
        - mon
        - tue
        - wed
        - thu
        - fri
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.jmd3019382
          temperature: 18   

- alias: 'Climate Children ON - WEEKEND'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'     
      - condition: template
        value_template: '{{ states.climate.jmd3019382.attributes.temperature < 18 }}'      
      - condition: time           
        after: '09:00:00'
        before: '20:00:00'
        weekday:
        - sat
        - sun
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.jmd3019382
          temperature: 18            

- alias: 'Climate Kitchen ON - ALL WEEK EVENING'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'     
      - condition: template
        value_template: '{{ states.climate.jeq0183089.attributes.temperature < 19 }}'
      - condition: time             
        after: '17:45:00'
        before: '18:45:00'
        weekday:
        - mon
        - tue
        - wed
        - thu
        - fri
        - sat
        - sun        
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.jeq0183089
          temperature: 19

- alias: 'Climate Kitchen ON - WEEK MORNING'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'     
      - condition: template
        value_template: '{{ states.climate.jeq0183089.attributes.temperature < 19 }}'
      - condition: time             
        after: '07:00:00'
        before: '08:30:00'
        weekday:
        - mon
        - tue
        - wed
        - thu
        - fri      
        - sat
        - sun        
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.jeq0183089
          temperature: 19      

- alias: 'Climate Kitchen ON - WEEKEND MORNING'
  hide_entity: True
  trigger:
    platform: time
    minutes: '/1'
    seconds: 00
  condition:
      - condition: state
        entity_id: input_boolean.climate_awaymode
        state: 'off'     
      - condition: template
        value_template: '{{ states.climate.jeq0183089.attributes.temperature < 19 }}'
      - condition: time             
        after: '08:00:00'
        before: '12:30:00'
        weekday:
        - sat
        - sun      
  action:
      - service: climate.set_temperature
        data:
          entity_id: climate.jeq0183089
          temperature: 19

sorry to reply to this old topic @HA_Rookie

I’m trying to setup this automation but i’m stuck at the “input_boolean.climate_awaymode” what do you include in that boolean?

If anyone else knows, please advise.

Thank you.