NEWS
json teilen
-
@wolfgangkt Ich weiss ja nicht was für eine Logikmaschine du benutzt, aber wenn das ein Array von Objekten ist - dann greifst Du einfach über den Index zu.
var obj = JSON.parse('[{"Device":"Wassermelder Geschirrspüler","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"18:53 Uhr","Status":"Online"},{"Device":"Wassermelder Spüle","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"18:30 Uhr","Status":"Online"}]'); var teil1 = obj[0]; var teil2 = obj[1]; console.log(obj); console.log(teil1); console.log(teil2);
Sprich der Index Deines Objektes bestimmte die Zeilen und welche im Objekt. Sprich Du musst halt einen Pointer machen, der immer x Zeilen ausgibt.
Wenn Du halt 5 oder 6 Objekte in einem Array brauchst - dann läufst Du halt in einer Schleife da durch oder Du nutzt JSONATA und machst kleinere Arrays.
@mickym Danke. Ich poste nochmals den json-Datenpunkt. Und die ersten 30 Datensätze sollen in einen json-Datenpunkt geschrieben werden. Die Datensätze 31- xxx sollen dann in einen 2. json-Datenpunkt geschrieben werden. Und wie schon geschrieben mit meinen java Kenntnisse ist es nicht weit her.
[{"Device":"Wassermelder Geschirrspüler","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:43 Uhr","Status":"Online"},{"Device":"Wassermelder Spüle","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:11 Uhr","Status":"Online"},{"Device":"Taster Anwendheit Gang","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:39 Uhr","Status":"Online"},{"Device":"E.Bike","Adapter":"Zigbee","Battery":"43%","Signal strength":"100%","Last contact":"19:44 Uhr","Status":"Online"},{"Device":"Temperatur Keller aussen","Adapter":"Zigbee","Battery":"90%","Signal strength":"100%","Last contact":"19:46 Uhr","Status":"Online"},{"Device":"Wassermelder Waschmaschine","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"18:37 Uhr","Status":"Online"},{"Device":"Wassersensor Keller","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:36 Uhr","Status":"Online"},{"Device":"Schlafzimmerschrank links","Adapter":"Zigbee","Battery":"97%","Signal strength":"100%","Last contact":"19:56 Uhr","Status":"Online"},{"Device":"Bewegungsmelder Küche","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:29 Uhr","Status":"Online"},{"Device":"Nachttisch links","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:45 Uhr","Status":"Online"},{"Device":"Temperatur Gefrierschrank","Adapter":"Zigbee","Battery":"23%","Signal strength":"100%","Last contact":"20:09 Uhr","Status":"Online"},{"Device":"Temperatur Kühlschrank","Adapter":"Zigbee","Battery":"83%","Signal strength":"100%","Last contact":"20:06 Uhr","Status":"Online"},{"Device":"Temperatur Keller","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:00 Uhr","Status":"Online"},{"Device":"Gas","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:51 Uhr","Status":"Online"},{"Device":"Nachttisch rechts","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:40 Uhr","Status":"Online"},{"Device":"Schlafzimmerschrank rechts","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:27 Uhr","Status":"Online"},{"Device":"Terasse geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:24 Uhr","Status":"Online"},{"Device":"Wohnzimmerfenster geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:37 Uhr","Status":"Online"},{"Device":"Badfenster links geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:29 Uhr","Status":"Online"},{"Device":"Temperatur Küche","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:54 Uhr","Status":"Online"},{"Device":"Klingel","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:05 Uhr","Status":"Online"},{"Device":"Terasse gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:23 Uhr","Status":"Online"},{"Device":"Badfenster rechts gekippt","Adapter":"Zigbee","Battery":"97%","Signal strength":"100%","Last contact":"20:08 Uhr","Status":"Online"},{"Device":"Wohnzimmerfenster gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:42 Uhr","Status":"Online"},{"Device":"Wohnungstür","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:28 Uhr","Status":"Online"},{"Device":"Wassermelder Kaffeemaschine","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:49 Uhr","Status":"Online"},{"Device":"Wassermelder Klo","Adapter":"Zigbee","Battery":"100%","Signal strength":"86%","Last contact":"20:01 Uhr","Status":"Online"},{"Device":"Küchenschrank unten","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:56 Uhr","Status":"Online"},{"Device":"Küchenschrank oben rechts","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:38 Uhr","Status":"Online"},{"Device":"Schlafzimmerfenster gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:54 Uhr","Status":"Online"},{"Device":"Küchenfenster geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:33 Uhr","Status":"Online"},{"Device":"Wassermelder Waschtisch","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:25 Uhr","Status":"Online"},{"Device":"Taster Nas Wohnzimmer","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:23 Uhr","Status":"Online"},{"Device":"Küchenschrank oben links","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:50 Uhr","Status":"Online"},{"Device":"Badfenster links gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:33 Uhr","Status":"Online"},{"Device":"Badfenster rechts geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"72%","Last contact":"20:08 Uhr","Status":"Online"},{"Device":"Küchenfenster gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:28 Uhr","Status":"Online"},{"Device":"Haustür","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"18:34 Uhr","Status":"Online"},{"Device":"Schlafzimmerfenster geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:55 Uhr","Status":"Online"},{"Device":"Kellerfenster","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:38 Uhr","Status":"Online"},{"Device":"Rauchmelder Keller","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:01 Uhr","Status":"Online"},{"Device":"Gaszaehler","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:05 Uhr","Status":"Online"},{"Device":"Rauchmelder Küche","Adapter":"Zigbee","Battery":"100%","Signal strength":"83%","Last contact":"20:04 Uhr","Status":"Online"},{"Device":"Kellertuer","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:46 Uhr","Status":"Online"},{"Device":"Bewegungsmelder Gang 2","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:46 Uhr","Status":"Online"},{"Device":"Lichtsensor Wohnzimmer","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:45 Uhr","Status":"Online"},{"Device":"Lichtsensor Küche","Adapter":"Zigbee","Battery":"82%","Signal strength":"100%","Last contact":"19:29 Uhr","Status":"Online"},{"Device":"E1746 Bad","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:11 Uhr","Status":"Online"},{"Device":"TS0044 Wohnzimmer","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:50 Uhr","Status":"Online"},{"Device":"Lichtsensor Bad","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:58 Uhr","Status":"Online"},{"Device":"Lichtsensor Gang","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:59 Uhr","Status":"Online"},{"Device":"WXCJKG13LM","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:25 Uhr","Status":"Online"},{"Device":"E1746 Gang","Adapter":"Zigbee","Battery":" - ","Signal strength":"0%","Last contact":"20:03 Uhr","Status":"Online"},{"Device":"SM-0306E-2W","Adapter":"Zigbee","Battery":" - ","Signal strength":"0%","Last contact":"9 Stunden","Status":"Offline"},{"Device":"Steckdose Eckbank","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:07 Uhr","Status":"Online"},{"Device":"Steckdose Bett","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:09 Uhr","Status":"Online"},{"Device":"Steckdose Küchenschrank oben","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:05 Uhr","Status":"Online"},{"Device":"E1746 Keller","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:10 Uhr","Status":"Online"},{"Device":"TS0044 Keller","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:38 Uhr","Status":"Online"},{"Device":"Fussbodenheizung Küche","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:11 Uhr","Status":"Online"},{"Device":"Fussbodenheizung Wohnzimmer","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:11 Uhr","Status":"Online"},{"Device":"Steckdose Beleuchtung Schlafzimmerschrank","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:10 Uhr","Status":"Online"},{"Device":"Taster Tablet","Adapter":"Zigbee","Battery":"21%","Signal strength":"100%","Last contact":"3 Stunden","Status":"Online"}] -
@mickym Danke. Ich poste nochmals den json-Datenpunkt. Und die ersten 30 Datensätze sollen in einen json-Datenpunkt geschrieben werden. Die Datensätze 31- xxx sollen dann in einen 2. json-Datenpunkt geschrieben werden. Und wie schon geschrieben mit meinen java Kenntnisse ist es nicht weit her.
[{"Device":"Wassermelder Geschirrspüler","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:43 Uhr","Status":"Online"},{"Device":"Wassermelder Spüle","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:11 Uhr","Status":"Online"},{"Device":"Taster Anwendheit Gang","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:39 Uhr","Status":"Online"},{"Device":"E.Bike","Adapter":"Zigbee","Battery":"43%","Signal strength":"100%","Last contact":"19:44 Uhr","Status":"Online"},{"Device":"Temperatur Keller aussen","Adapter":"Zigbee","Battery":"90%","Signal strength":"100%","Last contact":"19:46 Uhr","Status":"Online"},{"Device":"Wassermelder Waschmaschine","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"18:37 Uhr","Status":"Online"},{"Device":"Wassersensor Keller","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:36 Uhr","Status":"Online"},{"Device":"Schlafzimmerschrank links","Adapter":"Zigbee","Battery":"97%","Signal strength":"100%","Last contact":"19:56 Uhr","Status":"Online"},{"Device":"Bewegungsmelder Küche","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:29 Uhr","Status":"Online"},{"Device":"Nachttisch links","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:45 Uhr","Status":"Online"},{"Device":"Temperatur Gefrierschrank","Adapter":"Zigbee","Battery":"23%","Signal strength":"100%","Last contact":"20:09 Uhr","Status":"Online"},{"Device":"Temperatur Kühlschrank","Adapter":"Zigbee","Battery":"83%","Signal strength":"100%","Last contact":"20:06 Uhr","Status":"Online"},{"Device":"Temperatur Keller","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:00 Uhr","Status":"Online"},{"Device":"Gas","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:51 Uhr","Status":"Online"},{"Device":"Nachttisch rechts","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:40 Uhr","Status":"Online"},{"Device":"Schlafzimmerschrank rechts","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:27 Uhr","Status":"Online"},{"Device":"Terasse geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:24 Uhr","Status":"Online"},{"Device":"Wohnzimmerfenster geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:37 Uhr","Status":"Online"},{"Device":"Badfenster links geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:29 Uhr","Status":"Online"},{"Device":"Temperatur Küche","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:54 Uhr","Status":"Online"},{"Device":"Klingel","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:05 Uhr","Status":"Online"},{"Device":"Terasse gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:23 Uhr","Status":"Online"},{"Device":"Badfenster rechts gekippt","Adapter":"Zigbee","Battery":"97%","Signal strength":"100%","Last contact":"20:08 Uhr","Status":"Online"},{"Device":"Wohnzimmerfenster gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:42 Uhr","Status":"Online"},{"Device":"Wohnungstür","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:28 Uhr","Status":"Online"},{"Device":"Wassermelder Kaffeemaschine","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:49 Uhr","Status":"Online"},{"Device":"Wassermelder Klo","Adapter":"Zigbee","Battery":"100%","Signal strength":"86%","Last contact":"20:01 Uhr","Status":"Online"},{"Device":"Küchenschrank unten","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:56 Uhr","Status":"Online"},{"Device":"Küchenschrank oben rechts","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:38 Uhr","Status":"Online"},{"Device":"Schlafzimmerfenster gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:54 Uhr","Status":"Online"},{"Device":"Küchenfenster geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:33 Uhr","Status":"Online"},{"Device":"Wassermelder Waschtisch","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:25 Uhr","Status":"Online"},{"Device":"Taster Nas Wohnzimmer","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:23 Uhr","Status":"Online"},{"Device":"Küchenschrank oben links","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:50 Uhr","Status":"Online"},{"Device":"Badfenster links gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:33 Uhr","Status":"Online"},{"Device":"Badfenster rechts geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"72%","Last contact":"20:08 Uhr","Status":"Online"},{"Device":"Küchenfenster gekippt","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:28 Uhr","Status":"Online"},{"Device":"Haustür","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"18:34 Uhr","Status":"Online"},{"Device":"Schlafzimmerfenster geschlossen","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:55 Uhr","Status":"Online"},{"Device":"Kellerfenster","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:38 Uhr","Status":"Online"},{"Device":"Rauchmelder Keller","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:01 Uhr","Status":"Online"},{"Device":"Gaszaehler","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"20:05 Uhr","Status":"Online"},{"Device":"Rauchmelder Küche","Adapter":"Zigbee","Battery":"100%","Signal strength":"83%","Last contact":"20:04 Uhr","Status":"Online"},{"Device":"Kellertuer","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:46 Uhr","Status":"Online"},{"Device":"Bewegungsmelder Gang 2","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:46 Uhr","Status":"Online"},{"Device":"Lichtsensor Wohnzimmer","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:45 Uhr","Status":"Online"},{"Device":"Lichtsensor Küche","Adapter":"Zigbee","Battery":"82%","Signal strength":"100%","Last contact":"19:29 Uhr","Status":"Online"},{"Device":"E1746 Bad","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:11 Uhr","Status":"Online"},{"Device":"TS0044 Wohnzimmer","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:50 Uhr","Status":"Online"},{"Device":"Lichtsensor Bad","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:58 Uhr","Status":"Online"},{"Device":"Lichtsensor Gang","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:59 Uhr","Status":"Online"},{"Device":"WXCJKG13LM","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:25 Uhr","Status":"Online"},{"Device":"E1746 Gang","Adapter":"Zigbee","Battery":" - ","Signal strength":"0%","Last contact":"20:03 Uhr","Status":"Online"},{"Device":"SM-0306E-2W","Adapter":"Zigbee","Battery":" - ","Signal strength":"0%","Last contact":"9 Stunden","Status":"Offline"},{"Device":"Steckdose Eckbank","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:07 Uhr","Status":"Online"},{"Device":"Steckdose Bett","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:09 Uhr","Status":"Online"},{"Device":"Steckdose Küchenschrank oben","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:05 Uhr","Status":"Online"},{"Device":"E1746 Keller","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:10 Uhr","Status":"Online"},{"Device":"TS0044 Keller","Adapter":"Zigbee","Battery":"100%","Signal strength":"100%","Last contact":"19:38 Uhr","Status":"Online"},{"Device":"Fussbodenheizung Küche","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:11 Uhr","Status":"Online"},{"Device":"Fussbodenheizung Wohnzimmer","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:11 Uhr","Status":"Online"},{"Device":"Steckdose Beleuchtung Schlafzimmerschrank","Adapter":"Zigbee","Battery":" - ","Signal strength":"100%","Last contact":"20:10 Uhr","Status":"Online"},{"Device":"Taster Tablet","Adapter":"Zigbee","Battery":"21%","Signal strength":"100%","Last contact":"3 Stunden","Status":"Online"}]@wolfgangkt sagte: die ersten 30 Datensätze sollen in einen json-Datenpunkt geschrieben werden.
Versuche mal:
const idJson = '...'; // Original const idJson1 = '...'; // Teil 1 const idJson2 = '...'; // Teil 2 on(idJson, function(dp) { let arr = dp.state.val; const arr2 = []; for(let i = 30; i < arr.length; i++) { arr2.push(arr[i]); } arr.length = 30; setState(idJson1, JSON.stringify(arr), true); setState(idJson2, JSON.stringify(arr2), true); });EDIT: Zeilen 6 und 8 angepasst.
-
Ok dann bin ich raus. ;) der Meister schreibt.
-
@wolfgangkt sagte: die ersten 30 Datensätze sollen in einen json-Datenpunkt geschrieben werden.
Versuche mal:
const idJson = '...'; // Original const idJson1 = '...'; // Teil 1 const idJson2 = '...'; // Teil 2 on(idJson, function(dp) { let arr = dp.state.val; const arr2 = []; for(let i = 30; i < arr.length; i++) { arr2.push(arr[i]); } arr.length = 30; setState(idJson1, JSON.stringify(arr), true); setState(idJson2, JSON.stringify(arr2), true); });EDIT: Zeilen 6 und 8 angepasst.
@paul53 Erstmal vielen Dank. Das Script läuft fehlerfrei durch aber es wird nichts geschrieben.
const idJson = 'device-watcher.0.zigbee.listAll'; // Original const idJson1 = '0_userdata.0.Meine_Datenpunkte.Teil1'; // Teil 1 const idJson2 = '0_userdata.0.Meine_Datenpunkte.Teil2'; // Teil 2 on(idJson, function(dp) { let arr = JSON.parse(dp.state.val); const arr2 = []; for(let i = 30; i < arr.length - 30; i++) { arr2.push(arr[i]); } arr.length = 30; setState(idJson1, JSON.stringify(arr), true); setState(idJson2, JSON.stringify(arr2), true); }); -
@paul53 Erstmal vielen Dank. Das Script läuft fehlerfrei durch aber es wird nichts geschrieben.
const idJson = 'device-watcher.0.zigbee.listAll'; // Original const idJson1 = '0_userdata.0.Meine_Datenpunkte.Teil1'; // Teil 1 const idJson2 = '0_userdata.0.Meine_Datenpunkte.Teil2'; // Teil 2 on(idJson, function(dp) { let arr = JSON.parse(dp.state.val); const arr2 = []; for(let i = 30; i < arr.length - 30; i++) { arr2.push(arr[i]); } arr.length = 30; setState(idJson1, JSON.stringify(arr), true); setState(idJson2, JSON.stringify(arr2), true); });@wolfgangkt sagte: es wird nichts geschrieben.
Es wird nur bei Änderung im Original-JSON getriggert.
-
@paul53 jetzt hagelt es Fehler
2023-02-21 21:39:49.080 - info: device-watcher.0 (219822) Got terminate signal TERMINATE_YOURSELF 2023-02-21 21:39:49.080 - info: device-watcher.0 (219822) cleaned everything up... 2023-02-21 21:39:49.081 - info: device-watcher.0 (219822) terminating 2023-02-21 21:39:49.081 - info: device-watcher.0 (219822) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2023-02-21 21:39:53.468 - info: device-watcher.0 (219989) starting. Version 2.4.0 in /opt/iobroker/node_modules/iobroker.device-watcher, node: v16.19.1, js-controller: 4.0.24 2023-02-21 21:39:53.482 - info: device-watcher.0 (219989) Number of selected adapters: 8. Loading data from: Fritzdect, Harmony, HmiP, Ping, Shelly, Sonoff, Wled, Zigbee ... 2023-02-21 21:39:54.917 - error: javascript.0 (579) Error in callback: SyntaxError: Unexpected token o in JSON at position 1 2023-02-21 21:39:54.918 - error: javascript.0 (579) at JSON.parse (:null:null) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at Object. (script.js.Testen.Teilen:6:20) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1244:38) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:593:29) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5381:56) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at processImmediate (node:internal/timers:466:21) 2023-02-21 21:39:55.327 - error: javascript.0 (579) Error in callback: SyntaxError: Unexpected token o in JSON at position 1 2023-02-21 21:39:55.327 - error: javascript.0 (579) at JSON.parse (:null:null) 2023-02-21 21:39:55.327 - error: javascript.0 (579) at Object. (script.js.Testen.Teilen:6:20) 2023-02-21 21:39:55.327 - error: javascript.0 (579) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1244:38) 2023-02-21 21:39:55.328 - error: javascript.0 (579) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:593:29) 2023-02-21 21:39:55.328 - error: javascript.0 (579) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5381:56) 2023-02-21 21:39:55.328 - error: javascript.0 (579) at processImmediate (node:internal/timers:466:21) -
@paul53 jetzt hagelt es Fehler
2023-02-21 21:39:49.080 - info: device-watcher.0 (219822) Got terminate signal TERMINATE_YOURSELF 2023-02-21 21:39:49.080 - info: device-watcher.0 (219822) cleaned everything up... 2023-02-21 21:39:49.081 - info: device-watcher.0 (219822) terminating 2023-02-21 21:39:49.081 - info: device-watcher.0 (219822) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2023-02-21 21:39:53.468 - info: device-watcher.0 (219989) starting. Version 2.4.0 in /opt/iobroker/node_modules/iobroker.device-watcher, node: v16.19.1, js-controller: 4.0.24 2023-02-21 21:39:53.482 - info: device-watcher.0 (219989) Number of selected adapters: 8. Loading data from: Fritzdect, Harmony, HmiP, Ping, Shelly, Sonoff, Wled, Zigbee ... 2023-02-21 21:39:54.917 - error: javascript.0 (579) Error in callback: SyntaxError: Unexpected token o in JSON at position 1 2023-02-21 21:39:54.918 - error: javascript.0 (579) at JSON.parse (:null:null) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at Object. (script.js.Testen.Teilen:6:20) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1244:38) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:593:29) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5381:56) 2023-02-21 21:39:54.918 - error: javascript.0 (579) at processImmediate (node:internal/timers:466:21) 2023-02-21 21:39:55.327 - error: javascript.0 (579) Error in callback: SyntaxError: Unexpected token o in JSON at position 1 2023-02-21 21:39:55.327 - error: javascript.0 (579) at JSON.parse (:null:null) 2023-02-21 21:39:55.327 - error: javascript.0 (579) at Object. (script.js.Testen.Teilen:6:20) 2023-02-21 21:39:55.327 - error: javascript.0 (579) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1244:38) 2023-02-21 21:39:55.328 - error: javascript.0 (579) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:593:29) 2023-02-21 21:39:55.328 - error: javascript.0 (579) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5381:56) 2023-02-21 21:39:55.328 - error: javascript.0 (579) at processImmediate (node:internal/timers:466:21)@wolfgangkt sagte: Unexpected token o in JSON at position 1
Das Original-JSON lässt sich nicht parsen, da es offenbar fehlerhaft ist.
-
@wolfgangkt sagte: Unexpected token o in JSON at position 1
Das Original-JSON lässt sich nicht parsen, da es offenbar fehlerhaft ist.
@paul53 schade. Ich danke Dir trotzdem für deine Hilfe.
-
@paul53 schade. Ich danke Dir trotzdem für deine Hilfe.
-
@wolfgangkt
Das JSON, das Du gepostet hast, lässt sich parsen. Teil 2 beginnt mit "Küchenfenster geschlossen".@paul53 in dem Datenpunkt steht eigentlich immer das gleiche.
liegt es vielleicht an dem Datenpunkt selbst ?{ "type": "state", "common": { "name": { "en": "List of all devices", "de": "Liste aller Geräte", "ru": "Список всех устройств", "pt": "Lista de todos os dispositivos", "nl": "List van alle apparaten", "fr": "Liste de tous les dispositifs", "it": "Elenco di tutti i dispositivi", "es": "Lista de todos los dispositivos", "pl": "Lista wszystkich urządzeń", "zh-cn": "所有装置清单" }, "type": "array", "role": "json", "read": true, "write": false }, "native": {}, "from": "system.adapter.device-watcher.0", "user": "system.user.admin", "ts": 1676195799090, "_id": "device-watcher.0.zigbee.listAll", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } } -
@paul53 in dem Datenpunkt steht eigentlich immer das gleiche.
liegt es vielleicht an dem Datenpunkt selbst ?{ "type": "state", "common": { "name": { "en": "List of all devices", "de": "Liste aller Geräte", "ru": "Список всех устройств", "pt": "Lista de todos os dispositivos", "nl": "List van alle apparaten", "fr": "Liste de tous les dispositifs", "it": "Elenco di tutti i dispositivi", "es": "Lista de todos los dispositivos", "pl": "Lista wszystkich urządzeń", "zh-cn": "所有装置清单" }, "type": "array", "role": "json", "read": true, "write": false }, "native": {}, "from": "system.adapter.device-watcher.0", "user": "system.user.admin", "ts": 1676195799090, "_id": "device-watcher.0.zigbee.listAll", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }@wolfgangkt
Der Datenpunkt ist vom Typ "array", kann also nicht geparst werden. Ändere Zeile 6 inlet arr = dp.state.val; -
@wolfgangkt
Der Datenpunkt ist vom Typ "array", kann also nicht geparst werden. Ändere Zeile 6 inlet arr = dp.state.val;@paul53 jetzt funktioniert es. Vielen Dank für die Hilfe

