Zum Hauptinhalt springen
24 November, 2022

Bots in Microsoft Teams - Streamlinen repetitiver Prozesse

24 November, 2022

In unseren letzten Blogposts haben wir bereits über die Microsoft Teams Plattform berichtet und die Möglichkeiten aufgezeigt, die sich für Unternehmen neben der reinen Kommunikation ergeben. So lassen sich durch die Entwicklung individueller Tab-Apps Business-Prozesse maßgeschneidert auf die Bedürfnisse Ihres Unternehmens und Ihrer Mitarbeiter direkt in Teams integrieren

In diesem Teil der Reihe möchten wir mit der Entwicklung sogenannter Bots auf eine weitere Form von Teams-App eingehen.

Bots können Benutzer*innen im Alltag bei sich wiederholenden Aufgaben unterstützen. So kann ein Bot durch gezielte Nachfragen oder Abfragen dabei helfen, ein Feedbackformular auszufüllen oder eine Raumreservierung für einen bestimmten Termin vorzunehmen. Je nach gewünschter Komplexität kann ein Bot dabei entweder nur auf einzelne Befehle reagieren, oder aber durch mehrstufige Prozesse leiten. Bei Letzterem ist die Rede von sogenannten Workflow Bots. Diese stellen den Benutzer*innen mit jeder Interaktion weitere adaptive Auswahl- und Eingabemöglichkeiten zur Verfügung, um die Benutzer*innen so schrittweise durch den Prozess zu führen. Auch Bedingungen und Verzweigungen in der Interaktion mit dem Bot sind möglich.

Arten von Bots

Bots können für eine Vielzahl unterschiedlicher Szenarien zum Einsatz kommen. Im Folgenden zeigen wir die grundsätzlichen verschiedenen Arten von Bots.

Bots, die auf die Eingabe der Benutzer*innen warten

Diese Bots können über den Chat in Teams von Benutzer*innen aktiviert werden. Wird im Chat ein bestimmter Befehl eingegeben, wird der Bot entsprechend ausgelöst. So könnte zum Beispiel der Befehl „Raumreservierung“ den Prozess für die Reservierung eines Raums für einen bestimmten Termin zu starten. Der Bot fragt daraufhin zunächst Datum und Uhrzeit ab. Im nächsten Schritt erhält der Benutzer die Möglichkeit, die Teilnehmer hinzuzufügen. Im letzten Schritt kann der Bot nun mit den gegebenen Informationen über ein eventuell angebundenes Raumbuchungssystem herausfinden, welche Räume noch verfügbar und geeignet sind und diese dem Benutzer zur Buchung anbieten. Wählt der Benutzer einen Raum, kann der Bot den Termin entsprechend im Hintergrund anlegen und die Teilnehmer darüber informieren.

Bots für Benachrichtigungen

Bots können Benutzer*innen aber auch aktiv benachrichtigen. In diesem Fall wird der Bot nicht durch die Eingabe eines Benutzers, sondern durch ein anderes Ereignis ausgelöst. Dieses Ereignis kann in einer anderen in Teams eingebetteten Applikation stattfinden. Über einen sogenannten Webhook wird der Bot von einer anderen Applikation über dieses Ereignis informiert und benachrichtigt die entsprechenden Benutzer*innen in einem bestimmten Teams-Kanal.

Im Falle der Raumreservierung im oberen Beispiel würde ein separater Benachrichtigungs-Bot dann über einen Webhook initiiert werden, wenn der Buchungsprozess für den Raum am Ende der Benutzereingabe abgeschlossen ist, und könnte so alle Teilnehmer über den neuen bevorstehenden Termin informieren.

Bots für regelmäßige Erinnerungen

Bots können Benutzer*innen allerdings nicht nur bei bestimmten Ereignissen, sondern auch zu fest definierten Zeitpunkten aktiv benachrichtigen. Eine solche Erinnerungsfunktion könnte bspw. dafür genutzt werden, um den Benutzer jeden Morgen bei Arbeitsbeginn zu begrüßen und die bevorstehenden Termine und Aufgaben des heutigen Tages anzuzeigen.

Technische Umsetzung

