UPGRADE IP 9 verfügbar!
Timberwolf VISU jetzt mit NEUEM Layout Editor
Freie Anordnung, Reihenfolge und Größe der Widgets - viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/06SeuHRJ

NEU! Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Damit kann nun jeder das Upgrade vornehmen und VISU & IFTTT testen. Alle Info hier: viewtopic.php?f=8&t=5074

[Gelöst] [V 3.5.1] Wie Werte aus JSON (MQTT Topic) extrahieren?

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
Rombel
Reactions:
Beiträge: 9
Registriert: Do Okt 28, 2021 6:58 am
Danksagung erhalten: 4 Mal

[V 3.5.1] Wie Werte aus JSON (MQTT Topic) extrahieren?

#1

Beitrag von Rombel »

Ich suche nach einer Möglichkeit, aus einem MQTT Subscribe, das mehrere Werte liefert, die Werte zu separieren und jeweils als eigenständiges Objekt zur Weiterleitung nach KNX aufzubereiten. Andere haben das im Forum wohl auch schon für UDP vermisst.

Beispielantwort eines Shelly Temp Fühler HT Plus für die Temperatur: {"id": 0,"tC":20.7, "tF":69.2}

Bei meiner Forensuche bin ich auf einen Hinweis von Stefan aufmerksam geworden.

"BTW: In den nächsten Wochen erscheinen Insider Versionen, welche die Logik um STRING-Manipulation und Versand erweitern."

Wird diese neue Logik mein Problem lösen oder gibt es einen anderen Ansatz.

Gruß
Thomas
Zuletzt geändert von StefanW am Fr Nov 18, 2022 4:56 pm, insgesamt 3-mal geändert.
TS 2500 ID: 585, VPN offen, Reboot erlaubt
TS 2500 ID:586 + PBM ID:867A, VPN offen, Reboot erlaubt
Protokolle: KNX, MQTT, 1Wire

Robosoc
Reactions:
Beiträge: 1876
Registriert: Di Okt 09, 2018 9:26 am
Hat sich bedankt: 635 Mal
Danksagung erhalten: 775 Mal

#2

Beitrag von Robosoc »

Bitte die Forumsregeln (blauer Kasten oben) einmal lesen und befolgen (Versionsnummer im Betreff angeben und gerne mit Vornamen abschließen oder diesen im Footer hinzufügen.
VG, Sven - TWS 950Q ID:335 & 291, VPN offen, Reboot OK

zaphood
Reactions:
Beiträge: 90
Registriert: Sa Mai 14, 2022 10:15 am
Hat sich bedankt: 38 Mal
Danksagung erhalten: 79 Mal

#3

Beitrag von zaphood »

Rombel hat geschrieben: Do Nov 17, 2022 5:22 pm Ich suche nach einer Möglichkeit, aus einem MQTT Subscribe, das mehrere Werte liefert, die Werte zu separieren und jeweils als eigenständiges Objekt zur Weiterleitung nach KNX aufzubereiten. Andere haben das im Forum wohl auch schon für UDP vermisst.
Beispielantwort eines Shelly Temp Fühler HT Plus für die Temperatur: {"id": 0,"tC":20.7, "tF":69.2}
Soweit ich dich verstehe, schickt dein Device einfach einen JSON String. Da drin stehen Floatwerte, da brauchst du keine Stringverarbeitung (das wäre wenn es KEINE Zahlenwerte wären, so wie beim Shelly Button, der schickt "s" oder "sss").

In deinem Fall einfach ein MQTT Gerät mit dem MainTopic anlegen (Typ JSON).
Bildschirmfoto 2022-11-17 um 19.56.39.png

Danach dann alle Werte einzeln subscriben und auf KNX weiterleiten.
IMG_4175 (1).jpeg
Der Selektor bei dir wäre z.B. Temperatur.tC

Ich empfehle den MQTT Broker zu installieren, da sieht man sehr gut wie die JSON Strukturen und daraus die Selektoren aussehen. Kann man dann einfach kopieren.

Wobei mich wundert, dass dein Shelly ein JSON schickt. Meine Shellys publizieren die Werte in einzelne Topics. JSONs bin ich eigentlich von Tasmota Devices gewohnt...

Cu
Frank
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von zaphood am Do Nov 17, 2022 8:24 pm, insgesamt 2-mal geändert.
Timberwolf 3500L #950 - VPN geschlossen - Reboot nach Absprache

Ersteller
Rombel
Reactions:
Beiträge: 9
Registriert: Do Okt 28, 2021 6:58 am
Danksagung erhalten: 4 Mal

#4

Beitrag von Rombel »

Ganz herzlichen Dank. Das hat perfekt geholfen. Die neuen Shelly HT plus mit e-ink Display senden jetzt tatsächlich ein JSON.
So einen Fall hatte ich bei meinem bisherigen Einsatz von MQTT noch nicht. Jetzt weiß ich wie das geht.
Besten Dank.
Thomas
TS 2500 ID: 585, VPN offen, Reboot erlaubt
TS 2500 ID:586 + PBM ID:867A, VPN offen, Reboot erlaubt
Protokolle: KNX, MQTT, 1Wire

StefanW
Elaborated Networks
Reactions:
Beiträge: 9689
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4831 Mal
Danksagung erhalten: 7633 Mal
Kontaktdaten:

#5

Beitrag von StefanW »

Hi Frank,

es gibt Unterschiede zwischen 1. Generation Shelly und 2. Generation.

Bei MQTT sendet die 1. Gen Shelly in einzelnen Topics und bei 2. Gen in JSON.

3. Gen habe ich noch nicht gelesen

lg

Stefan
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

Ersteller
Rombel
Reactions:
Beiträge: 9
Registriert: Do Okt 28, 2021 6:58 am
Danksagung erhalten: 4 Mal

#6

Beitrag von Rombel »

Jetzt tut sich doch noch eine Frage auf.
Wie muss der Selektor bei einer Verschachtelung aussehen. Ich möchte hier den Wert "percent" auslesen.

{
"id": 0,
"battery": {
"V": 5.9,
"percent": 95
},
"external": {
"present": false
}
}

Gruß
Thomas
TS 2500 ID: 585, VPN offen, Reboot erlaubt
TS 2500 ID:586 + PBM ID:867A, VPN offen, Reboot erlaubt
Protokolle: KNX, MQTT, 1Wire

MrWilson
Reactions:
Beiträge: 229
Registriert: Do Dez 27, 2018 2:19 pm
Wohnort: Borgsdorf
Hat sich bedankt: 44 Mal
Danksagung erhalten: 143 Mal

#7

Beitrag von MrWilson »

battery.percent

Das Thema hatten wir gerade ausführlich. Bitte mal im Forum nachschauen.
Zuletzt geändert von MrWilson am Do Nov 17, 2022 9:36 pm, insgesamt 1-mal geändert.
TWS 2500 ID: 341 + PBM ID: 463, VPN offen, Reboot nur nach Absprache
Antworten

Zurück zu „Logikengine & Logik-Editor“