NEWS
Test Adapter Devices 0.3.x
-
@apollon77 said in Test Adapter Devices 0.3.x:
@martinschm es ist wie linkeddevices nur das es die aliases nutzt.
Ok, noch besser
Wollte die Aliase schon nutzen, hab mich nur zurück gehalten, da das Anlegen per Skript etwas mühsam erschien. LinkedDevices wollte ich nicht nutzen, da ich es besser finde die vom System bereit gestellten Mechanismen zu verwenden als parallel neue aufzubauen.Schade, das man linkedDevices nicht "einfach" umbiegen kann.
-
@apollon77 : Ich hab mir mal den Adapter installiert, aktuell noch die aus dem latest repository.
Kann man da links wo root steht auch noch weitere Unterverzeichnisse anlegen?
-
@martinschm Einfach Punkte im Namen nutzen
-
Hi,
ich habe grade mal ein wenig weiter getestet.
Was ich beim Anlegen der Geräte noch nicht verstanden habe, wofür *SET und dann ACTUAL ist.Bei einem Thermostat könnte es die aktuelle Temperatur und dann die "Wunsch"temperatur sein. Aber bei einer Lampe oder Jalousie ?
Das Feld LowBat ist als true/false gedacht, oder?
Wenn mein Sensor einen Volt Wert ausgibt, kann ich den dort nicht unterbringen,oder?Und wofür ist das Feld Maintenance?
ciao
Martin -
@martinschm SET/ACTUAL machen bei steuerbaren Geräten Sinn wenn eine Steueraktion ggf länger dauert o.ä. oder wie bei einem Thermostat wo eine gemessene temperatur hat etwas anderes ist als eine die man als Ziel einstellt. Alles wären so Dinge.
Auch bei einer Jalousie könnte man (weil ja die aktion etwas dauert) das trennen. ACTUAL ist der aktuelle Wert. SET der Zielwert. ACTUAL wird dann erst nach der erfolgten Fahrt aktualisiert.
LowBat ist eher als Boolean gedacht, ja einen Volt Wert würde ich dort nicht reinschreiben, aber mittelen read logik kannst Du ja eine grenze definieren und true setzen wenn dein Wert <3V oder so ist.
Maintenance bedeutet das das Gerät irgendetwas braucht (Batteriewechsel, Störung o.ä.)
-
wenn ich mir einen Alias anlegen möchte, erhalte ich folgende Warnungen, mache ich da etwas falsch, oder stimmt da etwas nicht?
admin.0 2020-05-05 00:33:27.145 warn (989) This object will not be created in future versions. Please report this to the developer. admin.0 2020-05-05 00:33:27.145 warn (989) Object alias.0.Zaehler.Abwasser.ACTUAL is invalid: obj.common.type has an invalid value (state) but has to be one of number, string, boolean, array, object, mixed, file, json admin.0 2020-05-05 00:29:49.974 warn (989) This object will not be created in future versions. Please report this to the developer. admin.0 2020-05-05 00:29:49.972 warn (989) Object alias.0.Zaehler.Abwasser.ACTUAL is invalid: obj.common.type has an invalid value (state) but has to be one of number, string, boolean, array, object, mixed, file, json iogo.0 2020-05-05 00:28:54.361 info (1282) database initialized with 104 state values iogo.0 2020-05-05 00:28:54.220 info (1282) database initialized with 104 state values iogo.0 2020-05-05 00:28:47.719 info (1282) uploading state iogo.0 2020-05-05 00:28:47.696 info (1282) uploading state influxdb.0 2020-05-05 00:28:47.652 warn (1233) Alias alias.0.Zaehler.Abwasser.ACTUAL has no target 12 influxdb.2 2020-05-05 00:28:47.664 warn (2240) Alias alias.0.Zaehler.Abwasser.ACTUAL has no target 12 javascript.0 2020-05-05 00:28:47.654 warn (1700) Alias alias.0.Zaehler.Abwasser.ACTUAL has no target 12 iogo.0 2020-05-05 00:28:47.658 warn (1282) Alias alias.0.Zaehler.Abwasser.ACTUAL has no target 12 javascript.1 2020-05-05 00:28:47.655 warn (1707) Alias alias.0.Zaehler.Abwasser.ACTUAL has no target 12 admin.0 2020-05-05 00:28:47.628 warn (989) This object will not be created in future versions. Please report this to the developer. admin.0 2020-05-05 00:28:47.624 warn (989) Object alias.0.Zaehler.Abwasser.ACTUAL is invalid: obj.common.type has an invalid value (state) but has to be one of number, string, boolean, array, object, mixed, file, json influxdb.2 2020-05-05 00:28:47.346 warn (2240) Alias alias.0.Zaehler.Abwasser has no target 12 iogo.0 2020-05-05 00:28:47.355 warn (1282) Alias alias.0.Zaehler.Abwasser has no target 12 javascript.1 2020-05-05 00:28:47.348 warn (1707) Alias alias.0.Zaehler.Abwasser has no target 12 javascript.0 2020-05-05 00:28:47.349 warn (1700) Alias alias.0.Zaehler.Abwasser has no target 12 influxdb.0 2020-05-05 00:28:47.342 warn (1233) Alias alias.0.Zaehler.Abwasser has no target 12
Unit habe ich nachträglich eingetragen, role hab ich geändert von "state" auf "value"
die Raw vom Original
nächste Frage, wenn ich diesen Alias wieder lösche
kommen sämtliche Warnmeldungen im LOG
-
@crunchip Der eine Teil der meldungen kam wegen dem falschen typ (state anstelle einem datentyp). Der andere teil das auch "Stukturobjekte" Fehlermekdungen werden wird in der nächsten Controller Version gefixt sein. Der andere Fehler auch Danke!
-
@apollon77 said in Test Adapter Devices 0.3.x:
LowBat ist eher als Boolean gedacht, ja einen Volt Wert würde ich dort nicht reinschreiben, aber mittelen read logik kannst Du ja eine grenze definieren und true setzen wenn dein Wert <3V oder so ist.
Verzeih mir meine Unwissenheit, aber was ist den read logik ?
-
@martinschm
Man kann dem alias sagen er soll die Daten noch manipulieren, bevor er sie in den Alias State schreibt (read logik) oder aus dem alias state in den original state (write logik). Soweit ich weiß geht das bisher nur über die RAW Ansicht des Objekts. Dort dann sowas eintragen:"common": { "name": "Buero batteryWarning", "role": "indicator.lowbat", "type": "boolean", "read": true, "write": false, "smartName": false, "alias": { "id": "zigbee.0.00158d0003f3cea3.battery", "read": "val < 20" },
Also wichtig die Zeile "read". Hier wird aus einer Batterie % Anzeige eine Batteriewarnung, wenn die Batterie unter 20% fällt. Damit kann man relativ lustige Sachen machen. "val" ist dabei in read der Wert des target state (also hier zigbee.0.00158d0003f3cea3.battery) und bei write der Wert des alias state.
-
Hallo zusammen,
mein Alias.0 Ordner ist verschwunden. Mögliches versehentliches löschen nicht auszuschließenWas kann ich tun?
-
- ein aktuelles Backup anlegen
- ein altes Backup zurückspielen
- die Objekte aus dem Knoten alias.0 sichern (exportieren)
- das zuvor angelegte Backup zurückspielen
- die alias.0 Objekte importieren
-
@BBTown
Danke für die Rückmeldung.Muss ich das große Rad auch drehen, wenn ich keinen Bedarf an den alten Alias habe? Ich könnte die paar Alias auch flott händisch anlegen...
-
@muuulle sagte:
Ich könnte die paar Alias auch flott händisch anlegen...
Dann mache es.
const id = 'alias.0'; const obj = { type: 'meta', common: { name: 'Alias' }, native: {} }; if(!existsObject(id)) setObject(id, obj);
-
@paul53
Moin Paul,meine Programmierkenntnisse sind äußerst limitiert. Wo muss ich den Code einfügen?
-
-
@muuulle said in Test Adapter Devices 0.3.x:
Hallo zusammen,
mein Alias.0 Ordner ist verschwunden. Mögliches versehentliches löschen nicht auszuschließenWas kann ich tun?
Bist du sicher, dass er gelöscht wurde? Wenn keine Elemente darin sind, wird er nicht als "Ordner" angezeigt und landet im Admin in der Objekt-Ansicht ganz unten bei den States.
-
@paul53
Alles geklappt. Danke! -
@paul53 Ein "iobroker setup first" sollte auch reichen
-
@apollon77 sagte:
Ein "iobroker setup first" sollte auch reichen
Danke. Das hatte ich zwar vermutet, war mir aber nicht sicher.
-
@Garfonso said in Test Adapter Devices 0.3.x:
@martinschm
Man kann dem alias sagen er soll die Daten noch manipulieren, bevor er sie in den Alias State schreibt (read logik) oder aus dem alias state in den original state (write logik). Soweit ich weiß geht das bisher nur über die RAW Ansicht des Objekts. Dort dann sowas eintragen:"common": { "name": "Buero batteryWarning", "role": "indicator.lowbat", "type": "boolean", "read": true, "write": false, "smartName": false, "alias": { "id": "zigbee.0.00158d0003f3cea3.battery", "read": "val < 20" },
Also wichtig die Zeile "read". Hier wird aus einer Batterie % Anzeige eine Batteriewarnung, wenn die Batterie unter 20% fällt. Damit kann man relativ lustige Sachen machen. "val" ist dabei in read der Wert des target state (also hier zigbee.0.00158d0003f3cea3.battery) und bei write der Wert des alias state.
Moin @Garfonso
LOWBAT hat mit deiner Anleitung super funktioniert.
Meine aqara Sensoren kennen nur reachable. Kann man den Wert invertieren, dass ich UNREACH richtig füttern kann?