Moin,
wie ist eigentlich die Priorität zwischen den SetExtensions und dem Attribut setList festgelegt?
Hintergrund meiner Frage:
In MQTT2_DEVICE ist SetExtensions immer aktiv. Nun habe ich mqtt-gesteuerte Leuchtmittel, die in eigenes on-for-timer kennen, das man per mqtt-payload aktivieren kann.
Welches "on-for-timer" wird ausgeführt, wenn ich das entsprechende "set <device> on-for-timer 60" ausführe?
Noch ein Stück weiter gedacht: könnte man die Verwendung von SetExtensions bei Gelegenheit optional gestalten, gerne mit default=on, aber abschaltbar? So wie das in einigen anderen Modulen auch schon verfügbar ist.
Soweit ich das verstanden habe, wird ein Kommando nur dann (am Ende der setFn()) an setextensions übergeben, wenn das nicht anders behandelt wurde.
Anders gesagt, geht ein echtes Kommando (z.B. für on-for-timer) in setList der Übergabe an setextensions vor.
Zitat von: Beta-User am 06 April 2024, 18:51:48Anders gesagt, geht ein echtes Kommando (z.B. für on-for-timer) in setList der Übergabe an setextensions vor.
Nun hatte ich Zeit zum Testen, es scheint in der Tat so zu sein.
Damit ist die erste Hälfte meiner Überlegungen erledigt, danke.
ZitatNoch ein Stück weiter gedacht: könnte man die Verwendung von SetExtensions bei Gelegenheit optional gestalten, gerne mit default=on, aber abschaltbar?
SetExtensions "schenkt" dem Modul auch noch attrTemplates, was bei MQTT2_DEVICE eine wichtige Rolle spielt.
D.h. SetExtensions abschaltbar zu machen wird vmtl. zusaetzlichen Aufwand im Forum bedeuten.
Ich werde ein useSetExtensions Attribut wie oben beschrieben einfuehren, wenn weitere Benutzer dafuer sind, oder ein Problem beschrieben wird, was mit diesem Attribut eleganter geloest werden kann.
Zitat von: rudolfkoenig am 08 April 2024, 11:14:49SetExtensions "schenkt" dem Modul auch noch attrTemplates, was bei MQTT2_DEVICE eine wichtige Rolle spielt.
Das spielt für mich keine wichtige (genauer: überhaupt keine) Rolle.
AttrTemplate hat es bis heute (trotz mehrfacher Versuche) noch nicht ein einziges Mal geschafft, ein MQTT2_DEVICE so zu konfigurieren, wie ich das gebraucht hätte. Und die nachträglichen Korrekturen sind meistens mehr Aufwand, als ein MQTT2_DEVICE manuell anzulegen. Deshalb habe ich AttrTemplate über das entsprechende globale Attribut installationsweit abgeschaltet.
Wenn es eine "Vermischung" zwischen SetExtensions und AttrTemplate gibt und dann auch noch damit argumentiert wird, finde ich das an dieser Stelle unschön.