Telegram-Bot auf Kotlin: Von Grund auf in einer Stunde erstellen

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Warum Kotlin die ideale Sprache für einen Telegram-Bot ist?

\n

Haben Sie sich jemals gefragt, warum Kotlin so schnell die Herzen der Entwickler erobert hat? Die Sache ist die, dass diese Sprache die Prägnanz von Python und die Leistungsfähigkeit von Java vereint, aber ohne deren Nachteile auskommt. Wenn es um die Erstellung eines Telegram-Bots auf Kotlin geht, erhalten Sie nicht nur eine funktionierende Lösung, sondern eleganten, leistungsstarken und leicht wartbaren Code.

\n

Stellen Sie sich vor: Sie schreiben einen Bot, der Tausende von Anfragen pro Sekunde verarbeitet, störungsfrei läuft und der Code benötigt dabei halb so viele Zeilen wie in Java. Klingt wie ein Traum? In Wirklichkeit ist es Realität. Ein Telegram-Bot auf Kotlin ist nicht nur modern, sondern auch praktisch. Besonders wenn Sie bereits mit dem JVM-Ökosystem vertraut sind oder nach Python etwas Neues ausprobieren möchten.

\n

In dieser Anleitung erstellen wir Schritt für Schritt einen vollwertigen Bot: von der Registrierung bei BotFather bis zur Bereitstellung auf einem Server. Sie erfahren, wie Sie Befehle verarbeiten, mit Tastaturen arbeiten und sogar Dateien senden. Los geht's!

\n\n

Schritt 1: Umgebungsvorbereitung und Bot-Registrierung

\n

Bevor wir Code schreiben, müssen wir ein Token erhalten – den Zugangsschlüssel zur Telegram-API. Dies geschieht über den offiziellen Bot BotFather. Der Vorgang dauert weniger als eine Minute.

\n
    \n
  • Öffnen Sie Telegram und suchen Sie nach @BotFather.
  • \n
  • Senden Sie den Befehl /newbot.
  • \n
  • Überlegen Sie sich einen Namen (z.B. MyKotlinBot) und einen Benutzernamen, der auf bot endet (z.B. MyKotlinBot).
  • \n
  • Speichern Sie das erhaltene Token – es wird für die Verbindung benötigt.
  • \n
\n

Jetzt richten wir das Projekt ein. Ich empfehle die Verwendung von IntelliJ IDEA Community Edition (sie ist kostenlos und funktioniert hervorragend mit Kotlin). Erstellen Sie ein neues Gradle-Projekt mit Kotlin DSL.

\n\n

Abhängigkeiten hinzufügen

\n

Für die Arbeit mit der Telegram-API verwenden wir die Bibliothek TelegramBots – sie ist der De-facto-Standard in der Welt von Kotlin und Java. Öffnen Sie die Datei build.gradle.kts und fügen Sie hinzu:

\n
dependencies {\n    implementation("org.telegram:telegrambots:6.9.7.1")\n    implementation("org.telegram:telegrambotsextensions:6.9.7.1")\n    implementation("ch.qos.logback:logback-classic:1.5.6")\n}
\n

Die erste Bibliothek ist der Kern, die zweite enthält nützliche Erweiterungen (z.B. für die Befehlsverarbeitung), die dritte dient der Protokollierung, um Fehler zu sehen.

\n\n

Schritt 2: Unseren ersten Bot auf Kotlin schreiben

\n

Erstellen Sie eine Klasse MyBot, die von TelegramLongPollingBot erbt. Dies ist der einfachste Weg: Der Bot fragt selbstständig den Telegram-Server nach neuen Nachrichten ab.

\n
import org.telegram.telegrambots.bots.TelegramLongPollingBot\nimport org.telegram.telegrambots.meta.api.objects.Update\n\nclass MyBot : TelegramLongPollingBot() {\n\n    override fun getBotUsername(): String = "MyKotlinBot" // Ihr Benutzername\n\n    override fun getBotToken(): String = "IHR_TOKEN_HIER" // Token von BotFather\n\n    override fun onUpdateReceived(update: Update?) {\n        // Vorerst nur ein Platzhalter\n        if (update?.hasMessage() == true && update.message.hasText()) {\n            println("Nachricht erhalten: ${update.message.text}")\n        }\n    }\n}
\n

Jetzt müssen wir den Bot starten. Erstellen Sie eine Datei Main.kt mit dem Einstiegspunkt:

\n
import org.telegram.telegrambots.meta.TelegramBotsApi\nimport org.telegram.telegrambots.updatesreceivers.DefaultBotSession\n\nfun main() {\n    val botsApi = TelegramBotsApi(DefaultBotSession::class.java)\n    botsApi.registerBot(MyBot())\n    println("Bot gestartet!")\n}
\n

Starten Sie ihn – und Ihr erster Telegram-Bot auf Kotlin lebt bereits! Vorerst gibt er nur Nachrichten in der Konsole aus, aber das ist erst der Anfang.

\n\n

Schritt 3: Befehle verarbeiten und Antworten senden

\n

Nur Nachrichten zu lesen ist langweilig. Bringen wir dem Bot bei, auf Befehle zu antworten. Dazu verwenden wir die Annotation @BotCommand aus den Erweiterungen, aber zuerst schreiben wir die Klasse um, sodass sie erbt

Blogs

Buchempfehlungen