Für die volle Flexibilität bei der Realisierung der Bots bietet Microsoft das Microsoft Bot Framework SDK. In der Entwicklungsumgebung (IDE) Visual Studio Code von Microsoft können so Bots unter Verwendung von Node.js und TypeScript entwickelt werden.

Damit Bots im späteren Einsatz auf Eingaben oder Ereignisse reagieren können, werden bei der Entwicklung sogenannte Activity Handler verwendet. In diesen werden die Befehle definiert, auf die der Bot reagieren soll (zum Beispiel „Raumreservierung“) sowie die Verhaltensweisen und Antworten des Bots bestimmt.

Die Antworten des Bots auf einzelne Aktivitäten, die den Benutzer*innen letztlich in Teams angezeigt werden, erfolgen in sogenannten Cards. Diese Karten können bei der Entwicklung über entsprechende Konfigurationsdateien individuell gestaltet werden. In der Regel besitzen diese einen Titel im Kopfbereich und einen Text mit den Informationen. Es gibt außerdem die Möglichkeit, fest definierte Auswahlmöglichkeiten in Form von Buttons in eine Card zu integrieren. Mit dem Klick auf einen dieser Buttons wird daraufhin die nächste Aktivität mit der entsprechenden Antwort des Bots ausgelöst.

Warum das Streamlinen von Prozessen wichtig ist

Wir eingangs bereits erwähnt können Bots die Benutzer*innen bei technisch komplexen und sich wiederholenden Aufgaben unterstützen. So muss ein Benutzer sich nicht alleine durch ein langes und kompliziertes Formular quälen, sondern wird bei der Eingabe aller Daten vom Bot an die Hand genommen und so schrittweise durch den Prozess geführt. Ein Bot kann, wie im Beispiel der Raumreservierung, bereits eine bestimmte Vorauswahl treffen und dem Benutzer so überflüssige Arbeit abnehmen. Je mehr Dienste und Applikationen in der unternehmenseigenen Teams-Umgebung verfügbar sind, an die der Bot angebunden werden kann, desto effizienter werden diese Abläufe.

Da der Bot ein fest einprogrammiertes Verhalten besitzt, laufen sich immer wiederholende Prozesse standardisiert ab und können dadurch zusätzlich beschleunigt werden. Auch werden hierdurch fehlerhafte Eingaben reduziert.

Des Weiteren bieten Bots eine weitere Möglichkeit, alle Arbeitsabläufe in eine zentrale Plattform zu integrieren. Die Benutzer*innen müssen nun also nicht mehr ständig zwischen verschiedenen Applikationen wie bspw. für die Aufgabenverwaltung, Raumbuchung etc. hin- und herwechseln, sondern können konzentriert innerhalb ihrer gewohnten Umgebung bewegen und werden weniger bei ihrem Workflow unterbrochen. Durch ein einheitliches Design aller Teams-Apps kann so außerdem die Komplexität bei der Interaktion sowie der Schulungsaufwand im Umgang mit der Software reduziert, und so letztlich die UX gesteigert werden.

Nicht zuletzt vermittelt die Interaktion mit einem Bot den Benutzer*innen, mit einem realen Gegenüber zu kommunizieren. Dieser persönlichere Charakter kann somit dabei helfen, die Hürde bei der Bewältigung komplexer technischer Prozesse und Probleme zu senken. Bei guter technischer Umsetzung des Bots sollten Benutzer*innen im Idealfall Spaß bei der Kommunikation mit Bots empfinden.

Ausblick auf Power Virtual Agents

Mit den sogenannten Power Virtual Agents bietet Microsoft ein neues Produkt für die eigenen Power Plattform an. Mit diesen ist es möglich, Bots ohne Programmierkenntnisse für die Teams-Umgebung zu erstellen. Über einen visuellen Editor kann in Form eines Graphen das Verhalten des Bots und der Verlauf der Kommunikation inklusive Wiederholungen, Verzeigungen und Bedingungen entworfen werden. Bereits während der Entwurfsphase kann der Bot direkt getestet werden.

Besonders praktisch dürften die Power Virtual Agents dann sein, wenn in einem Unternehmen bereits verschiedene Power Apps mit der Power Plattform betrieben werden.