NEWS
Fragen / Antworten rund um die neue Alias Funktion
-
-
@Blackmike Klar geht Deutsch auch
-
@apollon77 thnx,.. Done
-
Hi zusammen,
ginge sowas mit der Alias-Funktion auch:
{ "_id": "alias.0.Network.Devices.Server.home.MemoryLoad", "type": "state", "common": { "name": "Server home Memory Usage", "role": "", "type": "number", "read": true, "write": false, "desc": "Server home Memory Usage", "min": 0, "max": 100, "def": 0, "unit": "%", "alias": { "id": "info.0.sysinfo.memory.info.active", "read": "val / getState('info.0.sysinfo.memory.info.total').val * 100" } }, "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1577562127481, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
Bekomme im Log einen Fehler hierzu:
(8123) Invalid read function for undefined: val / getState('info.0.sysinfo.memory.info.total').val * 100 => ReferenceError: getState is not defined
Kann man überhaupt andere Felder zur Berechnung referenzieren ?
Vielen Dank und viele Grüße
Ralf
-
@AggroRalf sagte:
"read": "val / getState('info.0.sysinfo.memory.info.total').val * 100"
In common.alias.read kann nur natives Javascript verwendet werden, keine ioBroker-Erweiterungen.
-
@AggroRalf Mach doch mal ein Feature Request dazu im js.controller GitHub
-
Hi @apollon77 ,
hoffe es reicht so:
https://github.com/ioBroker/ioBroker.js-controller/issues/580
Gruss Ralf
-
Hallo, vielleicht weiß ja hier jemand ob ich doch was falsch mache.
Habe jetzt schon an mehreren Stellen gefragt.
Es geht darum, dass bei mir die Selektoren nicht im Verzeichnis alias funktionieren.
https://github.com/ioBroker/ioBroker.javascript/issues/468 -
@CruziX sagte in:
Selektoren nicht im Verzeichnis alias funktionieren.
Hast Du nach dem Erzeugen der Alias-Datenpunkte mal die Javascript-Instanz neu gestartet ? Oder sind die Datenpunkte per Script erstellt ?
EDIT: Bei mir (Javascript 4.3.4) werden alle Alias-DP gefunden.
-
@paul53 Ich erzeuge alle DPs in alias in einem Skript. Das ganze System wurde in der Zwischenzeit mehrfach neugestartet.
Installiert ist die Script Engine mit 4.1.12, die anderen Daten sind in einem Screenshot in dem Ticket zu sehen.
hab es jetzt wie du mit alias.0.* versucht und gleiches Ergebnis, ich bekomme nur 2 States ausgegeben -
@CruziX sagte:
Installiert ist die Script Engine mit 4.1.12,
Das ist das Problem, denn in der Kombination mit js-controller 2.x funktioniert der $Selector nicht. Installiere die Version 4.3.4 (latest) !
-
@paul53 Sorry für die dumme Frage, aber wie mache ich das?
iobroker upgrade javascript sagt mir, ich habe bereits die aktuelle version, wobei es ja auf der github page auch schon aktuellere gibt. -
@CruziX sagte:
wie mache ich das?
In den Haupteinstellungen des Host unter "Aktiver Verwahrungsort" latest auswählen. Anschließend speichern und im Reiter "Adapter" die Adapterinformationen aktualisieren.
-
@paul53
Danke, das hatte ich irgendwo mal gesehen, aber bei der Neuinstallation nicht mehr gemachtEdit: Hat wirklich geklappt... jetzt komm ich mir wirklich etw dumm vor, vielen Dank ^^
-
Hallo zusamme,
ich hab mir jetzt auch vorgenommen, die Alias-Funktion zu nutzen.
Leider finde ich unter Objekten keinen DP "Alias.0".
Muss ich den manuell anlegen?
UN diw egeht es dann weiter ?
Müssen alle DPs unter "Alias.0" per Skript angelegt werden, oder geht das irgendwie auch über den Admin-Adapter oder so?
Ich nutze aktuell:
Admin: 3.6.12
JS-Controller: 2.1.1
ScriptEngine: 4.1.12 -
@Kuddel wenn alias.0 noch leer ist dann rutscht das weiter runter. Schaue mal im Admin „unterhalb“ der ganzen Ordner. Anlegen entweder per Admin ode nutze den devices Adapter (glaube aktuell nur per GitHub)
-
@apollon77 leider finde ich den DP gar nicht:
-
@Kuddel hast du vllt einen weiteren Filter in de Spalte Type gesetzt? Vllt nur auf state? Nimm den mal raus
-
@apollon77 ah stimmt. das wars. peinlich ^^
Und hinzufügen von Alias DPs jetzt per Klick auf alias.,0 und dann auf das + ?
-
@Kuddel
Ja.