Telegram¶
Über¶
Telegram ist ein dezentraler cloudbasierter Instant-Messenger, welcher ein offenes Protokoll und OpenSource Clients, verwendet. Außerdem ist es möglich eigene Telegram Bot zu programmieren, mit den die User interagieren können.
Offizielle Website: Telegram.org
Telegram Bot¶
Ein Telegram Bot ist ein Programm, welches auf jeder Plattform laufen kann und sich wie ein User im Chat mit extra
Funktionen verhält. So ist es möglich, den Bot via Befehlen, die mit / starten zu steuern, wie zum Beispiel
/hilfe welches die für diesen Bot möglichen Befehle anzeigt. Im FAQ auf der Offiziellen Telegram Seite
wird der Telgram Bot genauer erklärt.
Für die Integration in diesen Projekt wurde der Python Telegram Wrapper python-telegram-bot verwendet, dieser erlaubt es mit wenigen Zeilen Code einen nützlichen Telegram Bot zu erstellen.
Telegram Bot erstellen¶
- Info
- Diese Anleitung ist speziell für das Projekt
KellerBoterstellt. Alle möglichen Funktionen des Telegram Bots sind auf Telegram Bot Entwickler Dokumentation nachzulesen.
1. BotFather einrichten¶
Der Telegram BotFather ist ein Telegam Bot, welcher zur Verwaltung der eigenen Telegram Bots dient. Mit diesem
Bot ist es möglich, einen eigenen Bot zu erstellen, Befehle einzurichten, das Profilbild des Bots anzupassen und mehr.
Um Zugriff auf den BotFather zu erhalten, muss auf der Seite telegram.me/botfather auf SEND MESSAGE geklickt
werden (Abb. 11).
Anschließend öffnet sich das Telegram Fenster mit dem BotFather (Abb. 12). In diesem Fenster
auf START klicken um dem BotFather zu interagieren.
Nachdem der Chat mit dem BotFather erstellt wurde, wird dieser im Kontaktverlauf angezeigt und kann so
wieder direkt verwendet werden (Abb. 13).
2. Eigenen Bot erstellen¶
Um einen neuen Bot zu erstellen, muss im Chat des BotFather (Abb. 13) der Befehl
/newbot eingeben werden. Danach muss im Chat der Namen des neuen Bots geschrieben werden, in diesen Beispiel wird
er KellerBot heißen.
Hinweis
Der Bot Name muss immer mit bot enden und muss einzigartig sein, also der Name darf noch nicht vergeben sein!
Beispiele Keller_bot, KellerBot, kellerbot oder kellerBOT.
Nachdem Erstellen des Bots gibt Telegram die URL & den Token des Bots aus:
Done! Congratulations on your new bot. You will find it at t.me/KellerBot. You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you’ve finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this.
Use this token to access the HTTP API: 659931436:AAEAVoiIJxkswS-nl3tLBaTC1ydsgJn5SVA
For a description of the Bot API, see this page: https://core.telegram.org/bots/api
Den soebend erstellten Token notieren. Dieser wird benötigt, damit das Programm später auf den KellerBot zugreifen kann.
Warnung
Der Token des Telegram Bots sollte nie veröffentlicht werden! Der Token in diesem Beispiel existiert auch nicht.
Um den gerade erstellten Bot in dem eigenen Chat zu aktivieren, muss auf den Bot Link geklickt werden. Der Link
ist aus t.me/ und deinem Botnamen zusammengesetzt. In diesem Beispiel heißt der Link t.me/KellerBot.
Sobald auf den Link geklckt wurde, erscheint das Chat Fenster zum Bot. Dort muss wie bei dem BotFather
Abb. 12 auf START geklickt werden muss, um den neuen Bot auf dem eigenen Account zu aktivieren.
3. Bot einrichten¶
Im BotFather Chat Fenster den gewünschten Keller Bot auswählen via /mybots und auf den
neuen Bot klicken, siehe Abb. 14.
In dem neuen Untermenü (Abb. 15) auf Edit Bot klicken.
Im Bot Optionsmenü (Abb. 16) können die Werte Name, Beschreibung, About,
Bild und Befehle bearbeitet werden. Dafür auf die jeweilige Option klicken und danach den Wert im Chat eingeben
oder im Fall des Bildes, das gewünschte Bild im Chat hochladen.
Standartwerte¶
Edit Name
KellerBot
Edit About
Erstellt von Steffen.Exler@pm.me, Quellcode @ https://github.com/linuxluigi/kellerbot
Edit Description
Wasserschaden melden, Temperatur & Luftfeuchtigkeit anzeigen
Edit Commands
hilfe - zeige alle Befehle an
temperatur - Temperatur anzeigen
luftfeuchtigkeit - Luftfeuchtigkeit anzeigen
wassermelder - Wassertest
Edit Botpic :
Bild von der online Doku android-image oder von der orginal Quelle https://pixabay.com/en/android-bot-robot-television-happy-161184/ herunterladen und anschließend im Chat als Bild einfügen (Abb. 17).
4. Telegram Chat Gruppe anlegen¶
Im Optionsmenü von Telegram auf New Group klicken, um dort eine Gruppe für den KellerBot zu erstellen
(Abb. 18) z.B. mit den Namen BasementWatchGroup.
Im nächsten Schritt erscheint das Add Members Fenster, hier den KellerBot suchen, hinzufügen
(Abb. 19) und anschließend auf Create klicken, um die Gruppe zu erstellen.
5. Chat Group ID erhalten¶
Um die Chat Group ID zu erhalten, muss der KellerBot in der gewünschten Gruppe sein und es wird der Token
benötigt (welcher in dem Kaptiel 2. Eigenen Bot erstellen erstellt wurde). Außerdem muss noch mindestens eine Nachricht
in der Gruppe geschrieben werden.
Die Chat Group ID ist via https://api.telegram.org/bot<Token>/getUpdates abrufbar. In diesem Beispiel
würde die URL https://api.telegram.org/bot659931436:AAEAVoiIJxkswS-nl3tLBaTC1ydsgJn5SVA/getUpdates lauten.
Die Ausgabe der URL ist ein JSON, wobei die Group ID unter result -> 0 -> message -> chat -> id zu finden ist
(Abb. 20). Diese ID sowie den Token zwischenspeichern. Diese Werte werden später bei
der Einrichtung des Bots auf dem Raspberry Pi benötigt.









