Configurazione del servizio di notifiche Telegram con Home Assistant

In questo articolo vengono descritti i passaggi necessari per poter configurare il servizio di notifiche Telegram sul proprio dispositivo con il sistema domotico Home Assistant.

Il livello di difficoltà è medio. Tutti i passaggi sono gratuiti e pertanto non comportano alcuna spesa da parte dell’utente che li esegue.

Lato Telegram l’utente deve scaricare sul proprio dispositivo (smartphone, tablet o PC/Mac/Linux) l’applicazione Telegram dallo Store, installarla e accedere.

CREAZIONE DI UN BOT TELEGRAM

Effettuato l’accesso all’applicazione Telegram l’utente deve creare un bot Telegram

(bot Telegram: un’applicazione eseguita all’interno del sistema di messaggistica di Telegram, a cui l’utente può inviare comandi mediante l’interfaccia di chat messa a disposizione dal client).

Deve quindi annotare, da parte, la chiave_API generata e la chat_ID che andremo poi ad inserire nel file di configurazione configuration.yaml di Home Assistant.

La procedura di creazione di un bot Telegram ha inizio con la ricerca e selezione, all’interno dell’applicazione Telegram, dell’utente botFather.

In tal caso bisogna cliccare sull’icona in basso Chat e scrivere sulla riga in alto denominata Cerca la parola botFather

(botFather: Utente Telegram che consente di creare un nuovo bot Telegram).

Dopo averlo trovato e selezionato, per poter procedere alla creazione di un nuovo bot clicchiamo su Avvia e scriviamo nella casellina dei messaggi il comando /newbot

botFather ci chiede pertanto il nome del nuovo bot che chiamiamo in questo caso mionuovobot e verifica che tale nome sia disponibile. Superata la verifica, ci chiede il nome utente definitivo, il quale deve contenere come suffisso la stringa _bot

Pertanto il nostro nuovo bot telegram avrà il seguente nome: mionuovobot_bot

CREAZIONE DI UNA CHIAVE API

Terminata la procedura di creazione del bot Telegram, botFather si congratulerà con noi per la creazione del nuovo bot e comunicherà un token o chiave_API da tenere al sicuro e che in questo nostro caso sarà necessario all’integrazione in Home Assistant.

Chiudere botFather e, tornando alla ricerca dei messaggi/utenti di Telegram, cercare il proprio bot (nel nostro esempio chiamato mionuovobot_bot) e inviargli almeno un messaggio.

ATTENZIONE: questo passaggio è fondamentale, pena il mancato funzionamento dell’integrazione.

COME RECUPERARE LA CHAT ID

Ora non ci resta che recuperare la propria chat_ID. Per ottenere la chat_ID cliccare sull’icona in basso “Chat” e scrivere sulla riga in alto denominata “Cerca” la parola @myidbot

Selezionare IDBot e nella casellina dei messaggi digitare il comando /getid

Il risultato che otterremo corrisponde alla chat_ID

INTEGRAZIONE DELLA PIATTAFORMA TELEGRAM IN HOME ASSISTANT

Per integrare la piattaforma Telegram nel nostro sistema domotico cliccare sulla barra laterale destra di Home Assistant sulla voce File Editor, selezionare il file configuration.yaml e includere la seguente porzione di codice:

telegram_bot:
  - platform: polling
    api_key: chiave_API
    allowed_chat_ids:
      - chat_ID

notify:
  - name: flaminio
    platform: telegram
    chat_id: chat_ID

Come ultimo passaggio non ci resta che personalizzare i campi “chiave_API” e “chat_ID” con i due valori ottenuti ed elencati nei paragrafi precedenti, salvare il file e riavviare Home Assistant.

Al riavvio di Home Assistant, se tutto sarà andato bene, nel log apparirà una voce di questo tipo:

INFO (MainThread) [homeassistant.loader] Loaded notify.telegram from homeassistant.components.notify.telegram

la quale decreterà l’avvenuta generazione dell’entità di tipo “Notifications” chiamata notify.flaminio

NOTIFICHE TELEGRAM CON HOME ASSISTANT A PIU’ DESTINATARI

Nel caso in cui gli account Telegram da raggiungere siano più di uno, la configurazione va adattata di conseguenza ed è dunque necessario autorizzare tanti chat_ID quanti sono gli account e creare tante entità “Notification” quanti sono gli account.

La chiave_API del bot Telegram, invece, resta una sola, creata da uno qualunque degli account in questione.

LATO Telegram:

  • Tutti gli utenti devono scaricare sul proprio dispositivo (smartphone, tablet o PC/Mac/Linux) l’applicazione Telegram dal relativo Store, devono installarla e vi devono accedere.
  • Un solo utente crea il bot Telegram e genera la “chiave_API”  mentre tutti gli altri utenti cercano il bot Telegram creato (nel nostro esempio chiamato mionuovobot_bot),  lo selezionano cliccano su Avvia e gli inviano almeno un messaggio. ATTENZIONE: questo passaggio è fondamentale, pena il mancato funzionamento dell’integrazione.

LATO Home Assistant:

Ipotizziamo dunque che Flaminio possegga la chat_ID 432537230 e Donato la chat_ID 934856258, la configurazione sarà la seguente:

telegram_bot:
  - platform: polling
    api_key: chiave_API
    allowed_chat_ids:
      - 432537230
      - 934856258

notify:
  - name: flaminio
    platform: telegram
    chat_id: 432537230
  - name: donato
    platform: telegram
    chat_id: 934856258