community italiana di domotica personale
 
Notifiche della domotica Home Assistant tramite Pushbullet

Notifiche della domotica Home Assistant tramite Pushbullet

SCOPI DELLA GUIDA
  • Aggiungere alla configurazione di Home Assistant delle entità di tipo “Notifications” al fine di permettere alla propria domotica personale di notificare all’utente stati, eventi e quant’altro.
  • Livello di difficoltà: basso
  • Categoria d’integrazione: Cloud Polling
CONCETTI AFFRONTATI:
  • Configurazione software
  • Configurazione strumenti di gestione finale
COMPONENTI SOFTWARE UTILIZZATI:
PREREQUISITI
DISPOSITIVI FISICI UTILIZZATI:
GUIDA INDICATA A UTENTI CON ISTALLAZIONE:
Ambienti Home Assistant HassOS-Supervised-Core
NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • gli articoli di inDomus sono totalmente indipendenti e non sponsorizzati. Se mai questo cambiasse, verrà segnalato chiaramente sulle pagine oggetto di sponsorizzazione;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In caso di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat;
  • se hai bisogno di orientarti, c'è la mappa.
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 iconPushbullet 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“:

Pushbullet 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."

⚠️ Se di Home Assistant ne sai poco ma sei interessato a capirne di più, ti suggeriamo di partire da qui.

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.