@paul53 said in MQTT string Parsen:
let val = strom['Power'][0]; // Phase 1
Hallo Paul, ich bin begeistert, danke für die schnelle Hilfe. Hab das Script noch nicht komplett, aber es funktioniert soweit. Was könnte ich noch optimieren?
on('mqtt.0.tele.pzem.SENSOR', function(dp) { let strom = JSON.parse(dp.state.val).ENERGY; if(strom['Total']) { let val = strom['Total']; setState('0_userdata.0.Visualisierung.Strom.Energy_Total', val, true); } if(strom['Yesterday']) { let val = strom['Yesterday']; setState('0_userdata.0.Visualisierung.Strom.Energy_Yesterday', val, true); } if(strom['Today']) { let val = strom['Today']; setState('0_userdata.0.Visualisierung.Strom.Energy_Today', val, true); } if(strom['Period']) { let val = strom['Period']; setState('0_userdata.0.Visualisierung.Strom.Period', val, true); } if(strom['Power']) { let val = strom['Power'][0]; setState('0_userdata.0.Visualisierung.Strom.Power_Ph1', val, true); } if(strom['Power']) { let val = strom['Power'][1]; setState('0_userdata.0.Visualisierung.Strom.Power_Ph2', val, true); } if(strom['Power']) { let val = strom['Power'][2]; setState('0_userdata.0.Visualisierung.Strom.Power_Ph3', val, true); } if(strom['ApparentPower']) { let val = strom['ApparentPower'][0]; setState('0_userdata.0.Visualisierung.Strom.ApparentPower_Ph1', val, true); } if(strom['ApparentPower']) { let val = strom['ApparentPower'][1]; setState('0_userdata.0.Visualisierung.Strom.ApparentPower_Ph2', val, true); } if(strom['ApparentPower']) { let val = strom['ApparentPower'][2]; setState('0_userdata.0.Visualisierung.Strom.ApparentPower_Ph3', val, true); } });