Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- input_boolean:
- camera_open:
- name: Camera aperta?
- automation:
- - alias: 'Finestre camera aperte'
- mode: restart
- trigger:
- - platform: state
- entity_id: binary_sensor.finestra_camera
- to: 'on'
- for: '00:00:30'
- - platform: state
- entity_id: binary_sensor.portafinestra_camera
- to: 'on'
- for: '00:00:30'
- condition: []
- action:
- - service: input_boolean.turn_on
- entity_id: input_boolean.camera_open
- - alias: 'Finestre camera chiuse'
- mode: restart
- trigger:
- - platform: state
- entity_id: binary_sensor.finestra_camera
- to: 'off'
- - platform: state
- entity_id: binary_sensor.portafinestra_camera
- to: 'off'
- condition:
- - condition: state
- entity_id: binary_sensor.finestra_camera
- state: 'off'
- - condition: state
- entity_id: binary_sensor.portafinestra_camera
- state: 'off'
- action:
- - service: input_boolean.turn_off
- entity_id: input_boolean.camera_open
- - alias: 'Camera aperta'
- mode: restart
- trigger:
- - platform: state
- entity_id: input_boolean.camera_open
- to: 'on'
- condition:
- - condition: state
- entity_id: input_boolean.estate
- state: 'off'
- action:
- # Se configurato di spegnere il riscaldamento dopo un tot che è aperta lo faccio
- - choose:
- conditions:
- - condition: state
- entity_id: input_boolean.spegnimento_riscaldamento_finestre
- state: 'on'
- sequence:
- - service: script.spegni_riscaldamento
- data:
- entity: 'climate.camera'
- # Attendo un delay e loop notifiche finchè aperta e config. di notificare
- - delay:
- minutes: "{{ states('input_number.ritardo_notifiche_finestre_min') | int}}"
- - repeat:
- while:
- - condition: state
- entity_id: input_boolean.notifiche_finestre
- state: 'on'
- - condition: state
- entity_id: input_boolean.camera_open
- state: 'on'
- sequence:
- - service: script.multinotify
- data:
- title: "Finestre camera aperte troppo a lungo"
- message: >
- {% set minuti = ((now().timestamp()-as_timestamp(states.input_boolean.camera_open.last_changed)) / 60)|round(0) %}
- {{["La camera ha la finestra aperta da " ~ minuti ~ " minuti!",
- "I pinguini scorazzano liberamente in camera ormai da " ~ minuti ~ " minuti!",
- "Il ghiaccio sta prendendo il sopravvento da " ~ minuti ~ " minuti, in camera!",
- "Fa freschino in camera, la finestra è aperta da " ~ minuti ~ " minuti!",
- "Io dico che dopo " ~ minuti ~ " minuti di cambio aria puoi chiudere la finestra della camera!",
- "Secondo me " ~ minuti ~ " minuti di finestra aperta possono bastare, in camera!",
- "Hey, che ne dici di chiudere la finestra della camera? " ~ minuti ~ " minuti di cambio aria sono abbastanza!"] | random}}
- notify_app: notify.all_devices
- channel: warning
- critical: true
- alexa_target: media_player.ovunque
- - delay:
- minutes: "{{ states('input_number.ritardo_notifiche_finestre_seguenti_min') | int}}"
- - alias: 'Camera chiusa'
- trigger:
- - platform: state
- entity_id: input_boolean.camera_open
- to: 'off'
- condition:
- - condition: state
- entity_id: input_boolean.estate
- state: 'off'
- - condition: state
- entity_id: input_boolean.spegnimento_riscaldamento_finestre
- state: 'on'
- action:
- - service: script.imposta_riscaldamento
- data:
- entity: 'climate.camera'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement