NEWS
[done] Alias-Device mit Konvertierungsfunktion schreibend
Einsteigerfragen
6
Beiträge
3
Kommentatoren
708
Aufrufe
2
Watching
-
Hallo,
kann mir bitte jemand helfen und sagen, wie die Konvertierungsfunktion beim Schreiben lauten muss?
Beim Ursprungsdatenpunkt wird bei "0" die Pumpe deaktiviert, bei "2" aktiviert. "1" wird nicht unterstützt.
So klappt es bei Lesend:

Schreibend habe ich leider keine Idee.
-
Hier nch die Definition vom Ursprungs DP:
{ "common": { "read": true, "write": true, "name": "Switch", "type": "number", "min": 0, "max": 2, "role": "level", "states": { "0": "OFF", "1": "LO", "2": "HI" }, "desc": "Geschwindigkeitsstufe der Pumpe", "def": 0, "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": true, "changesRelogInterval": "0", "changesMinDelta": "0", "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false, "debounce": "1000" } } }, "native": {}, "type": "state", "_id": "javascript.0.Datenpunkte.SwimSpa.0.Pumpen.P1.Switch", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1681122476325 }Hier vom Alias:
{ "_id": "alias.0.Wellis_WP.Pumpe_1.SET", "common": { "name": "SET", "role": "switch.light", "type": "number", "read": true, "write": true, "alias": { "id": "javascript.0.Datenpunkte.SwimSpa.0.Pumpen.P1.Switch", "read": "val == '2'", "write": "val == '2'" }, "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": true, "changesRelogInterval": "0", "changesMinDelta": 0, "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false, "debounce": 0 } } }, "native": {}, "type": "state", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1681123729501 } -
Hier nch die Definition vom Ursprungs DP:
{ "common": { "read": true, "write": true, "name": "Switch", "type": "number", "min": 0, "max": 2, "role": "level", "states": { "0": "OFF", "1": "LO", "2": "HI" }, "desc": "Geschwindigkeitsstufe der Pumpe", "def": 0, "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": true, "changesRelogInterval": "0", "changesMinDelta": "0", "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false, "debounce": "1000" } } }, "native": {}, "type": "state", "_id": "javascript.0.Datenpunkte.SwimSpa.0.Pumpen.P1.Switch", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1681122476325 }Hier vom Alias:
{ "_id": "alias.0.Wellis_WP.Pumpe_1.SET", "common": { "name": "SET", "role": "switch.light", "type": "number", "read": true, "write": true, "alias": { "id": "javascript.0.Datenpunkte.SwimSpa.0.Pumpen.P1.Switch", "read": "val == '2'", "write": "val == '2'" }, "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": true, "changesRelogInterval": "0", "changesMinDelta": 0, "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false, "debounce": 0 } } }, "native": {}, "type": "state", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1681123729501 } -
Hier nch die Definition vom Ursprungs DP:
{ "common": { "read": true, "write": true, "name": "Switch", "type": "number", "min": 0, "max": 2, "role": "level", "states": { "0": "OFF", "1": "LO", "2": "HI" }, "desc": "Geschwindigkeitsstufe der Pumpe", "def": 0, "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": true, "changesRelogInterval": "0", "changesMinDelta": "0", "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false, "debounce": "1000" } } }, "native": {}, "type": "state", "_id": "javascript.0.Datenpunkte.SwimSpa.0.Pumpen.P1.Switch", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1681122476325 }Hier vom Alias:
{ "_id": "alias.0.Wellis_WP.Pumpe_1.SET", "common": { "name": "SET", "role": "switch.light", "type": "number", "read": true, "write": true, "alias": { "id": "javascript.0.Datenpunkte.SwimSpa.0.Pumpen.P1.Switch", "read": "val == '2'", "write": "val == '2'" }, "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": true, "changesRelogInterval": "0", "changesMinDelta": 0, "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false, "debounce": 0 } } }, "native": {}, "type": "state", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1681123729501 } -
ich bin da nicht 100%ig fit, aber das hier müsste es tun:
val ? 2 : 0
Übersetzt in etwa: "Wenn val (=true), dann schreibe '2', sonst '0'
@marc-berg besten dank dafür.
-
Der Original-DP ist vom Typ "number", also
"read": "val == 2", "write": "val ? 2 : 0"Ändere den Alias-Typ in "boolean".