blitz.cloudPreise
DeutschDE
AnmeldenApp online stellenStarten

Einen Telegram-Bot hosten, der online bleibt

Deinen Telegram-Bot aus GitHub auf Servern in der EU betreiben, mit Polling oder Webhook, und rund um die Uhr online halten. Kostenlos testen, dauerhaft ab 2 EUR im Monat.

Aktualisiert

Ein Telegram-Bot nützt nur, wenn er antwortet, sobald ihm jemand schreibt, auch um drei Uhr morgens. Auf blitz.cloud stellst du das GitHub-Repository des Bots in ein paar Minuten online, auf Servern in der EU, und jeder Push baut eine neue Version. Wie du ihn am Laufen hältst, hängt davon ab, wie dein Bot seine Nachrichten bekommt.

Polling oder Webhook?

Telegram gibt einem Bot seine Nachrichten auf eine von zwei Arten.

  • Polling (getUpdates, run_polling() in python-telegram-bot, bot.launch() in Telegraf ohne Webhook): Der Bot fragt Telegram selbst nach neuen Nachrichten. Er braucht keine Adresse. Lass ihn im Hintergrund laufen.
  • Webhook (setWebhook): Telegram schickt jede Nachricht an eine HTTPS-Adresse von dir. Der Bot braucht eine Adresse, die zu jeder Uhrzeit antwortet.

Bist du unsicher, ist Polling hier der einfachere Weg.

Ein Polling-Bot im Hintergrund

  1. Klick auf "Host something new", dann auf "My own code", und wähl das Repository des Bots.
  2. Schalte beim Benennen der App "Runs in the background" ein. Der Bot bekommt keine Adresse und schläft nie ein.
  3. Trag den Token von BotFather im Tab Environment der App ein, etwa als TELEGRAM_TOKEN. Einstellungen werden verschlüsselt gespeichert.
  4. Bau ihn. Im Tab Logs steht, was der Bot ausgibt.

Im kostenlosen Tarif läuft eine Hintergrund-App zur gleichen Zeit, und sie hält an, wenn sich 2 Tage lang niemand anmeldet, nichts ausgerollt wird und niemand das Dashboard öffnet. Einen Tag vorher schreiben wir dir eine E-Mail, und mit Start läuft er wieder. Soll er ohne das laufen, mach ihn für 2 EUR im Monat zur Pro-App, oder nimm Pro für 7 EUR im Monat, damit laufen beliebig viele Hintergrund-Bots. Beide halten nicht an.

Ein Webhook-Bot mit Adresse

Stell ihn als normale App mit Adresse online, etwa bot.deinname.blitz.cloud, und richte den Webhook dorthin. Der Bot sollte auf dem Port aus PORT lauschen (8080). HTTPS wird für dich eingerichtet.

Im kostenlosen Tarif schläft eine App mit Adresse nach 15 Minuten ohne Besuch ein, und die Anfragen von Telegram wecken sie nicht, Nachrichten gingen also verloren. Halte sie als Pro-App oder mit Pro wach. Dann beantwortet sie jedes Update und kann auch unter einer eigenen Domain laufen.

Eine Datenbank und ein Dashboard

Speichert der Bot Nutzer oder Einstellungen, leg auf der Seite Databases eine PostgreSQL- oder Redis-Datenbank an und verbinde sie; die Adresse kommt als Umgebungsvariable an, und die Datenbank wird jede Nacht gesichert. Ein Bot und sein Web-Dashboard aus einem Repository gehen als eine App aus mehreren Teilen online: Der Bot läuft weiter, während das Dashboard schläft. Siehe mehrere Dienste in einem Repository.

Fragen

Was kostet es?

Ausprobieren ist kostenlos und braucht keine Karte. Einen Bot dauerhaft laufen zu lassen kostet als Pro-App 2 EUR im Monat (oder 15 EUR im Jahr), oder 7 EUR im Monat mit Pro für alle deine Apps. Den ersten Monat Pro bekommst du zurück, wenn du innerhalb von 30 Tagen fragst.

Braucht mein Bot ein Dockerfile?

Nein. Hat das Repository keins, schreiben wir eins aus requirements.txt oder package.json und reparieren es, wenn der Build fehlschlägt. Hast du ein eigenes, nehmen wir das.

Wo läuft er?

Auf den Servern von blitz.cloud in der EU, betrieben von BlitzWorks, einem Unternehmen in Deutschland.

Halte deine App online, in der EU.

Stell sie in wenigen Minuten aus GitHub oder dem App Store online. Pro hält deine Apps rund um die Uhr wach, unter deinen eigenen Domains, für 7 EUR im Monat für alle zusammen, und du kannst es vorher 14 Tage testen.