Home Assistant - Introduzione alle Automazioni
di Vincenzo Caputo
05 Settembre 2018
Home Assistant
Oggi introdurremo un nuovo argomento che riguarda il mondo di Home Assistant.: LE AUTOMAZIONI. Esse ci permettono di creare delle azioni che verranno eseguite in automatico quando si verificheranno determinate condizioni.
In Home Assistant abbiamo due possibilità per creare queste automazioni:
- Attraverso l'editor da WebUi
- Scrivendo direttamente le automazioni dentro al file automations.yaml
Io preferisco di gran lungo lavorare a mano direttamente sul file .yaml, questo perchè, intanto con l'editor vengono scritte in modo poco ordinato, il che non aiuta la comprensione, e poi molte cose risultano più semplificate da fare attraverso la scrittura diretta del file di testo.
Cominciamo!
Le automazioni di hass, possono essere composte da 3 parti:
- Un trigger
- Una condition
- Una action
Questo è un esempio:
(trigger) Quando Paolo arriva a casa
(condition) ed è dopo il tramonto
(action) Accendi le luci della sala
Questo è un esempio di cosa potrebbe fare un automazione.
La prima linea è un trigger dell'automazione. I trigger sono quelle condizioni per cui verrà eseguita una o più azioni; in questo caso una persona sta arrivando a casa. In hass questo può essere monitorato controllando lo stato del device_tracker di Paolo che cambia stato da "not_home" a "home".
La seconda linea invece definisce una condizione. Le condizioni sono delle verifiche opzionali che possono limitare la automazione ad un altro specifico caso. Come possiamo vedere nell'esempio, la luce si accende quando Paola arriva a casa, solo se il sole è tramontato.
L'ultima parte, cioè l'azione, verra eseguita quando il trigger e la condizione risulteranno nello stato impostato nella scrittura dell'automazione. In questo caso quando Paola arriva a casa e il sole è già tramontato, le luci della sala si accenderanno
Questa è una prima introduzione alle basi delle automazioni di Home Assistant
Dopo la versione 0.45 di Home Assistant è stato introdotto l'editor grafico delle automazioni. Esso è raggiungibile dal interfaccia di Hass, nella barra laterale selezionare Configuration e poi Automazioni.
Io non tratterò questa interfaccia, ma usero il file di testo automations.yaml.
Questo è un esempio di un automazione:
- alias: 'Rule 1 Light on in the evening'
trigger:
- platform: sun
event: sunset
offset: '-01:00:00'
- platform: state
entity_id: group.all_devices
to: 'home'
condition:
- condition: state
entity_id: group.all_devices
state: 'home'
- condition: time
after: '16:00:00'
before: '23:00:00'
action:
service: homeassistant.turn_on
entity_id: group.living_room
In questa automazione ad esempio abbiamo due trigger:
- Se manca un'ora dal tramonto
- E se tutti i device tracker sono a "casa"
Ora abbiamo una condizione:
- Se tutti i device tracker sono a "casa"
- L'ora corrente è compresa tra le 4 PM e le 11 PM
Allora avremo la seguente azione:
- Con il servizio homeassistant.turn_on e l'entità group.living_room
Ora l'automazione è conclusa dunque le luci si accenderanno se i dispositivi sono a casa da 1 ora prima del tramonto tra le 4 e le 11 pm
I trigger sono diversi, ora ve ne elencherò alcuni e vi lascio anche il link all'elenco di tutti i trigger sul sito di Hass, consultabile qui
Nel prossimo articolo vedremo invece alcune condizioni e azioni.
Time Trigger
Questo trigger può attivare l'azione ogni n minuti che vengono specificati, e ad una determinata ora del giorno.
trigger:
platform: time
minutes: 5
seconds: 00
trigger:
platform: time
at: '15:32:00'
In questo caso il primo esempio di trigger si attiva ogni 5 minuti e 0 secondi nel secondo caso invece esso si attiverà alle ore 15 e 32
Sun Trigger
Questi trigger permette di far si che al tramonto o all'alba esso venga attivato. È anche possibile usare un offset per anticipare o posticipare il trigger rispetto al tramonto o all'alba.
trigger:
platform: sun
event: sunset
offset: '-00:45:00'
In questo esempio invece il trigger si attiverà 45 minuti prima del tramonto
Nel prossimo articolo sulle automazioni spiegerò come creare delle automazioni piu complesse e vi mostrerò degli esempi che io utilizzo, oltre a questo vi illustrerò le actions e le conditions.
Vi lascio al solito video di fine articolo. Buona visione!
Produrre e aggiornare contenuti su vincenzocaputo.com richiede molto tempo e lavoro. Se il contenuto che hai appena letto è di tuo gradimento e vuoi supportarmi, clicca uno dei link qui sotto per fare una donazione.