Kleiner Fehler mit IP 5 - FIX in Dev-Test

Uns wurde ein Problem im Logik Editor mit IP 5 gemeldet, FIX für DEV-TEster bereitgestellt
Problem: Beim Anlegen von Logiken können keine Parameter vom Typ String vorgegeben werden. Laufende Logiken sind nicht betroffen. Der Fehler wird als "Minor" eingestuft, da nur geringe Auswirkung. Der Fehler kann umgangen werden, indem ein String nicht als Parameter sondern als Objektwert vorgeben wird (z.B. via ETS eine GA beschreiben).
Update: Der Fehler wurde bereits behoben und den DEV-Testern heute zur Verfügung gestellt. Rollout an Insider womöglich noch heute, Sonntag, spät Abend.
Info im Insider-Forum: viewtopic.php?t=6230
[Hinweis] [V4.8 IP4] JSON Selector für verschachteltes Element von Shelly BLU H&T
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
-
Micro
- Beiträge: 107
- Registriert: So Mai 12, 2024 10:43 pm
- Wohnort: Greifswald
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 38 Mal
[V4.8 IP4] JSON Selector für verschachteltes Element von Shelly BLU H&T
Moin,
ich versuche seit einigen Tagen ohne Erfolg einen Wert aus den MQTT-Daten eines Shelly BLU H&T auszuwerten.
Kann mir vielleicht jemand auf die Sprünge helfen, wie ich den markierten Wert unten erhalten kann?
Den ersten ts-Eintrag bekomme ich ohne Probleme ausgelesen.
{
"src": "shellyhtg3-80b54e3565f8",
"dst": "shellies/shellyhtg3-80b54e3565f8/events",
"method": "NotifyEvent",
"params": {
"ts": 1768733580.46,
"events": [
{
"component": "sys",
"event": "sleep",
"ts": 1768733580.46
}
]
}
}
ich versuche seit einigen Tagen ohne Erfolg einen Wert aus den MQTT-Daten eines Shelly BLU H&T auszuwerten.
Kann mir vielleicht jemand auf die Sprünge helfen, wie ich den markierten Wert unten erhalten kann?
Den ersten ts-Eintrag bekomme ich ohne Probleme ausgelesen.
{
"src": "shellyhtg3-80b54e3565f8",
"dst": "shellies/shellyhtg3-80b54e3565f8/events",
"method": "NotifyEvent",
"params": {
"ts": 1768733580.46,
"events": [
{
"component": "sys",
"event": "sleep",
"ts": 1768733580.46
}
]
}
}
Grüße Mirko
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
-
ms20de
- Elaborated Networks

- Beiträge: 1370
- Registriert: Sa Aug 11, 2018 9:14 pm
- Hat sich bedankt: 425 Mal
- Danksagung erhalten: 896 Mal
Hi Mirko,
params.events[component="sys"].event

Viele Grüße,
Matthias
params.events[component="sys"].event

