Cosa è Telegram ?
Telegram è la concorrente diretta di Whatsapp ma in più ha, da sempre, i BOT che sono delle vere e proprie chat automatiche che ci consentono di ricevere informazioni o di fare delle richieste.
A questo punto non resta che installare Telegram sul dispositivo mobile (Android o iOS) e registrarsi al servizio.
Creare un BOT, ricavare il token e la chatId
Seguendo quanto già descritto in questo articolo creare un BOT e ricavarne il TOKEN.
Supponiamo di aver creato il BOT OpenHab
Cercare il BOT nella casella di ricerca:
@OpenHab
e inviare un messsaggio qualsiasi, nel mio caso ho scritto:
testodiprova
A questo punto incollare il seguente link sul browser inserendo il TOKEN ricavato dal passo precedente:
https://api.telegram.org/botTOKEN/getUpdates
Il risultato sarà un output JSON simile a questo:
{"ok":true,"result":[{"update_id":546577696, "message":{"message_id":3,"from":{"id":112116999,"first_name":"Massimiliano","username":"massimilianocasini","language_code":"it-IT"},"chat":{"id":112116999,"first_name":"Massimiliano","username":"massimilianocasini","type":"private"},"date":1502702545,"text":"testodiprova"}}]}
La chatId sarà il valore di result[0].message.from.id in questo caso:
112116999
OpenHab, installare l’ACTION Telegram
Per utilizzare la funzionalità Telegram è necessario installare l’addon action Telegram tramite l’interfaccia PAPER UI
OpenHab, configurazione di Telegram
Editiamo il file:
/etc/openhab2/services/telegram.cfg
e inseriamo le seguenti righe:
bots=bot1, bot2 bot1.chatId=112116999 bot1.token=162073819:AAFUj0QtqRLhs5Vj9t0ZJaoMZuWkC-pC3SA bot2.chatId=223117000 bot2.token=162073819:AAFUj0QtqRLhs5Vj9t0ZJaoMZuWkC-CC4SB
dove il valore di bots sono alias per identificare tutti i bots configurati eventualmente separati da virgola.
Possiamo inserire quanti BOTS vogliamo basta cambiare l’alias e inserire i corretti chatId e TOKEN
OpenHab, inviare un messaggio via Telegram
Editiamo un nuovo file nella cartella rules:
/etc/openhab2/rules/telegram.rules
Supponiamo di voler sapere sulla nostra chat lo stato del ventilatore collegato al rele1:
rule "Stato ventilatore" when Item rele1 changed from OFF to ON then sendTelegram("bot1", "Il ventilatore si è acceso!") end when Item rele1 changed from ON to OFF then sendTelegram("bot1", "Il ventilatore si è spento!") end
Articolo originale scritto da Massimiliano Casini, pubblicato sul sito web Tanzolab.