Gebruik van Telegram (Bot)

De BOT van de Telegram app.

  • Hoe het begon
  • Raspberry Pi en de Deurbel

En de projecten waarin het ook werd gebruikt;

  • Opentherm en waarschuwingsmeldingen

Op welke manieren kan ik berichten van mij automatisering doorsturen. Dan niet met mails, maar met een chat-app of iets anders wat wel universeel is en het bericht niet in de massa verdwijnt.
Ik kreeg van meerdere kanten te horen dat er een alternatief was voor Wattsapp en dat daarbij de mogelijkheid was om met een zelf gemaakt programma berichten te sturen naar de mobile telefoon.

Later bleek dat je dan ook gelijk het resultaat op de website kon zien.

Na wat kijken op het internet bleek dat het een "BOT" heet en dat je er best veel info over kan vinden.
Na wat kijken van You-tube filmpjes werd het me al wat duidelijker. Dus maar een account aangemaakt met de telefoon. Daarna kon ik vanaf de computer verder aan de slag.
Ik koos niet vanuit windows, maar vanuit de command-line met de Raspberry pi.

 

Raspberry Pi en de Deurbel

Sonoff deurbel detectie en Sonoff als Deurbelsensor

 

Deze alinia moet nog worden uitgewerkt.

Als eerste met de de BOT-father een bot aangemaakt.

Daarna  met wat gespeel vanuit de browser via de url gekeken wat ik kon sturen naar de bot.

Daarna op mijn Raspberry pi met CURL wat uitgeprobeerd.

Toen dat werkte er een script van geschreven.

Daarna met de Crontab standaard laten opstarten na de reboot.

Uiteindelijk krijg ik nu een afbeelding toegestuurd als iemand op mijn voordeur aanbelt.

 

Opentherm en waarschuwingsmeldingen 

Telegram Bot opzetten

Vanuit Telegram (Ik werk vanaf de website https://web.telegram.org/#/im?p=@BotFather)
De link werkt alleen als je bent ingelogd in Telegram !!

Vanuit de BotFather in de telegramapp de opdracht gegeven: "/newbot"

Ik kreeg toen de vraag om een naam op te geven voor mijn Bot. Ik heb toen gekozen voor "cimate control" als verwijzing voor meldingen die vanaf de CV installatie komen, maar mogelijk ook straks voor de afzuiging worden gebruikt. (De afzuiging kan met een bussysteem worden uitgelezen, een van mijn volgende projecten:-)

daarna moest ik een naam geven voor de bot, die moest eindigen op "bot". Helaas waren veel keuzes al gebruikt, maar uiteindelijk een naam gevonden.

En toen kwam de beloning van de BotFather, ik kreeg een "token". Met deze code kan ik mijn bot benaderen. Uitleg in https://core.telegram.org/bots/api en https://core.telegram.org/bots

 

Wat is een eigen robot zonder een afbeelding, dus een mooie foutmelding van mijn CV scherm geupload na het commando: "/setuserpic".
Daarna nog de commando's: "/setdiscription en /setabouttext /setprivacy -> ENABLED en /setjoingroups -> DISABLED" gezet.

Later toegevoegd: /setcommands  Keuze gemaakt voor de juiste bot en de tekst "waterdruk - geef de druk van de CV installatie" ingevoegd

Toen was het tijd om uit de chat met de BotFather te gaan.

Om met de API te kunnen communiceren, heb ik een browser venster geopend en de url ingevoed, bestaande uit: "https://api.telegram.org/bot<API -token>/getme" en later met "https://api.telegram.org/bot<API -token>/getupdates"
Daar heb ik met name de "id" en "chat:id" uit gehaald. Deze had ik nodig. Ik weet dat dat ook kan met een bot. (weet niet meer welke)

Open vervolgens binnen Domoticz de instellingen.

Daarna kies het tabblad notificaties

En vul onderin de pagina het vakje Telegram in met de API-token en de eerder verkregen id of chat:id

 En als je op de knop Testen klikt, verschijn er een melding in telegram.

Vergeet nu vooral niet op rechts bovenin op BEWAREN te klikken !!

Nu de instelling bij een sensor:

Kies vanuit het tabblad Overige je sensor. Ik heb met de Opentherm koppeling deze sensor van de Waterdruk van de CV ter beschikking.

Klik dan op Notofications en stel de diverse instellingen in.

En bij mij komt er een melding bij mijn telegram CV bot binnen als de waterduk op of boven de 3 Bar of op of onder de 1 Bar komt.

 

Commando's vanuit Telegram uitvoeren op locale machine

Kale RPI: Telnet: 

Voor de afhandeling in Python heb ik een aantal libarys nodig, geinstalleerd met:

  •  sudo apt-get install python-requests
  • sudo apt install python3-pip
  • sudo pip3 install telepot

 Met commando "python3 bot_input.py" start ik het programma

 

 

 

 

#MQTT #RPI #Telegram #Sonoff