Viele Grüße,
Matthias
Zuletzt geändert von ms20de am So Jan 18, 2026 2:06 pm, insgesamt 1-mal geändert.
[ Timberwolf Entwicklung ]
TWS 2400 ID:102 VPN offen, Reboot auf Nachfrage
TWS 3500 ID:695 VPN offen, Bitte kein Reboot ohne Absprache
TWS 2400 ID:102 VPN offen, Reboot auf Nachfrage
TWS 3500 ID:695 VPN offen, Bitte kein Reboot ohne Absprache
-
gbglace
- Beiträge: 4297
- Registriert: So Aug 12, 2018 10:20 am
- Hat sich bedankt: 1505 Mal
- Danksagung erhalten: 2048 Mal
Auch hier empfehle ich MQTT Explorer. Da kannst drauf klicken su fden Wert und erzeugt Dir den Pfad dahin.
Anson3gjbt es auch diverse webseiten die das als Servcie biegen und dir dann den Selektor rückliefern.
So jetzt am Handy.
Sollte sein.
Anson3gjbt es auch diverse webseiten die das als Servcie biegen und dir dann den Selektor rückliefern.
So jetzt am Handy.
Sollte
Code: Alles auswählen
events[0].event
Zuletzt geändert von gbglace am So Jan 18, 2026 3:25 pm, insgesamt 1-mal geändert.
Grüße Göran
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU
-
Micro
- Beiträge: 107
- Registriert: So Mai 12, 2024 10:43 pm
- Wohnort: Greifswald
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 38 Mal
Hallo Matthias und Göran,
beide Hinweise führen zum korrekten Ergebnis.
Vielen Dank für die schnelle Hilfe.
beide Hinweise führen zum korrekten Ergebnis.
Vielen Dank für die schnelle Hilfe.
Grüße Mirko
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
-
Micro
- Beiträge: 107
- Registriert: So Mai 12, 2024 10:43 pm
- Wohnort: Greifswald
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 38 Mal
Ich habe jetzt ein weiteres Problem mit dem Shelly.
Ich erhalte das folgende JSON.
Wie stelle ich das hier am Besten ein, dass die Formatierung bestmöglich erhalten bleibt und ich trotzdem farbige Markierungen vornehmen kann?
{
"src": "shellyhtg3-80b54e3565f8",
"dst": "shellies/shellyhtg3-80b54e3565f8/events",
"params": {
"ht_ui": {},
"wifi": {
"status": "got ip",
"ssid": "XXXX",
"bssid": "XX:XX:XX:XX:XX:XX",
"rssi": -77,
"sta_ip": "XXX.XXX.XXX.XXX",
"sta_ip6": null
},
"ts": 1768767541.54,
"temperature:0": {
"tF": 71.6,
"id": 0,
"tC": 22.0
},
"sys": {
"ram_free": 161744,
"uptime": 0,
"last_sync_ts": null,
"fs_size": 1048576,
"unixtime": null,
"webhook_rev": 0,
"time": null,
"ram_size": 262152,
"utc_offset": 3600,
"ram_min_free": 158936,
"kvs_rev": 0,
"reset_reason": 8,
"mac": "80B54E3565F8",
"cfg_rev": 12,
"restart_required": false,
"wakeup_period": 7200,
"fs_free": 712704,
"wakeup_reason": {
"boot": "deepsleep_wake",
"cause": "periodic"
},
"available_updates": {}
},
"mqtt": {
"connected": true
},
"ws": {
"connected": false
},
"devicepower:0": {
"battery": {
"percent": 59,
"V": 5.2
},
"id": 0,
"external": {
"present": false
}
},
"humidity:0": {
"rh": 37.5,
"id": 0
},
"ble": {},
"cloud": {
"connected": false
}
},
"method": "NotifyFullStatus"
}
Für die markierten Werte liefert mir https://jsonselector.com die folgenden Selectoren, die so aber nicht 1zu1 funktionieren.
['params']['temperature:0']['tC']
['params']['devicepower:0']['battery']['percent']
['params']['devicepower:0']['battery']['V']
['params']['devicepower:0']['external']['present']
['params']['humidity:0']['rh']
Muss ich diese Ausgaben für den TWS noch anpassen und wie hat dies zu erfolgen?
Ich habe es auch schon erfolglos ohne die eckigen Klammern und ohne die Hochkommata versucht.
Irgendwie stehe ich noch auf dem Schlauch und bräuchte weitere Hilfe.
Ich erhalte das folgende JSON.
Wie stelle ich das hier am Besten ein, dass die Formatierung bestmöglich erhalten bleibt und ich trotzdem farbige Markierungen vornehmen kann?
{
"src": "shellyhtg3-80b54e3565f8",
"dst": "shellies/shellyhtg3-80b54e3565f8/events",
"params": {
"ht_ui": {},
"wifi": {
"status": "got ip",
"ssid": "XXXX",
"bssid": "XX:XX:XX:XX:XX:XX",
"rssi": -77,
"sta_ip": "XXX.XXX.XXX.XXX",
"sta_ip6": null
},
"ts": 1768767541.54,
"temperature:0": {
"tF": 71.6,
"id": 0,
"tC": 22.0
},
"sys": {
"ram_free": 161744,
"uptime": 0,
"last_sync_ts": null,
"fs_size": 1048576,
"unixtime": null,
"webhook_rev": 0,
"time": null,
"ram_size": 262152,
"utc_offset": 3600,
"ram_min_free": 158936,
"kvs_rev": 0,
"reset_reason": 8,
"mac": "80B54E3565F8",
"cfg_rev": 12,
"restart_required": false,
"wakeup_period": 7200,
"fs_free": 712704,
"wakeup_reason": {
"boot": "deepsleep_wake",
"cause": "periodic"
},
"available_updates": {}
},
"mqtt": {
"connected": true
},
"ws": {
"connected": false
},
"devicepower:0": {
"battery": {
"percent": 59,
"V": 5.2
},
"id": 0,
"external": {
"present": false
}
},
"humidity:0": {
"rh": 37.5,
"id": 0
},
"ble": {},
"cloud": {
"connected": false
}
},
"method": "NotifyFullStatus"
}
Für die markierten Werte liefert mir https://jsonselector.com die folgenden Selectoren, die so aber nicht 1zu1 funktionieren.
['params']['temperature:0']['tC']
['params']['devicepower:0']['battery']['percent']
['params']['devicepower:0']['battery']['V']
['params']['devicepower:0']['external']['present']
['params']['humidity:0']['rh']
Muss ich diese Ausgaben für den TWS noch anpassen und wie hat dies zu erfolgen?
Ich habe es auch schon erfolglos ohne die eckigen Klammern und ohne die Hochkommata versucht.
Irgendwie stehe ich noch auf dem Schlauch und bräuchte weitere Hilfe.
Grüße Mirko
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
-
gbglace
- Beiträge: 4297
- Registriert: So Aug 12, 2018 10:20 am
- Hat sich bedankt: 1505 Mal
- Danksagung erhalten: 2048 Mal
Da gibt die Webseite eine Art des Selektros raus den der TWS nicht verwendet. Es gibt da wohl mehrere Dialekte in der weiten Welt der IT.
Im TWS funktioniert es ganz gut wenn man alle Elemente die im Original JSON per {} gestaffelt werden per Punkt . Trennt, alles was in einer solchen Stufe per , getrennt im Original daher kommt ist das Keywords was Du dann nach dem Punkt angibst.
Das sind dann einfache verschachtelte Hierarchien die stets zu genau einem Einzelwert oder weiteren "Ordnern" führen.
Hast im Original [ ] diese eckigen Klammern dann ist diese Wertsammlung oder Hierarchieebene ein Array. Die ruft man im Selektor auch mit den eckigen Klammern auf [ ] ohne Punkt davor.
In dem eckigen Klammern sucht man entweder per spezifischen Platzhalter wie es Matthias gemacht hat. Oder man nimmt die Positionsnummer des Objektwertes im Array. 0 wenn es das erste Element ist, oder 1 wenn es das 2. Element ist.
Das mit den Positionsnummern ist gut, wenn die Menge an Elementen im Array konstant ist von Nachricht zu Nachricht und auch die Positionen untereinander. Wenn es beweglich ist im Array dann besser den Spezifischen Bezeichner suchen.
params.humidity:0.rh
Wäre es rein von der Struktur her. Müsstest nur noch schauen ob das mit dem :0 so direkt funktioniert oder der Begriff humidity:0 maskiert werden muss. Ggf in doppelte Anführungsstriche.
Da gab es mal einen Threads wo es um diese Shelly Outputs mit den Wort:Zahl Objekten ging. Da würde dann glaube noch was nachgezogen im TWS, um das auch selektieren zu können.
Im TWS funktioniert es ganz gut wenn man alle Elemente die im Original JSON per {} gestaffelt werden per Punkt . Trennt, alles was in einer solchen Stufe per , getrennt im Original daher kommt ist das Keywords was Du dann nach dem Punkt angibst.
Das sind dann einfache verschachtelte Hierarchien die stets zu genau einem Einzelwert oder weiteren "Ordnern" führen.
Hast im Original [ ] diese eckigen Klammern dann ist diese Wertsammlung oder Hierarchieebene ein Array. Die ruft man im Selektor auch mit den eckigen Klammern auf [ ] ohne Punkt davor.
In dem eckigen Klammern sucht man entweder per spezifischen Platzhalter wie es Matthias gemacht hat. Oder man nimmt die Positionsnummer des Objektwertes im Array. 0 wenn es das erste Element ist, oder 1 wenn es das 2. Element ist.
Das mit den Positionsnummern ist gut, wenn die Menge an Elementen im Array konstant ist von Nachricht zu Nachricht und auch die Positionen untereinander. Wenn es beweglich ist im Array dann besser den Spezifischen Bezeichner suchen.
params.humidity:0.rh
Wäre es rein von der Struktur her. Müsstest nur noch schauen ob das mit dem :0 so direkt funktioniert oder der Begriff humidity:0 maskiert werden muss. Ggf in doppelte Anführungsstriche.
Da gab es mal einen Threads wo es um diese Shelly Outputs mit den Wort:Zahl Objekten ging. Da würde dann glaube noch was nachgezogen im TWS, um das auch selektieren zu können.
Grüße Göran
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU
-
SchateMuhl
- Beiträge: 535
- Registriert: Mi Nov 23, 2022 9:31 pm
- Wohnort: Werther bei Nordhausen
- Hat sich bedankt: 144 Mal
- Danksagung erhalten: 196 Mal
- Kontaktdaten:
mir gibt der JSON Path Finder für die Temperatur folgendes zurück
x.params["temperature:0"].tC dann sollte es beim Wolf mit params["temperature:0"].tC gehen.
Wenn Dein Shelly ein /event/rpc bringt, bekommst du die Daten sich auch alle über /status
x.params["temperature:0"].tC dann sollte es beim Wolf mit params["temperature:0"].tC gehen.
Wenn Dein Shelly ein /event/rpc bringt, bekommst du die Daten sich auch alle über /status
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Grüße
Andreas
TWS 3500M ID:992 /XL ID:1198 , VPN offen, Reboot nach Absprache
- KNX mit TWS, 1Home, ENO Gateway, ETS
- PV Anlagen AC gekoppelt mit Fronius IG 40/60 und Symo 10KW
- 96kWh LiFePo mit 3 x MultiPlus 48/8000 und DC PV Anlagen über MPPT
Andreas
TWS 3500M ID:992 /XL ID:1198 , VPN offen, Reboot nach Absprache
- KNX mit TWS, 1Home, ENO Gateway, ETS
- PV Anlagen AC gekoppelt mit Fronius IG 40/60 und Symo 10KW
- 96kWh LiFePo mit 3 x MultiPlus 48/8000 und DC PV Anlagen über MPPT
-
Micro
- Beiträge: 107
- Registriert: So Mai 12, 2024 10:43 pm
- Wohnort: Greifswald
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 38 Mal
So, ich bin jetzt ein Stück weiter gekommen.
params."temperature:0".tC ist die korrekte Schreibweise, bei der die Daten erkannt werden. Allerdings kommen zwischendurch immer Daten, die keine Treffer liefern.
Über /status bekomme ich die Daten auch. Ich wollte jetzt aber mal schauen, welche Daten öfter gesendet werden oder es es keinen Unterschied macht.
Ich schreibe die Daten beider Verfahren jetzt jeweils in eine Zeitreihe und dann entscheide ich weiter.
params."temperature:0".tC ist die korrekte Schreibweise, bei der die Daten erkannt werden. Allerdings kommen zwischendurch immer Daten, die keine Treffer liefern.
Über /status bekomme ich die Daten auch. Ich wollte jetzt aber mal schauen, welche Daten öfter gesendet werden oder es es keinen Unterschied macht.
Ich schreibe die Daten beider Verfahren jetzt jeweils in eine Zeitreihe und dann entscheide ich weiter.
Grüße Mirko
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
-
gbglace
- Beiträge: 4297
- Registriert: So Aug 12, 2018 10:20 am
- Hat sich bedankt: 1505 Mal
- Danksagung erhalten: 2048 Mal
Ja das kann passieren wenn die Quelle nicht alle Werte immer mit schickt. Das stört dem TWS aber nicht so sehr, da er nur einen gültig empfangenen Wert auch nach hinten ins Objektsystem weiter reicht.
Grüße Göran
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU
-
Micro
- Beiträge: 107
- Registriert: So Mai 12, 2024 10:43 pm
- Wohnort: Greifswald
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 38 Mal
Weil bei beiden Methoden die selbe Anzahl von Datenpunkten geschrieben wird, kann man ohne Nachteile die "status"-Werte nutzen.
Bei denen ist die JSON-Struktur viel einfacher und das Senden der RPC-Daten kann entfallen. Die ganzen technischen Daten bei RPC sind in der Regel überflüssig.
Bei denen ist die JSON-Struktur viel einfacher und das Senden der RPC-Daten kann entfallen. Die ganzen technischen Daten bei RPC sind in der Regel überflüssig.
Grüße Mirko
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku
#1 Timberwolf 960Q #329 / Offline
#2 Timberwolf 3500XL #1523 / VPN aktiv / Reboot auf Nachfrage
#PV 9,36 kWp und 9,6 kWh Akku