SEPIA-Framework / sepia-docs

Documentation and Wiki for SEPIA. Please post your questions and bug-reports here in the issues section! Thank you :-)
https://sepia-framework.github.io/
238 stars 16 forks source link

STT-Server nicht erreichbar + diverse Fragen #99

Open stumpyofpain opened 3 years ago

stumpyofpain commented 3 years ago

Guten Tag

Ich hab vor ein paar Tagen Sepia auf meinem Server installiert. Danach habe ich versucht im selben lxc den STT-Server zu installieren, was leider nicht nach der Anleitung funktioniert hat.

Der Code unten funktioniert für Debian 10 natürlich nicht, ich hatte gehofft, das ich Stretch einfach gegen Buster austauschen kann, was leider nicht so ist und ich weiss leider nicht, wie der entsprechende Pfad dann lautet.

echo "deb http://goofy.zamia.org/repo-ai/debian/stretch/amd64/ ./" >/etc/apt/sources.list.d/zamia-ai.list wget -qO - stretch/amd64/bofh.asc | sudo apt-key add - apt-get update apt-get install python-kaldiasr

Daher habe ich das ganze dann in einem Docker Container installiert. (es wäre mir aber lieber das ganze zusammen zu haben und nicht separat noch docker laufen lassen zu müssen.)

wenn ich den Container mit ... starte, dann startet er, aber egal wie ich es in der Android App eingebe, er kann keine Verbindung aufbauen. docker run --rm --name=sepia_stt -d -p 9000:8080 sepia/stt-server:beta2.1

das Prüfen mit ... ergibt curl http://localhost:9000/stt/settings && echo {"model": "/opt/kaldi/model/kaldi-generic-en-tdnn_f", "server_version": "0.8.1"}

da ich die deutsche Sprache verwenden wollte, habe ich noch den share angelegt und wollte den container danach mit dem unten stehenden Command starten. Er gibt mir dann auch eine Nummer an, jedoch startet der Container nicht.

wget -O share-folder.zip https://github.com/SEPIA-Framework/sepia-stt-server/blob/master/share-folder.zip?raw=true unzip share-folder.zip -d /home/sepia/sepia-stt-share/

docker run --rm --name=sepia_stt -d -p 9000:8080 -v /home/sepia/sepia-stt-share:/apps/share sepia/stt-server:beta2.1

Für den Sepia Server an sich habe ich meine Nginx Konfiguration um die von dir vorgegebenen Daten erweitert.

An sich müsste ich doch für den STT-server auch ein location block eintragen oder nicht? Ich hatte es mit .. versucht, jedoch hat das keinen erfolg gebracht.

