Vorraussetzungen:
- Telegram Messenger
- Einen Kanal
- Einen Bot
Einen Kanal erstellen
Oben rechts auf den Button zum erstellen einer neuen Nachricht klicken.
Im erscheinenden Dialog wählen wir "Neuer Kanal" aus.
Im weiteren füllen wir die Felder des Dialoges aus und geben unserem Kanal einen Namen und ggf. eine Beschreibung.
Einen eigenen Bot erstellen
Um einen Bot zu erstellen schreiben wir dem "BotFather" (@BotFather) und schreiben das Kommando "/newbot" (Ohne die Hochkommatar " ")
BotFather wird nun einige Informationen abfragen.
- Botnamen
- Benutzernamen des Bots (Er muss zwingend auf "bot" enden.)
Im Anschluss erhalten wir die Information das der Bot erstellt wurde.
Done! Congratulations on your new bot. You will find it at t.me/*****. 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:
***Dein persönlicher Accesstoken***
Keep your token secure and store it safely, it can be used by anyone to control your bot.
For a description of the Bot API, see this page: https://core.telegram.org/bots/api
Im Anschluss fügen wir den Bot noch dem Kanal hinzu. Er kann wie ein normales Mitglied hinzugefügt werden.
Anm.: Bots werden automatisch als Admin festgelegt.
Vorbereitungen um Nachrichten zu verschicken
Um bei DIVERA Alarm automatisch eine Nachricht in DIVERA zu erzeiugen müssen wir noch herausfinden wie die Chat ID des Kanals lautet. Hierzu verwenden wir die API von Telegram mit dem Kommando /getUpdates
Der HTTP Aufruf sieht zusammengesetzt so aus: https://api.telegram.org/botBOTTOKEN/getUpdates
{ "ok": true, "result": [ { "update_id": 305156419, "channel_post": { "message_id": 3, "sender_chat": { "id": Hier steht die ID des Absenders, "title": "Test", "type": "channel" }, "chat": { "id": Hier steht die Chat-ID Sie beginnt mit einem - , "title": "Test", "type": "channel" }, "date": 1621344377, "text": "Hallo" } } ] }
Im Anschluss muss mit den gesammelten Informationen der /sendMessage Befehl zusammengebaut werden.
Ein Beispiel ist: https://api.telegram.org/botBOTTOKEN/sendmessage?chat_id=CHAT ID&text=Der Text
Der Server Antwortet dann mit der entsprechenden Meldung. Eine erfolgreiche Meldung wird wie im Beispiel unten quittiert.
{ "ok": true, "result": { "message_id": 5, "sender_chat": { "id": Absender-ID, "title": "Test", "type": "channel" }, "chat": { "id": Chat ID, "title": "Test", "type": "channel" }, "date": 1621344785, "text": "Hallo zur\u00fcck" <-- Der Text der Meldung (URL Kodiert) } }
Den fertigen HTTP-Request zum senden einer Nachricht können wir dann in den Webhook einfügen.
Webhook einrichten
Die Webhooks können in der Verwaltung unter Schnittstellen > Datenübergabe > Webhooks bearbeitet werden.
Hier legen wir einen neuen Webhook an und geben den HTTP-Request für das Senden der Nachricht an.
Einstellungen
URL/Ziel des Requests: HTTP Request zum senden der Nachricht
Format: GET urlencoded
Inhalt: Ohne Inhalt