-
@paul53 zu früh gefreut. In den 2. Datenpunkt werden nur 3 Datensätze geschrieben.
-
@paul53 zu früh gefreut. In den 2. Datenpunkt werden nur 3 Datensätze geschrieben.
@wolfgangkt sagte: In den 2. Datenpunkt werden nur 3 Datensätze geschrieben.
Ändere Zeile 8:
for(let i = 30; i < arr.length; i++) { -
@wolfgangkt sagte: In den 2. Datenpunkt werden nur 3 Datensätze geschrieben.
Ändere Zeile 8:
for(let i = 30; i < arr.length; i++) {@paul53 jetzt funktionierts. Besten Dank Dank nochmal.
-
@paul53 jetzt funktionierts. Besten Dank Dank nochmal.
@wolfgangkt Hier noch eine etwas kürzere Alternative:
const idJson = '0_userdata.0.testjson'; // Original const idJson1 = '0_userdata.0.json1'; // Teil 1 const idJson2 = '0_userdata.0.json2'; // Teil 2 on({ id: idJson, change: 'ne' }, (obj) => { const arr = JSON.parse(obj.state.val); setState(idJson1, JSON.stringify(arr.slice(0, 30)), true); setState(idJson2, JSON.stringify(arr.slice(30)), true); }); -
@wolfgangkt Hier noch eine etwas kürzere Alternative:
const idJson = '0_userdata.0.testjson'; // Original const idJson1 = '0_userdata.0.json1'; // Teil 1 const idJson2 = '0_userdata.0.json2'; // Teil 2 on({ id: idJson, change: 'ne' }, (obj) => { const arr = JSON.parse(obj.state.val); setState(idJson1, JSON.stringify(arr.slice(0, 30)), true); setState(idJson2, JSON.stringify(arr.slice(30)), true); });@haus-automatisierung Danke, kann ich auch nochmal probieren. Das Script von @paul53 funktioniert einwandfrei. Die 2 Tabellen in der VIS laufen schon zu meiner Zufriedenheit.
-
@haus-automatisierung Danke, kann ich auch nochmal probieren. Das Script von @paul53 funktioniert einwandfrei. Die 2 Tabellen in der VIS laufen schon zu meiner Zufriedenheit.
@wolfgangkt sagte: kann ich auch nochmal probieren.
Dann lass das Parsen in Zeile 6 weg (Datenpunkt liefert bereits ein Array).
-
@wolfgangkt sagte: kann ich auch nochmal probieren.
Dann lass das Parsen in Zeile 6 weg (Datenpunkt liefert bereits ein Array).
@paul53 eine Frage hätte ich noch. Wie kann ich aus Original json bestimme Werte herausfiltern z.B alle Wassermelder und in einen eigenen Datenpunkt schreiben.
-
@paul53 eine Frage hätte ich noch. Wie kann ich aus Original json bestimme Werte herausfiltern z.B alle Wassermelder und in einen eigenen Datenpunkt schreiben.
@wolfgangkt z.B. mit Filter-Funktionen
arr.filter(v => v.Device.startsWith('Wassermelder'));Also
setState(idJson1, JSON.stringify(arr.filter(v => v.Device.startsWith('Wassermelder'))), true);
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden