NEWS
Umbenennung von Werten in Objekten
-
Moin,
Ich suche mir seit Tagen die Finger wund und ich hoffe mir kann jemand helfen.In den Datenpunkten in den Objekten gibt mein Mähroboter beim mähen den Wert „OK_Cutting“ aus. Soweit so gut.
Diesen Wert möchte ich gerne umbenennen in zum Beispiel „mähen“
Sodass ich in meiner Visualisierung „mähen“ anzeigen lassen kann und nicht „ok_cutting“
Kann mir jemand helfen wie ich das erledigen kann?
-
@freesejann
Zeig mal die Objektdaten (JSON) zu diesem DP. -
@codierknecht wo finde ich denn die Objektdaten? Unter Objekt bearbeiten? Bei diesem Objekt werden halt mehrer Daten immer angezeigt, je nachdem was der Robbi gerade gemacht.
Würde das mit einem Blockly Cript funktioneren? "Wenn in diesem Objekt "OK_Cuttung" steht erstelle einen neuen Datenpunkt mit" mäht gerade" . "Wenn OK_Charching dann lädt gerade usw. ? -
@freesejann
Geht's dir um
-) die Object-ID --> kann nicht umbenannt werden
-) den Object-Namen --> solltest du im admin ändern können, kann aber sein, dass der Adapter den Wert zurückändert
-) den Wert (= Inhalt) eines Text-Zustands --> den schreibt der Adapter rein, den kannst du nicht ändern -
@freesejann sagte in Umbenennung von Werten in Objekten:
Würde das mit einem Blockly Cript funktioneren? "Wenn in diesem Objekt "OK_Cuttung" steht erstelle einen neuen Datenpunkt mit" mäht gerade" . "Wenn OK_Charching dann lädt gerade usw. ?
Da steht vermutlich nicht wirklich ein Text drin, sondern ein numerischer Wert.
Im Objektbaum den entsprechenden Datenpunkt raussuchen und rechts auf den Stift klicken.
Dann die Seite "Objektdaten" hier zeigen.In der Vis kann man das dann mit einer ValueList darstellen/ändern.
-
Aus Interesse:
Welcher Adapter spielt da mit? -
{ "type": "state", "common": { "name": "activity_value", "type": "string", "role": "info.status", "read": true, "write": false, "custom": { "history.0": { "enabled": true, "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": false, "changesRelogInterval": 0, "changesMinDelta": 0, "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "retention": 31536000, "customRetentionDuration": 365, "maxLength": 10, "enableDebugLogs": false, "debounce": 0 } } }, "native": "{\"state\":{\"value\":\"OK\",\"timestamp\":\"2023-03-19T08:55:35.081+00:00\"},\"activity\":{\"value\":\"OK_CUTTING\",\"timestamp\":\"2023-03-19T08:55:35.081+00:00\"},\"operatingHours\":{\"value\":2875}}", "_id": "smartgarden.0.LOCATION_3aefedf6-2D62f0-2D4342-2D951a-2Da3f163509d92.DEVICE_4034f6af-2Dfffc-2D4371-2Da08f-2D27f0cecaeb97.SERVICE_MOWER_4034f6af-2Dfffc-2D4371-2Da08f-2D27f0cecaeb97.activity_value", "acl": { "object": 1636, "state": 1636, "file": 1632, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1679246937730 }
MOD-EDIT :Code in code-tags gesetzt!
-
@freesejann
Kannst Du das bitte in Code-Tags </> packen? So kann das kein Mensch lesen -
@freesejann ```
{ "type": "state", "common": { "name": "activity_value", "type": "string", "role": "info.status", "read": true, "write": false, "custom": { "history.0": { "enabled": true, "aliasId": "", "debounceTime": 0, "blockTime": 0, "changesOnly": false, "changesRelogInterval": 0, "changesMinDelta": 0, "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "retention": 31536000, "customRetentionDuration": 365, "maxLength": 10, "enableDebugLogs": false, "debounce": 0 } } }, "native": "{\"state\":{\"value\":\"OK\",\"timestamp\":\"2023-03-19T08:55:35.081+00:00\"},\"activity\":{\"value\":\"OK_CUTTING\",\"timestamp\":\"2023-03-19T08:55:35.081+00:00\"},\"operatingHours\":{\"value\":2875}}", "_id": "smartgarden.0.LOCATION_3aefedf6-2D62f0-2D4342-2D951a-2Da3f163509d92.DEVICE_4034f6af-2Dfffc-2D4371-2Da08f-2D27f0cecaeb97.SERVICE_MOWER_4034f6af-2Dfffc-2D4371-2Da08f-2D27f0cecaeb97.activity_value", "acl": { "object": 1636, "state": 1636, "file": 1632, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1679246937730 }
-
@mcm57 smartgarden ist das und ein Gardena Mähroboter
-
@mcm57
Ich nutze das Hub Panel für die Visualsierung und es soll dort halt nicht "PARKET_TIMER" stehen sondern halt eine passende Ausgabe in Deutsch zum Beispiel: Was macht Bruno (Roboter) gerade? Er wartet bis zu seinem nächsten Start.
Oder so.Paralell verschicke ich mir Änderungen im Status per Telegram aufs Händy, hier häte ich natürlich auch gerne treffende deutsche Wörter bzw. Sätze.
-
@freesejann dann erstell dir einen eigenen Datenpunkt in den du per Skript/blockly/node-red die Übersetzung der aktuellen Status reinschreibst.
Dann kannst du da mit allem was den Wert braucht zentral zugreifen -
@homoran sagte in Umbenennung von Werten in Objekten:
dann erstell dir einen eigenen Datenpunkt in den du per Skript/blockly/node-red die Übersetzung der aktuellen Status reinschreibst.
@FreeseJann
In etwa so:
-
@codierknecht ah cool das hilft auf jeden Fall aber wo finde ich denn den Baustein „setze Zielwert auf“
-
@freesejann
"zielwert" ist eine Variable.
Wenn Du eine Variable erstellst, erscheint "setze xxx auf" automatisch.Tipp: "Wert" verbirgt sich unter "Trigger" und heißt dort noch "Objekt ID".
-
@freesejann
Diesen Wert möchte ich gerne umbenennen in zum Beispiel „mähen“
Sodass ich in meiner Visualisierung „mähen“ anzeigen lassen kann und nicht „ok_cutting“Es geht um den Wert an sich?
Mach einen Alias auf den Datenpunkt und als Rückgabewert:
"read": "val==='ok_cutting' ? 'mähen' : val" -
{ "common": { "name": "Bruno", "desc": "Manuell erzeugt", "role": "state", "type": "json", "read": true, "write": true }, "type": "state", "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1680821412904, "_id": "0_userdata.0.Bruno", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
Ich habe das Script nun so gebastelt, bei meinem angelegten Datenpunkt in Objekten wird aber der neue Wert "Ist in der Ladestation" nicht angezeigt. Hast Du noch einen Tip für mich, wo ich nach dem Fehler suchen könnte?
-
@freesejann Du schickst einen String.
Also muss der type vom Objekt auchstring
sein. -
{ "common": { "name": "Bruno", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }, "type": "state", "native": {}, "_id": "0_userdata.0.Bruno.Bruno2", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1680822599885 }
leider passiert immer noch nichts
-
@freesejann
Bruno geändert in Bruno2?