\\s*
([^<]*)<\\/div>\\s*<\\/div>)?/g;\n\nconst parsed = [];\nfor (const m of html.matchAll(re)) {\n const index = Number(m[1]);\n const label = m[2].trim();\n const raw = (m[3] ?? '').trim() || null;\n const { value, unit, state, on } = parseValue(raw);\n const key = `${String(index).padStart(2,'0')}_${toKey(label)}`;\n parsed.push({ index, label, key, raw, value, unit, state, on });\n}\n\n// 3) Kompaktes Objekt + Einheiten-Mapping bauen\nconst flat = {};\nconst units = {};\nfor (const p of parsed) {\n flat[p.key] = (p.value ?? p.state ?? p.raw ?? null);\n if (p.unit) units[p.key] = p.unit;\n}\n\n// 4) Ein einziges Ergebnis-Item zurückgeben\nreturn [{ json: { flat, units, items: parsed } }];\n"
+ },
+ "type": "n8n-nodes-base.code",
+ "typeVersion": 2,
+ "position": [
+ -224,
+ 288
+ ],
+ "id": "509329e8-02f5-473f-a09c-f334bc441340",
+ "name": "transfer data to readable format"
+ },
+ {
+ "parameters": {
+ "url": "http://192.168.2.68:8093/v1/state/0_userdata.0.haus.heizung.pelletheizung.hot_water_temperature",
+ "sendQuery": true,
+ "queryParameters": {
+ "parameters": [
+ {
+ "name": "value",
+ "value": "={{ $('transfer data to readable format').item.json.flat['08_unbenutzt']"
+ }
+ ]
+ },
+ "sendHeaders": true,
+ "headerParameters": {
+ "parameters": [
+ {
+ "name": "value",
+ "value": "={{ $('transfer data to readable format').item.json.flat['08_unbenutzt'] }}"
+ }
+ ]
+ },
+ "options": {}
+ },
+ "type": "n8n-nodes-base.httpRequest",
+ "typeVersion": 4.2,
+ "position": [
+ 0,
+ 384
+ ],
+ "id": "ee3b68e3-7b85-41c8-9a2d-276e8bb8da17",
+ "name": "set Warmwasser Temperatur"
+ },
+ {
+ "parameters": {
+ "url": "http://192.168.2.68:8093/v1/state/0_userdata.0.haus.heizung.pelletheizung.heating_circuit_temperature",
+ "sendQuery": true,
+ "queryParameters": {
+ "parameters": [
+ {
+ "name": "value",
+ "value": "={{ $('transfer data to readable format').item.json.flat['03_unbenutzt'] }}"
+ }
+ ]
+ },
+ "sendHeaders": true,
+ "headerParameters": {
+ "parameters": [
+ {
+ "name": "value",
+ "value": "={{ $('transfer data to readable format').item.json.flat['03_unbenutzt'] }}"
+ }
+ ]
+ },
+ "options": {}
+ },
+ "type": "n8n-nodes-base.httpRequest",
+ "typeVersion": 4.2,
+ "position": [
+ 0,
+ 576
+ ],
+ "id": "5b95f25f-a896-46ef-a455-cb915a76b388",
+ "name": "set Heizkreis Temperatur"
+ },
+ {
+ "parameters": {
+ "url": "http://192.168.2.68:8093/v1/state/0_userdata.0.haus.heizung.pelletheizung.heat_pump_consumption",
+ "sendQuery": true,
+ "queryParameters": {
+ "parameters": [
+ {
+ "name": "value",
+ "value": "={{ $json.flat['16_Stromzahler_WP'] }}"
+ }
+ ]
+ },
+ "sendHeaders": true,
+ "headerParameters": {
+ "parameters": [
+ {
+ "name": "value",
+ "value": "={{ $json.flat['16_Stromzahler_WP'] }}"
+ }
+ ]
+ },
+ "options": {}
+ },
+ "type": "n8n-nodes-base.httpRequest",
+ "typeVersion": 4.2,
+ "position": [
+ 0,
+ 192
+ ],
+ "id": "52d65947-58f8-423d-a746-ba108d74dd06",
+ "name": "set Verbrauch Waermepumpe"
+ },
+ {
+ "parameters": {
+ "url": "http://192.168.2.68:8093/v1/state/0_userdata.0.haus.heizung.outer_temperature",
+ "sendQuery": true,
+ "queryParameters": {
+ "parameters": [
+ {
+ "name": "value",
+ "value": "={{ $json.flat['06_T_Aussen'] }}"
+ }
+ ]
+ },
+ "sendHeaders": true,
+ "headerParameters": {
+ "parameters": [
+ {
+ "name": "value",
+ "value": "={{ $json.flat['06_T_Aussen'] }}"
+ }
+ ]
+ },
+ "options": {}
+ },
+ "type": "n8n-nodes-base.httpRequest",
+ "typeVersion": 4.2,
+ "position": [
+ 0,
+ 0
+ ],
+ "id": "e895b3a4-620c-4623-9267-6cab2d353f50",
+ "name": "set outer temperature"
+ }
+ ],
+ "pinData": {},
+ "connections": {
+ "Schedule Trigger": {
+ "main": [
+ [
+ {
+ "node": "get Data from CMI Interface local",
+ "type": "main",
+ "index": 0
+ }
+ ]
+ ]
+ },
+ "get Data from CMI Interface local": {
+ "main": [
+ [
+ {
+ "node": "transfer data to readable format",
+ "type": "main",
+ "index": 0
+ }
+ ]
+ ]
+ },
+ "transfer data to readable format": {
+ "main": [
+ [
+ {
+ "node": "set Warmwasser Temperatur",
+ "type": "main",
+ "index": 0
+ },
+ {
+ "node": "set Verbrauch Waermepumpe",
+ "type": "main",
+ "index": 0
+ },
+ {
+ "node": "set Heizkreis Temperatur",
+ "type": "main",
+ "index": 0
+ },
+ {
+ "node": "set outer temperature",
+ "type": "main",
+ "index": 0
+ }
+ ]
+ ]
+ }
+ },
+ "active": true,
+ "settings": {
+ "executionOrder": "v1",
+ "timeSavedMode": "fixed",
+ "callerPolicy": "workflowsFromSameOwner",
+ "availableInMCP": false
+ },
+ "versionId": "ff580cc5-a6c7-49be-8ac9-7a607d4537ed",
+ "meta": {
+ "instanceId": "3cc6c4256e2bbdec1b3708c49dc3889c7266357f3e239651c157c2de760e6c65"
+ },
+ "id": "ygJYiiFM97WiWeY5",
+ "tags": [
+ {
+ "updatedAt": "2025-12-20T20:03:34.739Z",
+ "createdAt": "2025-12-20T20:03:34.739Z",
+ "id": "i5rtQijMRj2sx5Zj",
+ "name": "Heizung"
+ },
+ {
+ "updatedAt": "2025-12-20T19:56:59.512Z",
+ "createdAt": "2025-12-20T19:56:59.512Z",
+ "id": "9G8OthZJpXo6BPbV",
+ "name": "Smart Home"
+ }
+ ]
+}
\ No newline at end of file