NEWS
[Idee] Neue, gemischte Rolle für Dimmer/Switch in 1 Gerät?
-
Aufgrund meiner aktuellen Eskapaden mit Alexa und ZWave kam mir eine Idee:
ZWave-Dimmer (Rolladenaktoren, etc.) sind prinzipiell gleichzeitig Switches/Relais (SWITCH_MULTILEVEL). Ihr Wertebereich geht von 0 (aus) bis 99 (max) mit dem zusätzlichen Hilfswert 255, der das Gerät auf die letzten bekannten Helligkeit/Stufe > 0 stellt. Alles von 100 bis 254 wird ignoriert.
Dieser unterbrochene Wertebereich hat zur Folge, dass sie in ioBroker mit min=0 und max=255 eingebunden sind, und prozentuale Einstellungen (wie über Alexa) nur bedingt funktionieren.
Mein Vorschlag wäre daher eine neue Rolle für derartige Geräte: level.dimmerswitch (oder wie auch immer)
Dazu gehören die folgenden Objekteigenschaften:
min: Wie gehabt, minimaler Wert des Wertebereichs.
max: Wie gehabt, maximaler Wert des Wertebereichs.
on: Optionaler Wert, der "Anschalten" entspricht. Default = max.
off: Optionaler Wert, der "Ausschalten" entspricht. Default = min.
Für ZWave-Dimmer wäre das dann:
{ min: 0, max: 99, on: 255, off: 0 }
Im Cloud-Adapter könnte damit auch für "letzten bekannten Wert bei an" auf die on-Eigenschaft zurückgegriffen werden. Und Alexa und andere %-basierte Einstellungen könnten den gesamten Wertebereich abdecken.
Meinungen? @Bluefox @Apollon77
-
Was ist denn deine Erwartungen von den Rollen? Rollen sind (meines Wissens nach, Bluefox korrigiert mich bestimmt
) primär für visualisierung da … Rollen geben einem Gerät keine Logik. Und das bräuchte man hier, oder?!
-
währe auch dafür .. ich kann dein leiden verstehen..
und unter Rolle wird das hier gemeint..also keine Roll im klassischen sinne
1518_unbenannt.jpg -
Rollen geben einem Gerät keine Logik. Und das bräuchte man hier, oder?! `
Nein, aber eine Bedeutung und bestimmte vorgeschriebene Eigenschaften, die von Adaptern verstanden/vorausgesetzt werden können/sollen. ==> https://github.com/ioBroker/ioBroker/bl … A.md#stateSo sind States mit common.role "level.dimmer" üblicherweise vom common.type "number" und haben ein min und max, der von Widgets/Adaptern interpretiert wird.
Meine vorgeschlagene Rolle würde darauf basieren und zusätzlich noch on/off-Level als Info zur Verfügung stellen.
Btw, gibt es irgendwo eine Liste (außer dieser https://github.com/ioBroker/ioBroker/blob/master/doc/SCHEMA.md#state-commonrole), in der steht, welche common.role welche Bedeutung hat und welche weiteren Attribute vorhanden sein sollten/müssen? Bzw. (falls nicht) sollte man so eine mal erstellen und zentral bei der Doku für Adapter-Entwicklung verlinken?
Gerade solche Dinge wie der Cloud-Adapter/Alexa scheinen ja wesentlich darauf zu achten, um die Funktionen der States zu erkennen.
Mit TypeScript könnte ich das dann sogar in die Adapter-Vorlage übernehmen, sodass Entwickler gleich gewarnt werden, wenn was fehlt.