Insider Preview 3 veröffentlicht

Bild

Wir haben seben die Insider Preview 3 zur Version 4.8 veröffentlicht
Komplett überarbeiteter Logik Katalog mit verbesserter Übersicht und Suche für einfachere Auswahl der Lgik Module
Sechs neue Logiken für Farbraum-Umrechnungen (siehe Bild)
Fünfzehn neue Logiken aus der Community
Damit sind es nun 99 Logiken
Einundzwanzig neue winterliche Hintergründe für die VISU
Verbesserte Mouse-Over im VISU Editor für klarere Information
Das HTTP-API Subsystem liefert nun im Header stets Header Access-Control-Allow-Origin = * aus
Der Modbus Register Auswahlassistent erlaubt nun verschiedene Sortierungen beim Anlegen einer Transaktion
Viele Bugfixes


Release Notes: https://elabnet.atlassian.net/wiki/x/AYDD0

AKTION: Wir haben noch viele tolle Updates und 150 Videos (und 800 Wiki Seiten) geplant. Bitte unterstütze uns mit einem Software-Wartungsvertrag, damit wir dieses alles erreichen können. Und damit Dein Server weiterhin Updates, Upgrades und Support erhält. Jetzt in der Aktion schenken wir Dir den Insider Club mit derselben Laufzeit wie der am längsten laufende aktive Wartungsvertrag dazu - bei sofortigem Laufzeitbeginn. Damit profitierst Du auch von einer vorzeitigen Verlängerung. Alle Infos: https://elabnet.atlassian.net/wiki/x/GQB8z

[DISKUSSION] [V4.5 IP3] Offline Sprachsteuerung mit Rhasspy, Auswertung MQTT-Topic / HermesMQTT Protokoll

Informationen und Diskussionen über Logik-Engine und Logik-Editor
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Antworten

Ersteller
avater
Beiträge: 64
Registriert: Sa Apr 02, 2022 12:19 pm
Hat sich bedankt: 22 Mal
Danksagung erhalten: 8 Mal

[V4.5 IP3] Offline Sprachsteuerung mit Rhasspy, Auswertung MQTT-Topic / HermesMQTT Protokoll

#1

Beitrag von avater »

Hat jemand Erfahrung mit Rhasspy https://rhasspy.readthedocs.io/en/latest/?

Ich habe mich jetzt ein paar Stunden damit beschäftigt und es auf einem Pi 4 grundsätzlich zum Laufen gebracht. Kommunikation mit dem TWS kann via MQTT erfolgen (Hermes Protokoll https://ip-team2.intia.de/tech-stack/hermesmqtt/).

Das Esstischlicht ein und ausschalten war recht schnell gemacht, aber es braucht noch etwas Cleveres, um solch ein Topic auszuwerten:

Code: Alles auswählen

{
  "input": "schalte die garagenlicht aus",
  "intent": {
    "intentName": "ChangeLightState",     <---- Die grundlegende Funktion: Licht an/aus
    "confidenceScore": 1
  },
  "siteId": "default",
  "id": null,
  "slots": [                               <----- Dieses Array kann beliebig lang werden und bildet die Dimensionalität der Befehlssätze ab
    {
      "entity": "name",
      "value": {
        "kind": "Unknown",
        "value": "garagenlicht"         <---- Das steht drin, welches Licht
      },
      "slotName": "name",
      "rawValue": "garagenlicht",
      "confidence": 1,
      "range": {
        "start": 12,
        "end": 24,
        "rawStart": 12,
        "rawEnd": 24
      }
    },
    {
      "entity": "state",
      "value": {
        "kind": "Unknown",
        "value": "aus"             <------ An- oder ausschalten?
      },
      "slotName": "state",
      "rawValue": "aus",
      "confidence": 1,
      "range": {
        "start": 25,
        "end": 28,
        "rawStart": 25,
        "rawEnd": 28
      }
    }
  ],
  "sessionId": "default-default-5f044920-a813-4474-88f4-f816c24d2867",
  "customData": "default",
  "asrTokens": [
    [
      {
        "value": "schalte",
        "confidence": 1,
        "rangeStart": 0,
        "rangeEnd": 7,
        "time": null
      },
      {
        "value": "die",
        "confidence": 1,
        "rangeStart": 8,
        "rangeEnd": 11,
        "time": null
      },
      {
        "value": "garagenlicht",
        "confidence": 1,
        "rangeStart": 12,
        "rangeEnd": 24,
        "time": null
      },
      {
        "value": "aus",
        "confidence": 1,
        "rangeStart": 25,
        "rangeEnd": 28,
        "time": null
      }
    ]
  ],
  "asrConfidence": 0.7371840000000001,
  "rawInput": "schalte die garagenlicht aus",
  "wakewordId": "default",
  "lang": null
}
Das könnte eine Logik sein, die aus dem MQTT-Subsystem die "values" aller Slots bekommt. Aber dann braucht man eine Logik pro "intent". :think:

Wirkt ziemlich fummelig. Hat jemand eine bessere Idee?
Zuletzt geändert von blaubaerli am Fr Mär 14, 2025 9:00 am, insgesamt 1-mal geändert.
Viele Grüße!
Arne

TWS 3500 XL #1458 mit KNX, 1-Wire (PBM #1139), HTTP-API, MQTT, Modbus
Support-VPN aktiv, Neustart nach Rücksprache

Ersteller
avater
Beiträge: 64
Registriert: Sa Apr 02, 2022 12:19 pm
Hat sich bedankt: 22 Mal
Danksagung erhalten: 8 Mal

#2

Beitrag von avater »

Inzwischen ist mir klargeworden, dass wenn ich mehrere Einzelwerte aus dem JSON vom MQTT-Subsystem an die Eingänge einer Logik liefere, diese leider für jeden Einzelwert triggert. Und weil wiederum die Reihenfolge, in der die Werte ankommen, nicht deterministisch ist, hilft auch ein "U" am allen Eingängen bis auf einen nicht. einen (kuzen) Warte-Timer setzen ist auch doof, weil der User jede Verzögerung sehr bemerkt.

Also überlege ich, das gesamte JSON-Result an die Logik zu liefern und mit Regex draufzuhauen.

... und das weckt in mir den Wunsch, einen Logikbaustein zu haben, der JSON verarbeiten kann. Also die Funktion bietet, die das MQTT-Subsystem ja schon besitzt.

(Ich kenne es nur flüchtig, aber das klingt dann wie Node Red, oder?)
Viele Grüße!
Arne

TWS 3500 XL #1458 mit KNX, 1-Wire (PBM #1139), HTTP-API, MQTT, Modbus
Support-VPN aktiv, Neustart nach Rücksprache
Antworten

Zurück zu „Logikengine & Logik-Editor“