NEWS
[GELÖST] Auslesen JSON Wert Bedeutung
-
@peter-c sagte in Auslesen JSON Wert Bedeutung:
Was mache ich da falsch?
Du hast ein Array mit 24 Objekten.
Du musst entscheiden, welches Element Du überhaupt lesen möchtest.
Da erste? Das letzte? Oder eines mit bestimmten Eigenschaften? -
@codierknecht said in Auslesen JSON Wert Bedeutung:
Oder eines mit bestimmten Eigenschaften?
Ja das im Moment gültige.
-
-
@codierknecht said in Auslesen JSON Wert Bedeutung:
Und das wäre? Das erste?
Nein das mit der aktuellen Stunde. Das JSON hat 24 Channel. Verstehe deine Anmerkung.
"hour": 0, "startsAt": "2025-01-30T00:00:00.000+01:00", "total": 0.3263, "output": true
Müßte einen Vergleich zur aktuellen Uhrzeit und dem startsAt machen. -
@peter-c
Siehe Edit -
oder so:
-
@homoran sagte: oder so:
Das setzt voraus, dass die Liste immer mit Stunde 0 beginnt.
Die Wandlung nach Zahl ist nicht erforderlich. -
@paul53 sagte in Auslesen JSON Wert Bedeutung:
Das setzt voraus, dass die Liste immer mit Stunde 0 beginnt.
Könnte man jetzt mal annehmen. Dann wäre die Vorgehensweise sehr effizient.
Allein: Wir wissen es nicht sicher
-
@paul53 sagte in Auslesen JSON Wert Bedeutung:
@homoran sagte: oder so:
Das setzt voraus, dass die Liste immer mit Stunde 0 beginnt.
ich bin davon ausgegangen, dass die Liste imner die entsprechenden Elemente enthält
egal in welcher Reihenfolge
-
Habs jetzt nachgebaut.
Ergebnis stimmt jetzt mit dem von Dir vorgeschlagenem ersten Ansatz.
Keine Fehlermeldung mehr.Hab Deine andere Lösung erst jetzt gesehen.
2025-01-30 14:37:00.017 - info: javascript.0 (927) script.js.common.Werte_aus_Json: { ack: true } 2025-01-30 14:37:00.019 - info: javascript.0 (927) script.js.common.Werte_aus_Json: 14 2025-01-30 14:38:00.025 - info: javascript.0 (927) script.js.common.Werte_aus_Json: { ack: true } 2025-01-30 14:38:00.026 - info: javascript.0 (927) script.js.common.Werte_aus_Json: 14
-
@peter-c sagte: Habs jetzt nachgebaut.
Nein, die Schleife wird zu früh abgebrochen.
Es genügt, auf jede volle Stunde zu triggern. -
@paul53 sagte in Auslesen JSON Wert Bedeutung:
Nein, die Schleife wird zu früh abgebrochen.
Der Abbruch muss mit in den "Falls"-Block.
Die Schleife soll ja erst verlassen werden, wenn der passende Eintrag gefunden wurde. -
@paul53 said in Auslesen JSON Wert Bedeutung:
Es genügt, auf jede volle Stunde zu triggern.
Ja das ändere ich noch, hatte den Zeitplan nur zum Ausprobieren gewählt.
-
@peter-c sagte in Auslesen JSON Wert Bedeutung:
hatte den Zeitplan nur zum Ausprobieren gewählt
Zum Ausprobieren kannst Du den Zeitplan erstmal komplett weglassen.
Dann wird der Code bei jedem Start des Script 1x ausgeführt -
@codierknecht said in Auslesen JSON Wert Bedeutung:
Der Abbruch muss mit in den "Falls"-Block.
Stimmt habe ich geändert, bekomme aber jetzt Fehlermeldung.
2025-01-30 14:53:53.286 - info: javascript.0 (927) Start JavaScript script.js.common.Werte_aus_Json (Blockly) 2025-01-30 14:53:53.292 - warn: javascript.0 (927) You are assigning a boolean to the state "0_userdata.0.Tibberlink_Kanäle.höchste_Kosten_Status" which expects a string. Please fix your code to use a string or change the state type to boolean. This warning might become an error in future versions. 2025-01-30 14:53:53.294 - warn: javascript.0 (927) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2090:20) 2025-01-30 14:53:53.294 - warn: javascript.0 (927) at script.js.common.Werte_aus_Json:10:5 2025-01-30 14:53:53.294 - warn: javascript.0 (927) at script.js.common.Werte_aus_Json:22:3 2025-01-30 14:53:53.294 - info: javascript.0 (927) script.js.common.Werte_aus_Json: true 2025-01-30 14:53:53.294 - info: javascript.0 (927) script.js.common.Werte_aus_Json: 14
-
@peter-c sagte: bekomme aber jetzt Fehlermeldung.
Aus dem JSON:
"output": true
Der Datenpunkt hat den falschen Typ.
-
@paul53 said in Auslesen JSON Wert Bedeutung:
Der Datenpunkt hat den falschen Typ.
Ja stimmt, jetzt keine Fehler mehr.
Puh was man alles übersehen kann - danke für die Unterstützung, hab wieder was gelernt!