Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ##############################################################################
- ### GESTIONE NOTIFICA STATO CONNESSIONE VALVOLE
- - id: tado_automazione_05
- alias: "Tado 05: Segnalazione stato connessione valvole radiatori"
- description: "Tado 05: Segnalazione stato connessione valvole radiatori"
- mode: queued
- triggers:
- - trigger: event
- event_type: state_changed
- variables:
- entity_id: "{{ trigger.event.data.entity_id }}"
- old_state: "{{ trigger.event.data.old_state.state }}"
- new_state: "{{ trigger.event.data.new_state.state }}"
- old_connettività: "{{ trigger.event.data.old_state.attributes.get('connettività', 'unknown') }}"
- new_connettività: "{{ trigger.event.data.new_state.attributes.get('connettività', 'unknown') }}"
- conditions:
- # Escludo tutto quel che non è un un sensore relativo alle valvole tado
- - "{{ entity_id.startswith('sensor.tado_valvola_radiatore_') }}"
- # Verifico che sia cambiato SOLO l'attributo di connettività
- - "{{ new_connettività != old_connettività }}"
- # Escludo se il sensore proviene da unknown / unavailable o se è andato in unknown / unavailable
- - "{{ not old_connettività in ['unknown', 'unavailable'] and not new_connettività in ['unknown', 'unavailable'] }}"
- actions:
- - variables:
- timestamp: "{{ as_timestamp(now()) | float }}"
- area_name: "{{ area_name(entity_id) | upper }}"
- is_online: "{{ is_state_attr(entity_id, 'connettività', 'Ok') }}"
- event_name: "{{ 'si è riconnessa' if is_online else 'si è disconnessa' }}"
- # Se le notifiche telegram sono attive, invio un messaggio
- - if:
- - condition: template
- value_template: >-
- {{ is_state('input_boolean.tado_notifica_telegram', 'on') and (is_state('sensor.sensore_giorno_notte', 'Giorno') or is_state('input_boolean.tado_notifica_se_giorno', 'off')) }}
- then:
- - action: notify.andrea
- data:
- message: >-
- Alle {{ '%01i:%02i'%(now().hour, now().minute) }} la valvola del radiatore {{event_name}}
- title: "*SISTEMA TADO - {{area_name}}*"
- # In caso di disconnessione mi memorizzo il timestamp
- - if:
- - condition: template
- value_template: >-
- {{ is_state_attr(entity_id, 'connettività', 'Errore') }}
- then:
- - action: input_number.set_value
- data:
- entity_id: "{{ entity_id.replace('sensor.tado_', 'input_number.tado_timestamp_disconnessione_') }}"
- value: "{{ timestamp }}"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement