!# values.rega !# !# Dieses Homematic-Script gibt eine Liste aller Datenpunkte im JSON Format aus !# !# 3'2013-4'2018 hobbyquaker https://github.com/hobbyquaker !# string sDevId; string sChnId; string sDPId; Write('['); boolean dFirst = true; foreach (sDevId, root.Devices().EnumUsedIDs()) { object oDevice = dom.GetObject(sDevId); boolean bDevReady = oDevice.ReadyConfig(); if (bDevReady) { foreach(sChnId, oDevice.Channels()) { object oChannel = dom.GetObject(sChnId); foreach(sDPId, oChannel.DPs().EnumUsedIDs()) { object oDP = dom.GetObject(sDPId); var type = oDP.ValueType(); var value = oDP.Value(); if (dFirst) { dFirst = false; } else { WriteLine(','); } Write('{"name": "'); WriteURL(oDP.Name()); Write('", "value": '); if (type == 20) { Write('"'); WriteURL(value); Write('"'); } else { if (type == 2) { if (value) { Write('true'); } else { Write('false'); } } else { if (value == '') { value = 0; } Write(value); } } Write(', "ts": "' # oDP.Timestamp() # '"}') } } } } Write(']');