NEWS
Fragen / Antworten rund um die neue Alias Funktion
-
@kuchn sagte: passiert leider gar nichts
Bei mir funktioniert es:
-
Eine Frage: Der VW Adapter setzt zum Teil für numerische Werte "Null". Das scheint ein Bug zu sein. Ich möchte deshalb einen Alias definieren, der "Null" und "undefined" im ursprünglichen Datenpunkt ignoriert.
Kann mir da jemand helfen. Ich habe mal einen Vorschlag gemacht, aber ich bin mir nicht sicher, ob der OK.
Und einfach ausprobieren möchte ich nicht, weil ich diese Alias Burst Errors habe und nicht Fehler provozieren möchte durch falsche Syntax.{ "common": { "name": "Odometer", "type": "number", "unit": "", "alias": { "id": "vw-connect.0.TMBJC7NYXMF025168.status.vehicle-status.remote.mileageInKm", "read": "if (val <> Null) val" }, "role": "indicator" }, "native": {}, "type": "state", "from": "system.adapter.javascript.0", "user": "system.user.admin", "ts": 1690006032176, "_id": "alias.0.Auto.Mileage", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
-
@marty56 sagte: Alias definieren, der "Null" und "undefined" im ursprünglichen Datenpunkt ignoriert.
Das kann ein Alias nicht, denn er wird immer aktualisiert, wenn der Original-DP aktualisiert wird. Wenn nicht aktualisiert werden soll, benötigt man ein Skript.
EDIT: Sollen null oder undefined durch 0 ersetzt werden, ist die richtige Syntax:
"read": "val == null ? 0 : val"
-
@paul53 Danke
-
Hey zusammen,
ich brauche experten Hilfe ich stehe auf dem Schlauch und bekomme es einfach nicht hin...
Ich würde gern über ein Alias von String werten in eine Boolean wandeln wollen.
Konkret von den Strings:
OPEN = true
CLOSED = falsekann mir jemand sagen wie die " Alias Funktion" dafür aussieht..
Vielen Dank
-
-
Scotty89 vor 16 Minuten
Hey zusammen,ich brauche experten Hilfe ich stehe auf dem Schlauch und bekomme es einfach nicht hin...
Ich würde gern über ein Alias von String werten in eine Boolean wandeln wollen.
Konkret von den Strings:
OPEN = true
CLOSED = falsekann mir jemand sagen wie die " Alias Funktion" dafür aussieht..
Vielen Dank
-
Hallo liebe community, ich bin noch recht am Anfang der Möglichkeiten des IOB.
Fange gerade an mit alias zu arbeiten.
Ich habe von meiner PV nur einen Datenpunkt Batterieleistung für Laden und Entladen.
Habe mit mittels blocky schonmal einen DP "Laden" mit "Laden PV", Laden Netz" und "Entladen" erstellt.
Jetzt wollte ich mir je einen Alias auf den DP "Batterieleistung" erstellen und in Abhängigkeit vom DP "Laden" mit val oder mit 0 befüllen.
Mein Versuch mit:Konverter beim Lesen
"0_userdata.0.Datenpunkt.Laden" == "Laden PV" ? val : 0Liefert leider nur "0"
Ist das etwas überhaupt möglich?
Erahnen zwar schon die Antwort aber frage trotzdem mal die Fachleute -
@mcbeath sagte: Ist das etwas überhaupt möglich?
Nein, man kann in einem Alias nur einen Datenpunkt auswerten. Für alles andere benötigt man ein Skript.
-
@paul53 said in Fragen / Antworten rund um die neue Alias Funktion:
@mcbeath sagte: Ist das etwas überhaupt möglich?
Nein, man kann in einem Alias nur einen Datenpunkt auswerten. Für alles andere benötigt man ein Skript.
Danke @paul53, das war zwar nicht die Antwort, die ich erhofft aber erwartet hatte.
-
@mcbeath sagte in Fragen / Antworten rund um die neue Alias Funktion:
Konverter beim Lesen
"0_userdata.0.Datenpunkt.Laden" == "Laden PV" ? val : 0Aus 0_userdata.0.Datenpunkt.Laden einen Alias erstellen, dass sollte gehen.
Im Alias dann val == "Laden PV" -
@uwerlp sagte in Fragen / Antworten rund um die neue Alias Funktion:
@mcbeath sagte in Fragen / Antworten rund um die neue Alias Funktion:
Konverter beim Lesen
"0_userdata.0.Datenpunkt.Laden" == "Laden PV" ? val : 0Aus 0_userdata.0.Datenpunkt.Laden einen Alias erstellen, dass sollte gehen.
Im Alias dann val == "Laden PV"Sorry ist so unvollständig
Alias Read-Function val == "Laden PV"
Gibt dann TRUE / WAHR zurückAlias Write-Function val == true ? "Laden PV" : "Nicht Laden"
Wird der Alias auf TRUE gesetzt wird USERDATA auf "Laden PV" gesetzt wenn Alias auf FALSE dann wird USERDATA auf "Nicht Laden" gesetzt.Ich hoffe so ist nun vollständig und verständlich
-
@uwerlp said in Fragen / Antworten rund um die neue Alias Funktion:
@uwerlp sagte in Fragen / Antworten rund um die neue Alias Funktion:
@mcbeath sagte in Fragen / Antworten rund um die neue Alias Funktion:
Konverter beim Lesen
"0_userdata.0.Datenpunkt.Laden" == "Laden PV" ? val : 0Aus 0_userdata.0.Datenpunkt.Laden einen Alias erstellen, dass sollte gehen.
Im Alias dann val == "Laden PV"Sorry ist so unvollständig
Alias Read-Function val == "Laden PV"
Gibt dann TRUE / WAHR zurückAlias Write-Function val == true ? "Laden PV" : "Nicht Laden"
Wird der Alias auf TRUE gesetzt wird USERDATA auf "Laden PV" gesetzt wenn Alias auf FALSE dann wird USERDATA auf "Nicht Laden" gesetzt.Ich hoffe so ist nun vollständig und verständlich
@UweRLP
Danke für deine Unterstützung, aber das war nicht ganz das, worum es ging.
Der Alias des DP "Ladeleistung" val z.b. 3000W sollte in Abhängigkeit von "0_userdata.0.Datenpunkt.Laden" ,welcher den Wert "Laden PV" oder "Entladen" enthält, den alias mal mit "val" oder mit "0" befüllen.
Das hätte dann aus 3000W - Laden PV auf 2 untersiedljche Alias- Laden = 3000W
- Entladen = 0W
Und aus 3000W - Entladen
- Laden = 0W
- Entladen = 3000W
Gezaubert.
Ich hoffe mein Vorhaben ist verständlich.
-
@McBeath
"Ist 0_userdata.0.Datenpunkt.Laden = Laden PV dann Ladeleistung = 3000W"
"Ist 0_userdata.0.Datenpunkt.Laden = Entladen dann Ladeleistung = 0W"So habe ich das jetzt verstanden, würde ich mit einem Blockly/Script lösen.
-
@uwerlp
Genau so habe ich es jetzt auch gelöst. -
Hallo, habe einen DP der true und false ausgibt. Kann ich durch anlegen eines alias erreichen das für true 1 und für false 0 im alias ausgegeben wird. Wenn ja, wie .. Danke
-
@fredje sagte: für true 1 und für false 0 im alias ausgegeben wird. Wenn ja, wie .. Danke
Beim Lesen?
val ? 1 : 0
-
@paul53 .. danke .. funktioniert
-
Ich hätte hier noch mal eine kurze Frage.
Habe einen Datenpunkt mit den Werten 0, 1, 2, 3.
Möchte aber nur jeweils 0 und 1 bzw 2 und 3 auswerten.
Habe auf diesen Datenpunkt mal zwei Alias angelegt
Und mit der konvertierfunktion folgendes eingetragenAlias1
Lesen val == 0 ? 1 : val == 1 ? 0 : val
Scheiben val == 1 ? 0 : val == 0 ? 1 : valAlias2
Lesen val == 3 ? 0 : val == 2 ? 1 : val
Schreiben val == 0 ? 3 : val == 1 ? 2 : valJetzt müsste ich nur noch wissen wie ich bei Alias1 die Werte 2 und 3
bzw. bei Alias2 die Werte 1 und 0 ignorieren kann?Der DP steuert einen Aktor 0 = Ch1 on, 1 = Ch1 off, 2 = Ch2 on, 3 = Ch2 off
Wäre toll wenn das möglich wäre
-
@mcbeath sagte: Werte 1 und 0 ignorieren kann?
Das ist nicht möglich. Dafür benötigt man ein Skript.