Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
wiki:software:beuthbot:berichte:ws2020:zwischen:geplanter-stand-features [22.11.2020 15:37] Robert Xaver Halwaß [Tabelle] |
wiki:software:beuthbot:berichte:ws2020:zwischen:geplanter-stand-features [24.11.2020 14:22] (aktuell) Robert Xaver Halwaß |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | | BOT-16: Support mehrerer Messenger-Typen durch Umbau der Benutzererkennung | + | {{page>:wiki:software:beuthbot: |
- | | **Aktueller Stand:**\\ \\ Der BeuthBot\\ **Geplanter Umbau:** || | + | <pagebreak> |
- | | Initiale Schätzung | + | {{page>: |
- | | Technologien | + | < |
- | | Abhängigkeiten | + | {{page>:wiki:software:beuthbot:berichte: |
- | | Anforderungen | + | < |
- | | Tasks | * BOT-20 - Umbau der Datenbank | + | {{page>:wiki:software: |
- | + | < | |
- | | BOT-12: Rasa 2.0 Update | + | {{page>: |
- | | Um die neusten Funktionen und Fixes von Rasa zu benutzen, ist ein Update von Version 1.6 auf 2.0 notwendig. | + | < |
- | | Zustänidigkeit | + | {{page>: |
- | | Initiale Schätzung | + | < |
- | | Programmiersprachen | + | {{page>: |
- | | Frameworks/ | + | < |
- | | Services | + | {{page>:wiki: |
- | | Abhängigkeiten | + | < |
- | | Anforderungen | + | {{page>:wiki: |
- | | Tasks | * BOT-124: docker-compose.yml anpassen\\ * BOT-61: Chatito Kompatibiltät testen\\ * BOT-62: Config Anpassen\\ * BOT-63: Duckling updaten\\ * BOT-64: Modell neu trainieren\\ * BOT-116: Performance zwischen Version 1.6 und 2.0 vergleichen | + | <pagebreak> |
- | + | {{page>: | |
- | + | < | |
- | + | {{page>:wiki:software:beuthbot: | |
- | | BOT-30: Chatbot Library: Vereinheitlichung der Kommunikation von Javascript Chatbots mit dem Gateway | + | < |
- | | Problem: Derzeit muss jede Anwendung, die den BHT-Bot als Chatbot implementieren möchte selbst implementieren, | + | {{page>: |
- | | Initiale Schätzung | + | < |
- | | Technologien | + | {{page>:wiki: |
- | | Abhängigkeiten | + | < |
- | | Anforderungen | + | {{page>: |
- | | Tasks | * BOT-33 Library Usage Dokumentieren \\ * BOT-34 Library in Discord Bot integrieren \\ * BOT-35 Library in Telegram Bot integrieren \\ * BOT-36 Library in Website integrieren \\ * BOT-31 Common Funktionalität / Use Cases identifizieren \\ * BOT-32 Typescript Library für Bot erstellen | + | < |
- | + | {{page>:wiki:software:beuthbot:berichte:ws2020:zwischen:geplanter-stand-features: | |
- | + | ||
- | + | ||
- | | BOT-37: Discord Integration | + | |
- | | Discord ist eine weit verbreitete Kommunikatinsplattform, | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-38 NodeJS Chatbot erstellen \\ * BOT-39 Docker Container + Compose für Container erstellen \\ * BOT-40 Bot Usage dokumentieren \\ * BOT-41 Bot Account anlegen für release (https:// | + | |
- | + | ||
- | + | ||
- | | BOT-43: Erstellung eines Common-Frameworks für (Content-)Services | + | |
- | | Services im BHT-Bot kommunizieren alle über REST-Schnittstellen. Diese sind alle als Express-Anwendung mit JSON-Kommunikation implementiert, | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-44 Common Code, Features, Entitäten identifizieren -> Use Case ableiten \\ * BOT-45 Typisiertes Javascript Framework erstellen \\ * BOT-46 Framework einbinden in Weather Service \\ * BOT-47 Framework einbinden in Mensa Service \\ * BOT-48 Framework einbinden in Reminder Service \\ * BOT-108 Framework dokumentieren \\ * BOT-117 Request History implementieren - Nutzung enforcen | + | |
- | + | ||
- | + | ||
- | | BOT-49: User-Messenger-Service: Nachricht proaktiv, requestunabhängig an Clients senden | + | |
- | | Der BHT-Bot kann bisher nur passiv auf Anfragen warten und diese dann beantworten. Zur Implementierung von asymmetrischer bzw. request-unabhängiger Kommunikation benötigt der Bot einen neuen Service, der als Schnittstelle für diese Art von Kommunikation dient. | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-50 Websocket Registry für ChatBotClients \\ * BOT-51 REST-Service für Nachrichtenversand \\ * BOT-52 Implementation der Websocket-Registrierung in Common-Library für Chatbots \\ * BOT-53 Implementierung der Common-Library-Websocket-Registrierung in TelegramBot \\ * BOT-54 Implementierung der Common-Library-Websocket-Registrierung in DiscordBot \\ * BOT-56 Dokumentation Usage Service \\ * BOT-110 Deployment / Release | + | |
- | + | ||
- | + | ||
- | | BOT-55: Erinnerungs-Service: Behandelt " | + | |
- | | Erinnerungen schedulen zu können ist ein typischer, weil praktischer, | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-57 Rasa Anbindung " | + | |
- | + | ||
- | + | ||
- | | BOT-82: Termin-Scraper, | + | |
- | | Es gibt Termine, an die wollen alle Studierenden typischerweise erinnert werden, als auch Termine, von denen die Universität möchte, dass die Studierende sich daran erinnern. Typische Beispiele hierfür sind Rückmeldefristen und (Beuth-eigene) Feiertage. \\ Durch einen Webscraper sollen solche Termine aus (öffentlichen) Quellen automatisch bezogen und dann an alle Studierenden ausgespielt werden. \\ Auch wenn dieses Feature für die meisten Studierenden interesssant sein dürfte, muss es eine Möglichkeit zum Opt-Out geben. Ggf. ist sogar angezeigt, dass ein Opt-In erfolgt, was allerdings den Nutzen des Features, vor allem aus Universitätssicht, | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-83 Prüfen ob Opt-In (nötig ist) oder Opt-Out (möglich ist) \\ * BOT-84 Quellen mit relevanten Terminen zusammentragen - auf Scrapebarkeit achten \\ * BOT-85 Scraping (mittels Scapring-Service) implementieren \\ * BOT-86 Termine aus Scraping in Erinnerungs Datenbank überführen \\ * BOT-87 Rasa Direktive Opt-In oder Opt-Out implementieren \\ * BOT-88 Error-Reporting implementieren, | + | |
- | + | ||
- | + | ||
- | | BOT-89: Moodle iCal import als Erinnerungen | + | |
- | | Moodle ist die zentrale Online-Lernplattform der Beuth Hochschule. Kurse, die in Moodle verwaltet werden erhalten in der Regel Abgabetermine für Aufgaben, die während des Semesters fällig werden. Oftmals stehen diese Abgabetermine bereits zu Beginn des Semesters in Moodle fest und können dort in einer Kalenderansicht betrachtet werden. \\ | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-90 Import Moodle Rasa Direktive \\ * BOT-91 Moodle iCal Download via zentralem Scaper Service \\ * BOT-92 iCal Parsing und Persistierung als (sinnvolle) Erinnerung \\ * BOT-111 Feature Release \\ * BOT-113 Hilfe-Texte in (Chat)BHT-Bot help-command / willkommensnachricht | + | |
- | + | ||
- | + | ||
- | + | ||
- | | BOT-13: Komponente zur Umwandlung von Sprache zu Text (STT) || | + | |
- | | Es soll ermöglicht werden, dass Benutzern neben Textnachrichten auch mittels Sprachnachrichten mit dem BeuthBot kommunizieren können. Dabei sollen die Sprachnachrichten mittels eines neuen Services in Text übersetzt werden und dann wie andere Textnachrichten verarbeitet werden. Hierzui sollen 3 bekannte STT-Frameworks (Kaldi, Mozilla Voice STT und Wav2Letter) getestet und vergleichen werden. Basierend darauf soll eine Entscheidung getroffen werden, welches Framework schlussendlich in der Production-Environment verwendet werden soll. Das Framework wird dann in Form eines neuen Micro-Services in den BeuthBot integriert. | + | |
- | | Zuständigkeit | + | |
- | | Initiale Schätzung | + | |
- | | Programmiersprachen | + | |
- | | Frameworks/ | + | |
- | | Services | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | | | + | |
- | + | ||
- | + | ||
- | + | ||
- | | BOT-23: Komponente zur Umwandlung von Text in Sprache (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, | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | 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 | + | |
- | + | ||
- | + | ||
- | + | ||
- | | BOT-75: Begrüßungsnachricht | + | |
- | | Neue Benutzer des BeuthBots sollen mit einer Begrüßungsnachricht empfangen werden. Diese Nachricht soll die Features des BeuthBots vorstellen und einen Shortcut nennen, welchen die Benutzer verwenden können, wenn sie Hilfe benötigen. Mit dem Shortcut | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-93 Client\\ * BOT-94 Server | + | |
- | + | ||
- | + | ||
- | + | ||
- | | BOT-74: Webseite | + | |
- | | Um eine komplette Übersicht für alle genutzten BeuthBot-Resourcen zu haben, soll eine Webseite zur Präsentation dieser Ressourcen erstellt werden. Zu den Ressourcen zählen das Ziemer' | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-76 Webseite Einrichten\\ * BOT-77 Infos zum Wiki\\ * BOT-78 Infos zu Telegram\\ * BOT-79 Infos zu Discord\\ * BOT-80 Infos zu GitHub\\ * BOT-81 Implementation Chatbot | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | | 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 | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-26 Recherche nach geeignetster Methode (HTML-JSON) | + | |
- | + | ||
- | | BOT-15: Personalliste der BHT im Beuthbot abrufbar machen | + | |
- | | Dem Bot wird eines neues Feature hinzugefügt. Dieses Feature soll dem Benutzer des BeuthBots ein Abfrage von Informationen über das Personal der Beuth Hochschule(BHT) ermöglichen \\ **Ablauf:** \\ Der Benutzer teilt dem Bot über einen Befehl mit (“Wer ist Max Mustermann? | + | |
- | | Initiale Schätzung | + | |
- | | Technologien | + | |
- | | Abhängigkeiten | + | |
- | | Anforderungen | + | |
- | | Tasks | * BOT-17 - initiales Auslesen der Personalliste\\ * BOT-18 - Abrufen der Information aus der Personalliste\\ * BOT-19 - Erkennung der Benutzeranfrage zur Personensuche\\ * BOT-96 - Bearbeiten der Daten der Personalliste\\ * BOT-125 - Erstellen einer neuen Tabelle " | + | |