NEWS
ehemalige Historydaten finden
-
@mcu gerne
{ "_id": "hm-rega.0.KEQ1065589.0.DUTY_CYCLE", "type": "state", "common": { "name": "hm-rega.0.KEQ1065589.0.DUTY_CYCLE", "type": "number", "read": true, "write": false, "role": "value", "min": 0, "max": 100, "unit": "%", "desc": "Dutycycle", "custom": { "history.0": { "enabled": true, "aliasId": "hm-rega.0.43579", "changesOnly": true, "debounce": "1000", "changesRelogInterval": "1800", "changesMinDelta": "0", "maxLength": "10", "retention": "0" } } }, "native": { "ID": "DUTYCYCLE", "TYPE": "INTEGER", "MIN": 0, "MAX": 100, "UNIT": "%", "DEFAULT": 0, "CONTROL": "NONE" }, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.hm-rega.0", "user": "system.user.admin", "ts": 1667374580666 }
{ "_id": "hm-rega.0.43579", "type": "state", "common": { "name": "DC_Groundplane", "type": "number", "read": true, "write": true, "role": "state", "min": 0, "max": 1000, "custom": { "history.0": { "enabled": true, "changesOnly": true, "debounce": "1000", "maxLength": "10", "retention": 0, "changesRelogInterval": "1800", "changesMinDelta": 0, "aliasId": "" } } }, "native": { "Name": "DC_Groundplane", "TypeName": "VARDP", "DPInfo": "", "ValueMin": 0, "ValueMax": 1000, "ValueUnit": "", "ValueType": 4, "ValueSubType": 0, "ValueList": "" }, "from": "system.adapter.hm-rega.0", "ts": 1667374581466, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "user": "system.user.admin" }
-
@homoran Der Unterschied ist
write: false
beihm-rega.0.KEQ1065589.0.DUTY_CYCLE
undwrite: true
beihm-rega.0.43579
. Was das mit dem getEnabledDPs (history) zu tun hat? -
@homoran Hab jetzt nochmal eine Version v1.0.4, mit der kann man zwischen alias-Verwendung und normale DPs umschalten -> useAliasIdInEnabled: true.
Weiterhin kann man nur die enabled_DPs erstellen lassen (fillEnabled_DPs
) und auch ein Array mit history-DPs, die aliasIds (fillWithAliasId
) verwenden.Welche Werte sind dann unterschiedlich in dem Array, insbesondere die angesprochenen DPs ?
-
-
@mcu sagte in ehemalige Historydaten finden:
@homoran Meinst du diesen Link?
https://mcuiobroker.gitbook.io/jarvis-infos/tipps/scripte-blockly-javascript/javascript/history-adapter/nicht-mehr-geloggte-dps-in-history-verzeichnissen-findensorry ich hatte alle deine Posts nicht mehr gesehen. hatte dir ne PN geschrieben und dich dabei irrtümlich blockiert
SORRY
-
im fill with alias findet er zwei DPs
[ { "dpId": "luftdaten.0.28288.SDS_P1", "aliasId": "luftdaten.1.28288.SDS_P1" }, { "dpId": "luftdaten.0.28288.SDS_P2", "aliasId": "luftdaten.1.28288.SDS_P2" } ]
die Rega sind nicht dabei
unter enabled sind die "nicht-alias DPs"
"luftdaten.0.28288.SDS_P1", "luftdaten.0.28288.SDS_P2", "luftdaten.0.34499.SDS_P1", "luftdaten.0.34499.SDS_P2",
-
@homoran
Bei demhm-rega.0.43579
verstehe ich es, er hat kein aliasId.
Aber bei demhm-rega.0.KEQ1065589.0.DUTY_CYCLE
der müsste drin sein.
Aber den hatte er ja auch schon nicht in der enabledDPs-Liste.
Setzt den bitte manl testweise write auf true und lass nochmal fillWithAliasId laufen.Der getEndabledDPs(history-Adapter) holt den anscheinend nicht, warum auch immer?
unter enabled sind die "nicht-alias DPs"
Das ist so, wenn der
useAliasIdInEnabled
auf false steht. -
@mcu sagte in ehemalige Historydaten finden:
Setzt den bitte manl testweise write auf true und lass nochmal fillWithAliasId laufen.
enabled
"hm-rega.0.12770", "hm-rega.0.1995", "hm-rega.0.41216", "hm-rega.0.43096", "hm-rega.0.KEQ1065589.0.DUTY_CYCLE", "hm-rega.0.50371", "hm-rega.0.56705", "hm-rega.0.58388", "hm-rega.0.58979", "hm-rega.0.5996", "hm-rega.0.6318",
und fillwithAlias
[ { "dpId": "hm-rega.0.KEQ1065589.0.DUTY_CYCLE", "aliasId": "hm-rega.0.43579" }, { "dpId": "luftdaten.0.28288.SDS_P1", "aliasId": "luftdaten.1.28288.SDS_P1" }, { "dpId": "luftdaten.0.28288.SDS_P2", "aliasId": "luftdaten.1.28288.SDS_P2" } ]
ist jetzt in beiden drin
-
@homoran Lag es am write = true?
Dann hat der Adapter "history" einen Fehler.
Man kann ja trotzdem (write:false) über den Adapter Werte in den State schreiben oder? -
@mcu sagte in ehemalige Historydaten finden:
Das ist so, wenn der useAliasIdInEnabled auf false steht.
im Prinzip müssten der aktuelle und der alias (weil alter DP) in enabled stehen damit die gesamte History , auch über Gerätetausvh/Adapter wechseln erhalten bleibt, oder?
-
@homoran Im enabled muss der aliasID , falls vorhanden, drin stehen, da die Dateien mit dem aliasId-Namen gesetzt werden.
-
@mcu sagte in ehemalige Historydaten finden:
@homoran Lag es am write = true?
Dann hat der Adapter "history" einen Fehler.
Man kann ja trotzdem (write:false) über den Adapter Werte in den State schreiben oder?sieht so aus!
dann muss da @apollon77 mal nachsehen, dann kan der das vielleicht auch mit den history-Alias-DPs klären -
@homoran
Das einzige offene Problem ist jetzt, dass der getEnabledDPs (history) die DPs nicht einfängt, wennwrite vom DP:false
ist.
Gibt es sonst noch Probleme? -
@mcu sagte in ehemalige Historydaten finden:
Gibt es sonst noch Probleme?
zumindest keine offensichtlichen!
mit den Alias muss ich nochmal drüber schlafen. Deine Idee nur die AliasID als enabled zu nehmen kann ich noch nicht so recht nachvollziehen. schließlich ist der neue Datenpunkt ja wirklich enabled.
-
@homoran Der alte ist DUTY_CYCLE und der neue ist 43579.
Der alte hat einen aliasID und der neue nicht. Somit würde nur noch der neue im enabledDPs-Array stehen, der einmal über den alias erkannt wird und einmal als eigenständiger enabled DP.
history schreibt aber nur in den Neuen (43579). -
@mcu das kann aber nicht sein. Kein Code an den ich mich erinnere in History achtet auf das write flag.
Wenn in den custom Settings dercstate forget History an ist dann sollte erneut adapterstart gelistet sein dancer geloggt wird und dann enthält auch getEnabled den
Wenn man in den History settings einen Alia’s angegeben hat kann es vllt nur sein das diese alias id in getEnabled gelistet ist anstelle vom echten state??
-
@mcu sagte in ehemalige Historydaten finden:
Der alte ist DUTY_CYCLE und der neue ist 43579.
nein umgekehrt!
hoffe ich doch mich richtig zu erinnern.
43579 heisst groundplane, das war ein umgebauter LAN-Configadapter mit externer Groundplane. Der DUTY CYCKE müsste Das LAN-Gateway sein, das an die Stelle des alten Config Adapter gekommen ist -
@apollon77 sagte in ehemalige Historydaten finden:
state forget History
Wo ist der?
Adapter-Instanz:
customSettings:
das diese alias id in getEnabled gelistet ist anstelle vom echten state
Da kommt schon der echte, was ja auch richtig ist.
Nur warum hat er den DP erst mit write:true gefunden?
-
@mcu Mist Handy typo. „State für History an ist“. Was meinst du mit „erst gefunden wenn write true ist“?
-
@apollon77 Im Objekt stand: (suehe oben)
{ "_id": "hm-rega.0.KEQ1065589.0.DUTY_CYCLE", "type": "state", "common": { "name": "hm-rega.0.KEQ1065589.0.DUTY_CYCLE", "type": "number", "read": true, "write": false, "role": "value",
write:false
erst als er es umgestellt hat aufwrite:true
wurde der DP gefundenaliasSuche
function listHistoryDPsWithaliasId(adp){ let arr =[]; sendTo(adp, 'getEnabledDPs', {}, function (result) { let count = 0; for ( let dp in result){ let dpHistoryAlias = getObject(dp).common.custom[adp].aliasId; if (dpHistoryAlias != '' && dpHistoryAlias != undefined){ arr.push({'dpId':dp,'aliasId':dpHistoryAlias}); count++; } } log('Anzahl der aktiv geloggten DPs mit aliasId: '+count); // setStateAsync(findOldDPs_Enabled,JSON.stringify(arr),false); //log(JSON.stringify(arr)); setState(findoldDPs_withAliasId,JSON.stringify(arr),false); }); }