[{"id":"809d03f5.6564","type":"tab","label":"P1 Homewizard energy","disabled":false,"info":""},{"id":"bc712104.b8f81","type":"http request","z":"809d03f5.6564","name":"","method":"GET","ret":"txt","paytoqs":"ignore","url":"http://192.168.0.194/api/v1/telegram","tls":"","persist":false,"proxy":"","authType":"","x":290,"y":160,"wires":[["8d3f28e4.d9b9b8","2a95c25c.3506ce"]]},{"id":"cb5ec559.1b6098","type":"interval","z":"809d03f5.6564","name":"interval","interval":"60","onstart":false,"msg":"ping","showstatus":true,"unit":"seconds","statusformat":"YYYY-MM-D HH:mm:ss","x":90,"y":220,"wires":[["bc712104.b8f81"]]},{"id":"8ec3e146.f6514","type":"inject","z":"809d03f5.6564","name":"Inject","props":[{"p":"payload","v":"","vt":"date"},{"p":"topic","v":"","vt":"string"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":100,"y":160,"wires":[["bc712104.b8f81"]]},{"id":"9e4ad400.468af","type":"debug","z":"809d03f5.6564","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":710,"y":140,"wires":[]},{"id":"8b924a2b.0db6a8","type":"comment","z":"809d03f5.6564","name":"Smart meter Out","info":"","x":520,"y":100,"wires":[]},{"id":"8d3f28e4.d9b9b8","type":"function","z":"809d03f5.6564","name":"countersGlobal","func":"var ts = new Date().getTime();\nvar energy = {\n ts: ts, \n total_power_import_t1_kwh:0,\n total_power_import_t2_kwh:0,\n total_power_export_t1_kwh:0,\n total_power_export_t2_kwh:0,\n active_power_w:0,\n voltage_l1_v:0,\n voltage_l2_v:0,\n voltage_l3_v:0,\n active_power_l1_w:0,\n active_power_l2_w:0,\n active_power_l3_w:0\n };\nvar gas = {ts:ts, total_gas_m3:0};\nvar arr=msg.payload.split('\\r\\n');\n\nfor (i=0;i<arr.length;i++){\n if(arr[i].startsWith(\"1-0:1.8.1\")) energy.total_power_import_t1_kwh += parseFloat(arr[i].substring(10,20))*1;\n if(arr[i].startsWith(\"1-0:1.8.2\")) energy.total_power_import_t2_kwh += parseFloat(arr[i].substring(10,20))*1;\n if(arr[i].startsWith(\"1-0:2.8.1\")) energy.total_power_export_t1_kwh += parseFloat(arr[i].substring(10,20))*1;\n if(arr[i].startsWith(\"1-0:2.8.2\")) energy.total_power_export_t2_kwh += parseFloat(arr[i].substring(10,20))*1;\n if(arr[i].startsWith(\"1-0:1.7.0\")) energy.active_power_w += parseFloat(arr[i].substring(10,20))*1000;\n if(arr[i].startsWith(\"1-0:2.7.0\")) energy.active_power_w -= parseFloat(arr[i].substring(10,20))*1000;\n if(arr[i].startsWith(\"1-0:32.7.0\")) energy.voltage_l1_v += parseFloat(arr[i].substring(11,16))*1;\n if(arr[i].startsWith(\"1-0:52.7.0\")) energy.voltage_l2_v += parseFloat(arr[i].substring(11,16))*1;\n if(arr[i].startsWith(\"1-0:72.7.0\")) energy.voltage_l3_v += parseFloat(arr[i].substring(11,16))*1;\n if(arr[i].startsWith(\"1-0:22.7.0\")) energy.active_power_l1_w += parseFloat(arr[i].substring(11,17))*1000;\n if(arr[i].startsWith(\"1-0:21.7.0\")) energy.active_power_l1_w -= parseFloat(arr[i].substring(11,17))*1000;\n if(arr[i].startsWith(\"1-0:42.7.0\")) energy.active_power_l2_w += parseFloat(arr[i].substring(11,17))*1000;\n if(arr[i].startsWith(\"1-0:41.7.0\")) energy.active_power_l2_w -= parseFloat(arr[i].substring(11,17))*1000;\n if(arr[i].startsWith(\"1-0:62.7.0\")) energy.active_power_l3_w += parseFloat(arr[i].substring(11,17))*1000;\n if(arr[i].startsWith(\"1-0:61.7.0\")) energy.active_power_l3_w -= parseFloat(arr[i].substring(11,17))*1000;\n \n if(arr[i].startsWith(\"0-1:24.2.1\")) {\n gasData = arr[i].split('(');\n gas.total_gas_m3 = parseFloat(gasData[2].substring(0, gasData[2].length - 4))*1000;\n dateString = gasData[1].substring(0, gasData[1].length - 2);\n d = new Date();\n d.setFullYear(parseInt(dateString.substring(0,2))+2000);\n d.setMonth(parseInt(dateString.substring(2,4))-1);\n d.setDate(parseInt(dateString.substring(4,6)));\n d.setHours(parseInt(dateString.substring(6,8)));\n d.setMinutes(parseInt(dateString.substring(8,10)));\n d.setSeconds(parseInt(dateString.substring(10,12)));\n d.setMilliseconds(0);\n gas.ts = d.valueOf();\n }\n}\n\nglobal.set(\"energy\", energy);\nglobal.set(\"gas\", gas);\n\nreturn [{payload:{energy, gas}}];\n","outputs":1,"noerr":0,"initialize":"","finalize":"","x":520,"y":140,"wires":[["9e4ad400.468af","e052d.71ecaad38"]]},{"id":"2a95c25c.3506ce","type":"debug","z":"809d03f5.6564","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":510,"y":200,"wires":[]},{"id":"aade1dbb.0bf92","type":"mqtt out","z":"809d03f5.6564","name":"","topic":"","qos":"","retain":"","broker":"f935c11c.41462","x":1030,"y":200,"wires":[]},{"id":"3ce8aedf.6655b2","type":"join","z":"809d03f5.6564","name":"","mode":"custom","build":"merged","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":".1","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":910,"y":200,"wires":[["aade1dbb.0bf92"]]},{"id":"e052d.71ecaad38","type":"change","z":"809d03f5.6564","name":"move to msg","rules":[{"t":"set","p":"topic","pt":"msg","to":"p1","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":730,"y":200,"wires":[["3ce8aedf.6655b2"]]},{"id":"b01c3b99.6eb9b8","type":"mqtt in","z":"809d03f5.6564","name":"","topic":"p1","qos":"2","datatype":"json","broker":"f935c11c.41462","x":850,"y":280,"wires":[["88f9ad67.bb31c"]]},{"id":"88f9ad67.bb31c","type":"debug","z":"809d03f5.6564","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":1010,"y":280,"wires":[]},{"id":"f935c11c.41462","type":"mqtt-broker","name":"MQTT","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]