Goodbye App, hello Chatbot
Monat für Monat landen aktuell mehr als 50 000 neue Apps im App Store. Nur selten schafft es eine davon, richtig erfolgreich zu sein – in den meisten Fällen lohnt es sich kaum, die App zu entwickeln. Wenn sie dauerhaft erfolgreich sein soll, muss sie täglich genutzt werden, sonst wird sie vergessen. Oft können diese kleineren Aufgaben statt von einer App besser von Chatbots erledigt werden, die den Vorteil haben, dass alle Funktionen über eine einzige App mit einem einheitlichen Interface erfolgen.
Bei einem Chatbot handelt es sich um einen Service, mit dem man über ein Textinterface in „natürlicher Sprache“ kommunizieren kann. Dabei kann der Chatbot auch über eine KI – also Künstliche Intelligenz – verfügen, die dem menschlichen Denken ähnlich ist. Ein Chatbot erfüllt in aller Regel ein Bedürfnis, dass er besser, schneller oder kosteneffizienter bewältigen kann als ein Mensch. Chatbots können z. B. zur Unterhaltung, für News, den Kundensupport und vieles mehr eingesetzt werden. Besonders faszinierend sind Chatbots, die über eine Künstliche Intelligenz verfügen, Eingaben in natürlicher Sprache verstehen und in der Lage sind, auf natürliche Art und Weise mit dem Nutzer zu interagieren, ohne dass vorgegebene Befehle verwendet werden müssen.
Chatbots voll im Trend
Seit Microsoft auf der Build 2016 das Motto „Bots sind die neuen Apps“, Mark Zuckerberg auf der F8 die Chatbots für den Facebook Messenger als eines der wichtigsten Themen für die nächsten fünf Jahre angepriesen und Google im Mai auf der I/O 2016 seine Messenger-Strategie mit dem neuen Allo Messenger vorgestellt hat, ist ein gewaltiger Hype um das Thema entstanden. Auch der Telegram Messenger (siehe Kasten „Telegram Messenger“) verfügt über eine Unternehmensstrategie, die voll auf Chatbots setzt. Aus diesem Grund hat Telegram mit dem Bot API 2.0 [2] eine einfache Möglichkeit geschaffen, Chatbots auf Basis von Telegram zu erstellen.
Bots vs. Apps
Chatbots haben eine Reihe von Vorteilen gegenüber Apps. Der größte Vorteil ist die Tatsache, dass Bots nicht installiert werden müssen; Bots sind nur ein weiterer Chatkontakt im Messenger, sie können sehr einfach über soziale Netzwerke und die Messenger-Plattform geteilt werden, und die Entwicklung eines Messenger-Bots ist wesentlich einfacher und günstiger: Mit weniger als 500 Zeilen Code kann man schon einen einfachen Bot realisieren, der plattformübergreifend auf allen unterstützten Geräten (Android, iOS, Windows, Mac, Web) verfügbar ist. Das User Interface ist dem Nutzer bekannt und die Einstiegshürde für den Anwender ist spürbar geringer. Updates gibt es nicht, und eine Anmeldung bzw. Registrierung fällt auch weg, da der Anwender bereits im Messenger angemeldet ist.
Telegram Messenger
Der Telegram Messenger ist ein kostenloser Instant-Messaging-Dienst mit Clients für iOS, Android, Desktop und Web. Mit Telegram können Textnachrichten, Fotos, Videos und Dokumente ausgetauscht werden. Dank eines offenen Bot-API ist es jedem Entwickler möglich, einen Chatbot zu realisieren, der die Telegram-Messenger-Infrastruktur nutzt.
Der Echo Bot
Ein Echo Bot ist ein sehr einfacher Chatbot: Er tut nichts anderes, als den gesendeten Text zu erwidern. Die Echo-Funktion soll auf möglichst einfache Weise zeigen, welche Komponenten für einen einfachen Chatbot benötigt werden. Als kleine Ergänzung wird der Echo Bot eine Verzögerungsfunktion erhalten, um die Möglichkeit der asynchronen Kommunikation zu demonstrieren.
Bot anlegen
Das Anlegen eines Bots ist denkbar einfach und erfolgt direkt im Telegram-Client. Voraussetzung ist ein installierter Telegram Messenger und der Chatkontakt zum „BotFather“, der über die Suchfunktion schnell gefunden ist. Dank des BotFathers ist es mit wenigen Befehlen möglich, einen neuen Chatbot zu erstellen. Der BotFather führt den Chat, und man muss nur den Anweisungen folgen (Abb. 1).

Der erstellte Bot hat die folgende Kennung:
Name: Echobot ID: Phpmagechobot
Am Ende des Chats mit dem BotFather erhält man ein Token, das für die Kommunikation mit dem Telegram-API nötig ist. Der BotFather kann aber noch mehr und versteht die in Tabelle 1 aufgeführten Befehle.
Befehl | Funktion |
---|---|
/newbot | Anlegen eines neuen Bots |
/token | Anlegen eines neuen Tokens für einen existierenden Bot |
/revoke | Aufheben eines existierenden Tokens für einen Bot |
/setname | Namen des Bots ändern |
/setdescription | Bot-Beschreibung ändern |
/setabouttext | About-Text des Bots ändern |
/setuserpic | Profilbild des Bots ändern |
/setinline | Inline-Settings des Bots ändern (dazu später mehr) |
/setinlinegeo | Inline-Location-Request-Einstellungen ändern |
/setinlinefeedback | Inline-Feedback-Einstellungen ändern |
/setcommands | Bot-Kommandos verwalten (die Kommandos sollten in Telegram bekannt gegeben werden, um dem Nutzer später die Eingabe von Befehlen zu vereinfachen; trotzdem ist dieser Schritt optional) |
/setjoingroups | Zum Festlegen, ob der Bot in Gruppenchats verwendet werden kann |
/setprivacy | Privatsphäreeinstellungen des Bots für Gruppenchats |
/deletebot | Bot löschen |
/cancel | Aktuelle Operation abbrechen |
Tabelle 1: Die Funktionalitäten des BotFather
Das sind die Befehle, mit denen man seine Bots verwalten kann. Wichtig zu wissen ist noch, dass man den Bot nur mit dem Telegram-Client der Mobilfunknummer verwalten kann, mit der dieser Bot angelegt wurde. Da es auch möglich ist, mehrere Bots mit einem Mobiltelefon zu verwalten, wird man nach der Auswahl eines Befehls (z. B. /setuserpic) als Erstes nac...