Bentrovati amici smart!
Nel video precedente abbiamo visto una panoramica della sezione Automazioni e Scenari, concentrandoci sulla scheda Automazioni e illustrandone le logiche di base. Oggi ci focalizzeremo sulla sezione Quando delle automazioni, provando a capire quali sono gli strumenti principali che Home Assistant ci mette a disposizione.
La sezione Quando stabilisce cosa fa partire un’automazione, ovvero il nostro evento scatenante, meglio conosciuto come Trigger o strumenti di attivazione. In parole semplici, è il "Quando succede qualcosa allora attiva l'automazione".
Cliccando su "Aggiungi Attivazione", Home Assistant ci mostra l'elenco degli strumenti disponibili che possiamo utilizzare come attivatori (o trigger) per le nostre automazioni. Iniziamo subito analizzandone due tra i più comuni:
- Dispositivo
- Entità
Come si intuisce dal nome, ci permettono di sfruttare i dispositivi o le entità, tra quelle presenti nella sezione Dispositivi e Servizi, come eventi scatenanti per avviare un’automazione.
Per chi se lo fosse perso abbiamo parlato dei Dispositivi e delle Entità nella terza parte della tappa dedicata a Dispositivi e Servizi.
Nel contesto delle automazioni, questi due strumenti possono sembrare molto simili, ma in realtà hanno caratteristiche e finalità ben distinte, che è importante conoscere per sfruttarli consapevolmente nei nostri automatismi.
Attivazione tramite Dispositivo
Aggiungendo lo strumento Dispositivo nella sezione "Quando", vediamo subito che si presenta con due menu a tendina:
- Dispositivo: dove scegliamo il dispositivo fisico tra quelli già presenti e integrati in Home Assistant.
- Attivazione: questo menu si abilita solo dopo aver selezionato un dispositivo dal primo menu e ci mostra l’elenco delle sue proprietà o entità riconosciute ed esposte da Home Assistant, che possiamo utilizzare come evento scatenante per l'automazione.
Ma cosa significa proprietà riconosciute ed esposte da Home Assistant?
Significa che le proprietà visibili in questo secondo menu a tendina sono quelle che Home Assistant è in grado di rilevare automaticamente, in base al tipo di dispositivo e al modo in cui è stato integrato nel sistema.
Questo dettaglio è fondamentale perché non tutti i dispositivi o tutte le loro proprietà potrebbero essere disponibili in questa lista, e in questi casi potremo semplicemente affidarci ad un altro strumento che vedremo a breve.
In questo momento concentriamoci solamente sullo strumento/trigger Dispositivo facendo un esempio pratico. Proviamo a scegliere una lampadina come dispositivo trigger, nel mio caso una delle mie Philips hue denominata Luce 1. Nel menu Attivazione vedremo comparire le seguenti opzioni:
- Luce 1 attivato o disattivato
- Luce 1 disattivato
- Luce 1 attivato
Cerchiamo di capire meglio cosa significano queste selezioni:
Se selezioniamo l'attivazione "Luce 1 attivato o disattivato", stiamo dicendo a HomeAssistant: "Quando la lampadina Luce 1 viene attivata o disattivata, allora attiva questa automazione".
Se invece selezioniamo "Luce 1 disattivato", stiamo dicendo a HomeAssistant: "Quando la lampadina Luce 1 viene disattivata, allora attiva questa automazione".
Stessa cosa, se selezioniamo "Luce 1 attivato", stiamo dicendo ad HomeAssistant: "Quando la lampadina Luce 1 viene attivata, allora attiva questa automazione".
Facciamo un ulteriore esempio con un dispositivo che possiede un set di proprietà/entità più articolato. Ad esempio, selezioniamo lo ZBMINIR2 della Sonoff e vediamo subito che l’elenco delle attivazioni è molto più ampio rispetto a quello della lampadina.
Tra quelle disponibili, potremmo provare ad utilizzare "Power-on behavior".
Brevemente, questa proprietà, specifica dello ZBMINIR2, fornisce svariate sotto selezioni che determinano il comportamento del dispositivo al ritorno della corrente dopo un blackout, permettendoci di scegliere se deve rimanere spento, accendersi o riprendere l’ultimo stato salvato.
Possiamo sfruttare questa proprietà per creare un’automazione che si attivi nel momento in cui la sua configurazione viene modificata. Ad esempio, supponiamo di voler attivare l'automazione quando la proprietà "Power-on behavior" cambi da Off a On. Per farlo ci basterà selezionare la suddetta proprietà dal menu attivazione per accedere alle sue sotto proprietà e infine selezionare From Off to On.
In questo modo stiamo dicendo a HomeAssistant: "Quando la sottoproprietà della proprietà Power-on behavior del dispositivo ZBMINIR2 cambia da Off a On, allora attiva questa automazione".
In definitiva, lo strumento Dispositivo è tra quelli che utilizzeremo più spesso, perché ci offre un approccio semplice e immediato per accedere alle proprietà principali di un dispositivo e usarle come attivatori nelle nostre automazioni.
Non serve conoscere dettagli tecnici o parametrizzazioni avanzate perché tutto ciò che ci serve è già lì, pronto all’uso, mappato ed esposto direttamente da Home Assistant.
Attivazione tramite Entità
Come dicevo all'inizio, però, non tutti i dispositivi o tutte le loro proprietà potrebbero essere disponibili utilizzando lo strumento attivatore di tipo Dispositivo, e le ragioni possono essere svariate, ad esempio:
- Limitazioni dell’integrazione;
- Supporto parziale da parte del sistema;
- Scelte tecniche dello sviluppatore;
- Problemi di configurazione
- Elementi virtuali come gli Aiutanti, che per loro natura sono delle entità
- Dispositivi Custom realizzati in casa ecc ecc
In tutti questi casi, se un dispositivo o una determinata proprietà di un dispositivo non dovesse essere disponibile tramite lo strumento attivatore di tipo Dispositivo, dovremo affidarci a un altro strumento attivatore, denominato Entità.
Come suggerisce il nome, questo strumento ci permette di selezionare un’entità specifica tra quelle disponibili nella scheda Entità della sezione Dispositivi e Servizi, per utilizzarla come evento scatenante dell’automazione.
Lo strumento Entità ci consente di gestire praticamente qualsiasi entità o aspetto di un dispositivo fisico o virtuale, in modo più meticoloso, mirato ed avanzato rispetto a quanto potremmo fare con lo strumento Dispositivo.
Questo per dire che lo strumento attivatore Entità non solo ci permette di colmare eventuali limiti dello strumento Dispositivo, ma anche di poter eseguire in modo analogo le medesime operazioni.
Capiamo le differenze trai due strumenti
A questo punto verrebbe naturale chiedersi: se abbiamo già lo strumento Entità, che ci permette di intercettare praticamente qualsiasi proprietà o entità di un dispositivo al fine di attivare le nostre automazioni, perchè servirci dello strumento Dispositivo?
A prima vista, i due strumenti attivatori possono sembrare equivalenti, ma in realtà hanno scopi diversi, ed è fondamentale capirli sin da subito per non confondersi e per ottimizzare al meglio la gestione delle proprie automazioni.
- Lo strumento attivatore Dispositivo ci propone un elenco predefinito di proprietà disponibili per un determinato dispositivo, scelti in base a come è stato integrato in Home Assistant. Questo strumento è comodo, veloce e perfetto per chi non ha molte pretese o, semplicemente, vuole realizzare un’automazione senza conoscere o applicare parametrizzazioni avanzate.
- Lo strumento attivatore Entità, invece, è pensato per casi più avanzati o in tutti quei casi in cui lo strumento Dispositivo non offre quello che vogliamo: ci permette di avere un controllo più preciso sull’intercettazione delle variazioni di stato di un dispositivo, di lavorare con dispositivi o entità non completamente supportati dallo strumento Dispositivo, oppure di utilizzare gli Aiutanti, cioè quegli elementi virtuali di cui abbiamo già parlato nel video “Dispositivi e Servizi – Parte 3”.
Proviamo a capire meglio
Per comprendere meglio la distinzione tra lo strumento attivatore Dispositivo e lo strumento attivatore Entità, facciamo un esempio semplicissimo.
Immaginiamo di avere un sensore di presenza, di qualsiasi brand, e di volerlo utilizzare come trigger per attivare un’automazione. Un sensore di questo tipo, nella maggior parte dei casi, non si limita semplicemente ad avere due stati, cioè a rilevare la presenza o l’assenza di un soggetto, ma può fornire informazioni più dettagliate, come la distanza dal punto di rilevamento, ad esempio: vicinissimo, vicino, distante o lontanissimo.
- Se utilizzassimo lo strumento attivatore Dispositivo, potremmo sfruttare solo le proprietà principali che Home Assistant ci propone, come presenza o assenza. Quindi, la nostra automazione si attiverebbe semplicemente quando viene rilevato uno dei due stati.
- Se invece usassimo lo strumento attivatore Entità, avremmo la possibilità di selezionare con precisione uno stato specifico tra quelli disponibili. Potremmo, ad esempio, attivare l’automazione solo quando la presenza rilevata è “vicino” o “lontano”, ottenendo un livello di controllo più mirato.
In sostanza, Entità ci permette di lavorare con maggiore finezza, sfruttando stati o attributi avanzati che lo strumento Dispositivo potrebbe non esporre direttamente.
Le due opzioni dell'attivazione Entità
Selezionando lo strumento Entità dalla lista, si apre un sotto-menu che ci offre due opzioni principali:
- Stato: come suggerisce la descrizione, permette di intercettare quando un’entità (o un suo attributo) si trova in uno stato specifico.
Ad esempio, pensiamo di voler avviare un’automazione quando il valore di un sensore di temperatura è uguale a 20 gradi, oppure, tornando all'esempio del sensore di presenza, potremmo voler attivare una certa scena solo quando la presenza rilevata è “vicino” o “lontano”, escludendo altri stati. In questo caso stiamo dicendo ad Home Assistant: “Quando questa entità assume esattamente quello stato, allora esegui l’automazione”. - Valore numerico: consente di attivare un’automazione quando il valore numerico dello stato di un’entità (o di un suo attributo) supera o scende sotto una soglia definita.
Ad esempio, potremmo voler accendere un ventilatore quando la temperatura supera i 25 gradi, o inviare una notifica se scende sotto i 16. Questa tipologia è perfetta ogni volta che lavoriamo con valori dinamici come temperatura, umidità, consumo energetico, livello di batteria e così via.
Stato
L’opzione Stato si presenta con quattro menu a tendina, di cui solo il primo è inizialmente selezionabile. In questo primo menu possiamo selezionare l’entità che vogliamo utilizzare come attivatore dell’automazione.
Anche in questo caso, per capire ulteriormente la differenza tra l’attivazione Dispositivo ed Entità, proviamo a selezionare la stessa luce dell’esempio precedente, ma questa volta utilizzando la sua entità corrispondente.
Aprendo il menu Attributo, vedremo che Home Assistant ci mette a disposizione, per l'entità selezionata, opzioni come Effetto, Modalità colore, Luminosità e Dynamics. Tutte specifiche per l'entità del dispositivo selezionato, cioè Luce 1.
Se ricordate, nell’attivazione tramite Dispositivo avevamo già delle opzioni predefinite per intercettare lo stato della luce in modo rapido e immediato, come "Luce 1 attivato o disattivato".
Se volessimo ottenere lo stesso risultato utilizzando l’attivazione tramite Entità, potremmo ad esempio selezionare l’attributo "Luminosità" e impostare il valore 100 (ovvero il 100% della luminosità) nel campo A. I campi DA e A ci permettono di definire un intervallo, che va appunto da un valore minimo a uno massimo. In questo caso, possiamo tranquillamente ignorare il campo DA e concentrarci solo sul valore di destinazione nel campo A, indicando che vogliamo attivare l’automazione quando l’attributo "Luminosità" raggiunge il livello specifico. Tecnicamente stiamo dicendo ad Home Assistant: “Quando l’attributo Luminosità della Luce 1 raggiunge il 100%, allora attiva l’automazione”. Che di fatto, in modo simile, equivale alle proprietà "Luce 1 attivo" dello strumento Dispositivo.
Come abbiamo appena visto, ottenere lo stesso risultato con lo strumento Entità richiede qualche passaggio e manualità in più rispetto all’attivazione tramite Dispositivo. Ma questo non è necessariamente un limite, anzi. Questo approccio ci permette di avere un controllo più preciso e dettagliato, soprattutto quando abbiamo bisogno di definire condizioni più specifiche.
Ad esempio, se volessimo attivare un’automazione quando una luce raggiunge una determinata percentuale di luminosità, oppure quando cambia colore, dovremmo necessariamente utilizzare Entità. Questo perché, almeno nel caso della lampadina che sto utilizzando io, l’attivatore Dispositivo non espone direttamente queste proprietà tra le opzioni selezionabili.
Un altro dettaglio interessante sia dello strumento Entità che dello strumento Dispositivo è la possibilità di utilizzare il campo "Per", nel quale possiamo specificare per quanto tempo una determinata condizione deve rimanere vera prima che l’automazione venga attivata.
Ad esempio, potremmo voler spegnere una luce solo se il sensore di presenza resta in uno specifico stato per almeno 2 minuti, evitando così di spegnere la luce immediatamente.
Ricapitolando
Quando vogliamo utilizzare un dispositivo come evento scatenante per un’automazione, nella maggior parte dei casi possiamo affidarci all’attivatore Dispositivo, che propone un set di proprietà già esposte da Home Assistant, pronte all’uso e facili da configurare.
Se invece ci rendiamo conto che alcune proprietà non sono disponibili tra quelle proposte, oppure abbiamo bisogno di intercettare in modo più preciso il comportamento di un’entità specifica o di un Aiutante, allora entra in gioco l’attivatore Entità, che ci garantisce una libertà e una personalizzazione decisamente più avanzata.
Bene per oggi è tutto! Nel prossimo video approfondiremo ulteriori strumenti presenti nella sezione "Quando" di un’automazione. Come sempre se vi fa piacere seguitemi per altri tutorial, attivate la campanellina e lasciate un like al video.