wiki.ziemers.de

ziemer's informatik Wiki

Benutzer-Werkzeuge

Webseiten-Werkzeuge


wiki:software:beuthbot:berichte:ws2020:alt:alexis

Dies ist eine alte Version des Dokuments!


Text-To-Speech (TTS)

Neben der bereits vorhandenen Funktion Textnachrichten vom Beuthbot zu erhalten, sollen Nutzer die Möglichkeit bekommen ebenfalls Sprachnachrichten zu empfangen. Hierfür wird eine Komponente zur Konvertierung von Text in Sprache (Eng: „Text-To-Speech (TTS)) benötigt. Dieses Feature soll dem Nutzer in künftigen, dem Beuthbot hinzugefügten, Messenger-Diensten zur Verfügung stehen. Zur Umsetzung soll optimalerweise von einer Library Gebrauch gemacht werden, welche den Anforderungen gerecht wird.
Initiale Schätzung 1
Technologien Javascript
Abhängigkeiten keine
Anforderungen *Support für die deutsche Sprache
*Sprachnachrichten lassen sich als MP3- und WAV-Dateien exportieren
*Das Feature ist bzgl. Opt-in oder Opt-out in den Hilfe-Texten/Begrüßungsnachrichten des Beuthbots dokumentiert
Nice to Haves Sprachgeschwindigkeit und Stimme des Sprechers sind konfigurierbar
Tasks * BOT-24 Recherche nach geeignetem Tool (TTS)
* BOT-25 Eigene Implementierung (TTS)
* BOT-98 Integration in Beuthbot

Scraping

BOT-11: Universeller Scraper & Download
Der Beuthbot soll einen „universellen“ Web-Scraper beinhalten, der als Grundlage für künftige Features dienen soll, die für konkrete Scraping-Funktionalitäten vorgesehen sind. Aufgrund der hohen Diversität an Datenstrukturen unterschiedlicher Webseiten, soll dieser möglichst abstrakte Funktionalitäten zur Extrahierung von Datensätzen bieten.
Initiale Schätzung 1
Technologien Javascript
Abhängigkeiten keine
Anforderungen *Daten lassen sich im JSON- und XML-Format ausgeben
*Datensätze sind per HTML-Tags und CSS-Selektoren extrahierbar
*Dateien einer Webseite lassen sich downloaden
Tasks * BOT-26 Recherche nach geeignetster Methode (HTML-JSON)

Vorgefundener Stand

Der Beuthbot besteht aus mehreren ineinandergreifenden Microservices, die über eine umfassende API miteinander kommunizieren. Durch diesen gewählten Ansatz lassen sich jederzeit weitere Microservices integrieren. Die Basis stellen folgende 4 Komponenten dar:

  • Bot
  • Gateway
  • Registry
  • Services

Bot

Hierbei handelt es sich um eine Abstraktion der verfügbaren Chatbots unterstützter Messaging-Dienste. Der Nutzer interagiert mit diesem Microservice, indem er Anfragen stellt und Antworten des Beuthbots erhält.

Gateway

Das Gateway stellt das Herz des BeuthBots dar. Der Bot informiert das Gateway mit der vom User empfangenen Nachricht, nutzt dann NLP Microservices, um die Bedeutung und Absicht des Nutzers zu erkennen und informiert den entsprechenden Service, um dem Nutzer eine adäquate Antwort zu liefern.

Registry

Nachdem die Absicht des Nutzers analysiert worden ist, informiert das Gateway die Registry, um die Informationen zu erhalten, die der Nutzer benötigt. Darauffolgend verteilt die Registry die Anfrage an den entsprechenden Service.

Service

Die Services liefern die seitens des Nutzers angefragten Daten. So liefert bspw. Der MensaService Informationen zu aktuellen Menüs, welche via diverser Parameter gefiltert warden (etwa nur vegetarische Gerichte).

API

Die Mikroservices kommunizieren untereinander mittels einer API. Sie basiert auf einem Response-Objekt, das die einzelnen Microservices durchläuft. Es besteht aus der anfänglichen Anfrage des Nutzers, seiner Daten und der ihm erstellten Antwort.

wiki/software/beuthbot/berichte/ws2020/alt/alexis.1605780211.txt.gz · Zuletzt geändert: 19.11.2020 11:03 von Alexis Popovski