location /stt/socket/ { proxy_pass http://192.168.1.214:9000/; }

  1. Woran kann das liegen, das ich den Docker Container nicht mit mit dem Share Laufwerk gestartet bekomme?
  2. Muss ich für den STT-Server einen extra Block in NGinx eintragen oder liegt mein Problem woanders?
  3. Für den Google-Api Code muss ich eine scheinbar eine Kreditkarte angeben, welche ich nicht besitze... Gibt es da mittlerweile alternativen?
  4. In der Android App kann ich meinen aktuellen Stand per Klick erkennen lassen. Wie stelle ich das ein das es Automatisch passiert, habe das nirgends gefunden gehabt.
  5. Wie ist der aktuelle Stand zu Sepia mit NodeRed? Ich hatte deinen Forenpost dazu gelesen und die letzte Nachricht dazu war von August und bisher konnte ich den Sepia node noch nicht über die Palette in NodeRed hinzufügen.
  6. Was bedeutet der folgende Fehler beim Sepia Tools (tritt unter anderem dann auf wenn ich im Smart Homee Hub versuche den Internal Sepia einzurichten.

{ "result": "fail", "error": "400 or 500 bad request or communication error", "code": "0" }

Mit freundlichen Grüßen Stumpy

fquirin commented 3 years ago

Sorry @stumpyofpain dass ich jetzt erst antworte, aber mal gucken was mir noch einfällt zu deinem Problem.

Woran kann das liegen, das ich den Docker Container nicht mit mit dem Share Laufwerk gestartet bekomme?

Schwer zu sagen, kommt denn keine Fehlermeldung von Docker?

Muss ich für den STT-Server einen extra Block in NGinx eintragen oder liegt mein Problem woanders?

Wenn du nicht direkt via ws://[IP]:9000/stt/socket auf den Server kommst (weil du z.B. außerhalb des internen Netzwerkes bist) müsstest du die Verbindung zum STT-Server auch über den selben Nginx Proxy weiterleiten, ja. Der STT Server hat zwei Endpoints, einen HTTP Endpoint und einen WebSocket Endpoint, quasi genau wie der Chat-Server in der Nginx Config. Das hier müsste klappen, konnte es aber gerade leider nicht testen:

location /sepia/stt/ {
    proxy_pass http://192.168.1.214:9000/stt/;
}
location /sepia/stt/socket/ {
    proxy_pass http://192.168.1.214:9000/stt/socket/;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    proxy_read_timeout 14400;
}

Für den Google-Api Code muss ich eine scheinbar eine Kreditkarte angeben, welche ich nicht besitze... Gibt es da mittlerweile alternativen?

Du meinst den API Key für Maps und Geo-Coder ja? Ärgerlich :-( Der Server hat theoretisch auch Support für GraphHopper und ich hatte mich auch viel mit der öffentlichen OpenStreetMaps API beschäftigt, aber es gab da verschiedene Probleme wieso das seit langem irgendwo in der Mitte der To-Do Liste liegt :-/ Ich fürchte ich muss das dann mal nach oben ziehen, das war eh schon lange ein Schandfleck im Server :sweat_smile: :see_no_evil: , aber die Alternativen waren leider nie gut genug.

In der Android App kann ich meinen aktuellen Stand per Klick erkennen lassen. Wie stelle ich das ein das es Automatisch passiert, habe das nirgends gefunden gehabt.

In den Settings unter allgemein -> GPS.

Wie ist der aktuelle Stand zu Sepia mit NodeRed? Ich hatte deinen Forenpost dazu gelesen und die letzte Nachricht dazu war von August und bisher konnte ich den Sepia node noch nicht über die Palette in NodeRed hinzufügen.

Der aktuelle Stand ist hier und leider ist seit Oktober '20 nichts passiert in dem Bereich, weil ich einfach keine Zeit hatte und auch keiner direkt danach gefragt hatte :sweat_smile: (bis jetzt). Vieles funktioniert allerdings schon, ich habe gerade mal die fehlenden Infos ergänzt die ich vergessen hatte zu committen :facepalm: . Der nächste Schritt wäre die CLEXI Integration, ich weiß aber noch nicht wann ich dazu komme :-/ habe Lust daran zu arbeiten aber auf der Prioritätenliste sind momentan die neue SEPIA Audio-Library und ein STT Update.

Für Node-RED + SEPIA Smart Home gibt es Infos hier , die du vermutlich kennst.

Was bedeutet der folgende Fehler beim Sepia Tools (tritt unter anderem dann auf wenn ich im Smart Homee Hub versuche den Internal Sepia einzurichten. { "result": "fail", "error": "400 or 500 bad request or communication error", "code": "0" }

Spontan würde ich sagen ein Authentifizierungsproblem. Manchmal sagt der Server "internal" Error weil er nicht verraten will ob die User-ID existiert und das Passwort einfach nur falsch ist. Vielleicht hat dein Client den Login vergessen oder das Token ist abgelaufen (Admin Tools Tokens sind nur 1 Tag gültig). Versuch mal das gleiche nach einem frischen Login. Falls das nicht das Problem ist müsstest du mir noch mal genauer die Schritte erklären.

Ich hoffe ich konnte etwas helfen :-)

royrogermcfreely commented 3 years ago

Du meinst den API Key für Maps und Geo-Coder ja? Ärgerlich :-( Der Server hat theoretisch auch Support für GraphHopper und ich hatte mich auch viel mit der öffentlichen OpenStreetMaps API beschäftigt, aber es gab da verschiedene Probleme wieso das seit langem irgendwo in der Mitte der To-Do Liste liegt :-/

Wie muss ich vorgehen wenn ich GraphHopper verwenden will? Ich habe mir einen API-Key erstellt und diesen in den Core-Settings eingetragen. Wenn ich nun sage er soll die navigation starten zum ziel xy, wird immer die gleiche adresse übergeben. bei der wetter frage in einer anderen stadt, findet er die geodaten nicht und gibt die info auf api-keys.

muss ich noch wo etwas einstellen?

lg roy

fquirin commented 3 years ago

Wie muss ich vorgehen wenn ich GraphHopper verwenden will?

Hi Roy, "theoretisch auch Support" bedeutet leider im Moment, dass es zwar ein GraphHopper Interface gibt aber die Einstellungen hard-coded sind. Es fehlen auch 1-2 Funktionen, die zur Zeit nur Google Maps bedienen kann, wie z.B. Point-Of-Interest Suche. Ich gucke gleich mal, was ich vielleicht noch freischalten kann für die nächste Version.