VoiceButton für Fhemweb

Begonnen von schwatter, 14 März 2026, 17:25:25

Vorheriges Thema - Nächstes Thema

Beta-User

#30
Bzgl. firefox muss ich mich korrigieren: Sowohl unter Linux wie Android bekomme ich zumindest die Ansage, dass James (de-) aktiviert wurde.

Woran es noch fehlen könnte, wäre ggf. auch einfach erst mal die Anfrage, überhaupt das Mikrofon nutzen zu dürfen. Da bietet mir Firefox anscheinend keine Option an, den FHEM-Server proaktiv einzutragen?
Spätestens beim Klick auf eines der Mikrofone müßte das doch geschehen, oder?

Edit: Strg+i ist mein Freund, hilft aber nicht weiter, weil das Mikro dem Gefühl nach trotzdem nicht aktiviert wird, egal, welches der Web-Mikrofone (f18/voicecontrol) ich klicke...
Server: HP-elitedesk@Debian 13, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

schwatter

Super zumindest kommt dann die Sprachausgabe. Aber für SpeechToText fehlt wirklich das Backend. Such mal quer im Netz.
Was Firefox anbietet ist, du geht auf eine Googleseite und startest da z.B Spracheingabe. Das funktioniert, da da direkt
Google angezapft wird.

Im Moment habe ich für Firefox zum testen das alles gesetzt:
# Spracherkennung (Web Speech API) aktivieren
media.webspeech.recognition.enable          -> true
media.webspeech.recognition.force_enable    -> true

# Sicherheitskontext für deine FHEM-IP umgehen (WICHTIG!)
dom.securecontext.whitelist                 -> http://192.168.1.76:8084

# Mikrofon-Zugriff für unsichere Quellen (HTTP) erlauben
media.getusermedia.insecure.enabled         -> true
media.devices.enumerate.all.insecure        -> true
dom.serviceWorkers.testing.enabled          -> true

# Berechtigungs-Abfragen komplett deaktivieren (Vorsicht: Global)
media.navigator.permission.disabled         -> true
permissions.default.microphone              -> 1

Damit ist immerhin das Micro nicht mehr blockiert. Bzw ich werde auch nicht ständig gefragt.

Als Addon habe ich "Speech Recognition Polyfill" installiert. Bis jetzt konnte ich es noch nicht anzapfen.

Gruß schwatter

schwatter

Kleines Update im ersten Post - nur das notify angepasst.

Bei Spracheingabe "james kommandos" wird jetzt ein Popup mit der Befehlsübersicht eingeblendet.
Momentan aber auf allen offenen Screens. Da müsste ich noch eine eindeutige ID mitschicken, um
das zu differenzieren.

@Beta-User
Sie es mir nach, wenn ich noch nicht an Fully bastele. Im Moment ist die Motivation noch nicht da.
Fully mit Plus habe ich, aber die Einschränkungen bei mir mit FireOS nerven mich. Daher bastele ich
gerade lieber an dem was funktioniert.

Insgesamt wenn es vernünftig werden soll, müssen wir wohl einen anderen Weg gehen. Also anderes Backend
wie Rhasspy und Co.

Da das hier aber so einfach ist, lass ich noch nicht von ab.

Gruß schwatter

Beta-User

#33
Vermutlich ist Polyfill noch nicht richtig konfiguriert, aber immerhin bekomme ich nach dem f18-Mikro mit folgenden Einstellungen ein Dialogfeld, das auch Audio empfängt, am Ende dann aber meckert:
ZitatError connecting to the service.
Aus dem "Strauß" habe ich aktiviert:
Zitat von: schwatter am 17 März 2026, 19:21:43# Spracherkennung (Web Speech API) aktivieren
media.webspeech.recognition.enable          -> true
media.webspeech.recognition.force_enable    -> true (den key gab es nicht)

# Sicherheitskontext für deine FHEM-IP umgehen (WICHTIG!)
dom.securecontext.whitelist                -> http://192.168.1.76:8084 (dto, der Versuch, das per "+" hinzuzufügen, hat zwar geklappt, hatte aber keine Auswirkung. Der Weg über "Strg+i" dürfte dasselbe bewirkt haben)

# Mikrofon-Zugriff für unsichere Quellen (HTTP) erlauben
media.getusermedia.insecure.enabled        -> true (Das war die letzte Änderung, danach wurde nicht mehr ständig nach der Berechtigung gefragt)
media.devices.enumerate.all.insecure        -> true (hätte ergänzt werden müssen, fehlt im Moment)
dom.serviceWorkers.testing.enabled          -> true (gesetzt wie empfohlen)

# Berechtigungs-Abfragen komplett deaktivieren (Vorsicht: Global)
media.navigator.permission.disabled        -> true (gesetzt wie empfohlen)
permissions.default.microphone              -> 1 (hätte ergänzt werden müssen, fehlt im Moment)
Edith meint: das ist Firefox unter Linux. Am Handy war mir das heute morgen noch zu fummelig...
Server: HP-elitedesk@Debian 13, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors