nw  

Details zur Implementation

Systemarchitektur des Xentisbot V2.0

Referenz Nr. Beschreibung
Xentisbot Chat Interface Diese Komponente stellt die App für MS-Teams dar. Sie sendet die vom Benutzer eingegebenen Nachrichten weiter an den MS Bot Framework-Dienst. Ebenfalls empfängt die App Antwortnachrichten und zeigt diese dem Benutzer an.
MS Bot Framework-Dienst Der MS Bot Framework-Dienst ist eine von Microsoft bereitgestellte Schnittstelle zum Registrieren und Verwalten von Bots. Alle Nachrichten werden durch diese Schnittstelle geleitet, werden von Microsoft mittels einer App-Id auf ihre Validität geprüft und anschliessend weitergeleitet an ein öffentliches, aufrufbares API (siehe Xentisbot Teams).
Xentisbot Teams Die Komponente Xentisbot Teams ist eine öffentlich erreichbare API, welche mit dem Microsoft Bot Framework erstellt wurde. Das Framework bietet eine Vielzahl an hilfreichen Implementationen für die Kommunikation mit dem Benutzer (Senden von Nachrichten, vorgefertigte Kontrollflüsse, Authentifizierung etc.). Die vom Benutzer via MS-Teams versendeten Nachrichten werden empfangen, aufbereitet und anschliessend an die Xentisbot API weitergeleitet. Ebenfalls wird für jeden Benutzer ein Benutzerprofil mit seinen bevorzugten Einstellungen in der Datenbank abgelegt.
Kommunikationslogik Jeglicher Kommunikationsfluss bei Konversationen wird durch diese Komponente vom Xentisbot Teams gesteuert. Für längere und komplexe Kommunikationsflüsse wird gespeichert, in welchem Zustand sich der Benutzer in der Kommunikation befindet.
Command Optimizer Der Command Optimizer hat ein generelles Verständnis dafür, wie die Kotlin API funktioniert, und bereitet die Anfragen des Benutzers für diese API auf. Dabei verwendet der Command Optimizer die jeweilige Default-Suchstrategie des Benutzers oder den vom Benutzer im Befehl angegebenen Wert. Für jede Abfrage probiert der Command Optimizer zudem alternative Suchstrategien aus und bietet dem Benutzer die Möglichkeit, sich diese Resultate ebenfalls anzeigen zu lassen (insofern existent). Ebenfalls zeigt der Command Optimizer dem Benutzer Buttons für weiterführende Befehle an. Dadurch kann der Benutzer einfach zwischen verknüpften Informationen navigieren. Der Command Optimizer bildet damit die Grundlage für das Umsetzen der Conversational Fähigkeit
UserProfile DB Die UserProfile Datenbank ist innerhalb der Azure Cloud gehostet und dient dem Xentisbot Teams als persistente Datenbank für das Ablegen von Benutzerprofilen.
HTTPS Verbindung Xentisbot Teams und Xentisbot API Diese HTTPS Verbindung zwischen Xentisbot Teams und Xentisbot API, muss auf von Seite Xentisbot API speziell geschützt werden, dass nur Anfragen von Xentisbot Teams oder von innerhalb des Profidata Netzwerks an das Xentisbot API gesendet werden können.
Xentisbot API Die Xentisbot API bietet eine REST-Schnittstelle, um die Kotlin-Business-Logik aufzurufen. Die angepasste API erlaubt folgende Informationen im Request Body mitzusenden:
  • Command
  • Suchstrategie
  • Limit
  • Benutzer
Die Business-Logik durchsucht die Xentis Files nach den angeforderten Informationen und erstellt anschliessend aus dem Suchergebnis eine Antwort. Die Antwort umfasst dabei neben dem Suchresultat auch Links zu verknüpften Informationen.
Neue Suchlogik Die neue Suchlogik durchsucht die Xentis Files mit der jeweiligen Suchlogik, die der Benutzer im API Request fordert.
Xentis Files Die Xentis Files sind Konfigurationsdateien und Stammdateninformationen der Applikation Xentis. Sie müssen für die Xentisbot API erreichbar sein und ebenfalls aus dem Profidata Netzwerk geupdated werden können.
Profidata Netzwerk Das Profidata Netzwerk ist das Firmen-Netzwerk der Profidata AG. über einen automatisierten Job sollen die Xentis Files auf Azure aktualisiert werden können, damit die Xentisbot API immer die neusten Daten zur Verfügung hat.
<< zurück