Hallo zusammen!
Ich arbeite gerade an der Entwicklung und speziell an der Integration von rhasspy in gladys.
(Dient zur Spracherkennung / zur Erkennung von Sätzen / zum Sprechen)
Kontext
Dafür müssen einige Änderungen in Gladys vorgenommen werden. Derzeit ist es notwendig, über die Chatbox mit Gladys zu kommunizieren, um mit ihr zu sprechen und Gladys antwortet dem Benutzer über ein WebSocket.
Der Dienst rhasspy wird also einen Docker starten, Nachrichten über WebSocket abrufen und sie an Gladys senden. Das Problem ist, dass man ein Benutzer sein muss, um Nachrichten an Gladys zu senden. Allerdings muss die Antwort an den Dienst rhasspy zurückgegeben werden.
Funktionale Spezifikation
Als Benutzer möchte ich:
- mit Gladys sprechen und eine mündliche Antwort erhalten.
- Sicher mit Gladys sprechen und alle Daten lokal speichern
- Einen Verlauf aller durchgeführten Anfragen haben
Erstellung eines Anwendungsbenutzers
Bei Beibehaltung der Funktionsweise von Gladys Chat kann man darüber nachdenken, einen Anwendungsbenutzer zu erstellen, der mit dem Dienst Rhasspy verbunden ist. Dieser Benutzer kann mit Gladys kommunizieren und die Antworten von Gladys erhalten, ohne dass dies in einer Chatbox erscheint. (Denn die Zuordnung einer Stimme zu einem Benutzer ist derzeit kaum vorstellbar).
Der Anwendungsbenutzer wird ein „versteckter“ Benutzer sein, der nicht die gleichen Rechte wie ein Standardbenutzer hat. Er wird nur mit dem System kommunizieren, um Aktionen auszuführen.
Funktionsweise des Dienstes
Das System wird transparent einen Container mit allen notwendigen Konfigurationen für den reibungslosen Betrieb der Dienste zur Spracherkennung / Sprachausgabe installieren.
Ein Anwendungsbenutzer wird vom Dienst erstellt und dem Dienst zugewiesen.
Der Dienst wird über WebSocket mit rhasspy verbunden sein. Wenn eine Nachricht empfangen wird, wird diese an Gladys gesendet, Gladys interpretiert diese Nachricht und gibt eine Antwort zurück. Diese Antwort wird an rhasspy weitergeleitet, damit sie mündlich ausgeführt werden kann.
Feedback?
Ich würde gerne eure Meinung zu dem kleinen Text hören, den ich gerade oben geschrieben habe. Habt ihr noch andere Ideen zur Funktionsweise? Danke ![]()