SCOPI DELLA GUIDA
CONCETTI AFFRONTATI:
|
COMPONENTI SOFTWARE UTILIZZATI:
PREREQUISITI
DISPOSITIVI FISICI UTILIZZATI:
|
GUIDA INDICATA A UTENTI CON ISTALLAZIONE: |
|
NOTE E DISCLAIMER
|
|
Revisione scheda: 1.1 |
Abstract
La domotica personale basata su Home Assistant ha la possibilità di effettuare notifiche di vario genere (tipicamente testuali) tramite molteplici piattaforme, tutte quante facenti capo al componente “Notification“, il quale crea entità utilizzabili presso automazioni, script, scene, sequenze ecc.
In questa guida vedremo come configurare tali notifiche sfruttando il servizio Pushbullet.
P.S. Puhbullet è tra le nostre piattaforme di notifica preferite. Ciononostante, per una questione di notorietà della piattaforma si consiglia anche la visione della scheda relativa all’implementazione delle notifiche basate su Telegram. |
Assunzioni
Per la corretta applicazione di questa guida si assume che:
- si possegga almeno un account presso il servizio Pushbullet;
- in caso i destinatari delle notifiche siano molteplici e differenziati (notifiche all’uno piuttosto che all’altro), si posseggano molteplici account, tanti quanti saranno i destinatari.
N.b. Dal punto di vista tecnico nulla vieta di utilizzare un singolo account per tutti i dispositivi degli inquilini; dato però che Pushbullet accetta solo autenticazioni tramite account Google e Facebook e dato che questi ultimi sono account personali, altrettanto personale deve essere la configurazione presso di dispositivi destinatari delle notifiche.
Inoltre, la presenza di account diversi renderà la configurazione presso Home Assistant più flessibile, permettendoci di inviare sia notifiche broadcast (a tutti) sia specifiche a specifici utenti/dispositivi.
Pushbullet per ogni singolo account censisce l’elenco dei dispositivi (smartphone, computer, tablet, browser ecc.) sui quali il servizio è configurato e autenticato . Ciò significa che ogni account può essere utilizzato contemporaneamente su più dispositivi: l’integrazione con Home Assistant permette sia l’invio di una notifica verso un utente specifico (e quindi recapitata su tutti i dispositivi connessi all’account) oppure l’invio verso uno o più dispositivi specifici.
Infine, Pushbullet permette (tramite il suo sito web, non da app mobile) anche la creazione di “canali” personali (“Channels“), i quali possono contenere più account, canali che possono poi essere utilizzati come destinatari delle notifiche. Una buona strategia per inviare a tutti i gli inquilini di un ambiente domotico le notifiche è quello di creare un canale da hoc e configurare tale canale come unico destinatario delle suddette notifiche.
Token API
Per configurare le notifiche Pushbullet è necessario dotarsi di un proprio Token API, il quale può essere facilmente ottenuto accedendo al proprio account nella sezione (“Settings Account”).
A questo punto sarà necessario “generare” una API KEY cliccando su “Create Access Token“:
Verrà creata una stringa di caratteri analoga alla seguente:
You token is:
o.ff4496cd11a907cbd145e6cfc4f4d942e6a19b94
Configurazione
Per aggiungere alla configurazione di Home Assistant una nuova entità di tipo “notify” (per un utente ipotetico chiamato “Marco“, il quale utilizza Pushbullet sui propri dispositivi), la configurazione sarà:
notify:
- platform: pushbullet
name: marco
api_key: o.ff4496cd11a907cbd145e6cfc4f4d942e6a19b94
Le variabili disponibili per la personalizzazione della configurazione sono le seguenti:
api_key | (stringa|obbligatoria) La chiave API ottenuta presso l’area privata Pushbullet dell’utente Marco |
name | (stringa|facoltativa) Il nome dell’entità. Se omesso, l’entità di chiamerà “notify.notify“ |
Uso
La piattaforma di notifiche Pushbullet viene sfruttata tramite l’uso del servizio “notify”, come spiegato nella pagina dedicata al componente padre “Notifications“.
Una qualunque notifica verso un’entità “notify” (quindi verso un account Pushbullet, il “notify.marco” dell’esempio sopra) scaturisce di default in una notifica verso tutti i dispostivi associati a tale account presso Pushbullet.
Come spiegato, è anche possibile (tramite opportuna configurazione) inviare le notifiche non solo verso un dato account ma e/o verso uno o più dispositivi specifici e/o verso uno o più canali specifici.
CONFIGURAZIONE BASE
La condifurazione di base in automazione si esprime nella seguente modalità:
automation:
alias: "nome automazione"
trigger:[] #trigger che innesca l'automazione
condition: [] #condizione dell'automazione
action:
service: notify.marco
data:
title: "titolo della notifica"
message: "testo della notifica"
L’automazione descritta (al netto di trigger e condition, non definiti) innesca una notifica verso “notify.marco” (definito nell’esempio sopra) con un titolo e un corpo del messaggio.
CONFIGURAZIONE VERSO DEVICE SPECIFICO
In questo caso indirizziamo la notifica verso un device specifico incluso nella lista di quelli censiti da Pushbullet per il dato account:
automation:
alias: "nome automazione"
trigger:[] #trigger che innesca l'automazione
condition: [] #condizione dell'automazione
action:
service: notify.marco
data:
title: "titolo della notifica"
message: "testo della notifica"
target: device/mio_device
I device disponibili per l’accounto sono indicati nella sezione ad hoc presso Pushbullet.
Il campo “target” può contenere, oltre a “device/mio_device” anche altri due tipologie di destinatario:
- email/indirizzo_email
- channel/mio_canale
INVIO URL
È possibile inviare un URL specifico come payload della notifica:
automation:
alias: "nome automazione"
trigger:[] #trigger che innesca l'automazione
condition: [] #condizione dell'automazione
action:
service: notify.marco
data:
title: "invio URL"
message: "questo è un URL"
data:
url: google.com
SUPPORTO FILE
È possibile inviare un file locale come payload della notifica:
automation:
alias: "nome automazione"
trigger:[] #trigger che innesca l'automazione
condition: [] #condizione dell'automazione
action:
service: notify.marco
data:
title: "invio file"
message: "questo è un file"
data:
file: /percorso/locale/al/mio/file
N.b. per inviare file locali è necessario attivare il path presso le whitelist di Home Assistant.
SUPPORTO FILE DA URL
È possibile inviare un file remoto come payload della notifica:
automation:
alias: "nome automazione"
trigger:[] #trigger che innesca l'automazione
condition: [] #condizione dell'automazione
action:
service: notify.marco
data:
title: "invio file da URL"
message: "questo è un file daURL"
data:
file_url: https://indomus.it/wp-content/uploads/inDomus-favicon.png
Esempio in automazione
Ipotizziamo di possedere in configurazione un’entità di tipo “Sensor” di umidità relativa (chiamato “sensor.umidita“) e un “Device Tracker” (chiamato “device_tracker.marco“).
Poniamo di voler essere notificati presso l’entità di tipo “Notify” basata sull’integrazione Pushbullet chiamata “notify.marco” al superamento del valore dell’80% di umidità relativa nell’ambiente, solo se e quando Marco è a casa:
automation:
alias: "Notifica umidità"
trigger:
platform: numeric_state
entity_id: sensor.umidita
above: 80
condition:
condition: state
entity_id: device_tracker.marco
state: 'home'
action:
service: notify.marco
data:
title: "Home Assistant - Clima"
message: "Rilevata umidità elevata. Arieggiare."
Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa. |