Entwicklung eines Bots – Ein Beispiel

In diesem Artikel möchte ich ein Bot präsentieren, der mit dem Bot Framework von Microsoft entwickelt wurde. Die Aktivitäten kann bis zur Veröffentlichung des Bots in 6 Schritten zusammengefasst werden.

  1. Entwicklung des Bots mit Hilfe der Dokumentation vom Bot Framework. Testen und Debugging von Entwicklung erfolgte auf Visual Code und botframework-emulator
  2. Auf dem Microsoft Azure Portal (Visual Studio Team Services) kann ein „Leistungstest“ bzw. ein „Performance test“ durchgeführt werden. Mit dieser Funktion wurde die Leistung der Seite für ein „User load“ (Nutzeranzahl) von 150 und für die Dauer von 1 Minute getestet. Nützliche Information zur Antwortzeit, CPU&Memory gemäß Visual Studio wurden präsentiert. Funktionstests werden durch DirectLine durchgeführt. In diesem Fall muss Microsoft Bot Framework selber „gehosted“ werden.
  3. Registrieren des Bots auf http://dev.botframework.com
  4. Eine WebApp wird auf Azure installiert. Der Code wurde über github nach Azure gebracht. Anschließend wird sie mit Microsoft APP ID & PW mit dem Bot verknüpft.
  5. Verbreitung des Bots auf verschiedenen Kanälen wie Web, Skype, Slack
  6. Live Test: Ein finaler Livetest kann entweder auf der dev.botframework Seite oder direkt online auf der Seite des Bots durchgeführt werden.

Was macht dieser Bot:?

  • Nach Eingabe eines Textes vom User stellt der Bot den User eine Frage
  • Anhand der Antwort schickt er ein RichCard mit Link, Bild, und Button zurück
  • Eine Eingabevalidierung (input validation) bei drei 3 fehlerhaften Eingaben vom User liegt auch vor. Der User bekommt einen entsprechenden Hinweis


Und wie finden Sie den Bot?

Nun gehen wir kurz auf die Schritte während der Entwicklung ein.

Während auf Visual Code entwickelt wird, kann mit Hilfe von ChatConnector lokal auf den Emulgator auf einen lokalen Port 3978 getestet werden. Rechts beim botframework-emulator, liegt ein Log und die Details von Und finden Sie den Bot?

In Visual Code kann man „Debuggen“ auswählen. Auch Breakpoints kann man einsetzen. Die Variablen können beim Debuggen detailliert betrachtet werden. Auch der Dialog Stack ist zu sehen.

So nun kommen wir zum Code. Ich könnte Ihnen meinen github Link zur Verfügung stellen. Doch will ich Sie animieren, diesen Bot selber nachzuprogrammieren. Viel Erfolg! Wenn Sie Hilfe brauchen, dann schicken Sie eine kurze Email an info@internetretailing.de.

Der Code ist in vier Teilen geteilt.

  1. Import von Modulen und Einstellung des Servers
  2. Einstellung ChatConnector
  3. Einstellung UniversalBot
  4. Implementierung der Logik des Dialogs
Was sagen die anderen zu der Idee?