Ich vermute, dass ich Dein Problem nocht nicht verstanden habe, ich sehe nämlich keines.
Wenn Du immer den gleichen Wert senden willst, musst Du diesen Wert dem Item zuweisen (mit value oder eval oder ...). Dann musst Du mit enforce_updates: True sicherstelln, dass gleichbleibende Werte auch gesendet werden. Auslösen kannst Du das Senden indem Du mit eval_trigger ein ander s Item überwachst.
Alternativ könntest Du auch eine Lösung mit on_update bauen.
Deine interpretation zum value Attribut ist übrigens richtig. Es setzt nur den Initialwert. Um das zu verdeutlichen kann man in der item Definition das Attribut auch initial_value nennen.
Aber das ist nichts MQTT spezifisches, sondern das allgemeine Problem, wenn man ein Decice nur per Toggle Command ansteuern kann. Die eigentliche Herausforderung dabei ist, sicherzustellen, dass die Steuerung (hier shNG) und das Decice sich immer einig sind, ob das Device ON oder OFF ist.
Zum MQTT Plugin: Da Dein Problem ein allgemeines ist, halte ich es nicht für sinnvoll das im Plugin zu lösen.
Losgelöst davon wird das MQTT Plugin eine Generalüberholung erfahren, wenn die benötigten Komponenten für die Protokoll-Version 5 vorliegen. Dabei wird vermutlich der eigentliche Protokoll Teil in den shNG Core wandern. Das schafft dann die Möglichkeit Plugins zu schreiben, die MQTT einfach nutzen und ein eigenes darauf basierendes Protokoll (in der Payload) implementieren, um spezifische Devices zu unterstützen.
Wenn Du immer den gleichen Wert senden willst, musst Du diesen Wert dem Item zuweisen (mit value oder eval oder ...). Dann musst Du mit enforce_updates: True sicherstelln, dass gleichbleibende Werte auch gesendet werden. Auslösen kannst Du das Senden indem Du mit eval_trigger ein ander s Item überwachst.
Alternativ könntest Du auch eine Lösung mit on_update bauen.
Deine interpretation zum value Attribut ist übrigens richtig. Es setzt nur den Initialwert. Um das zu verdeutlichen kann man in der item Definition das Attribut auch initial_value nennen.
Aber das ist nichts MQTT spezifisches, sondern das allgemeine Problem, wenn man ein Decice nur per Toggle Command ansteuern kann. Die eigentliche Herausforderung dabei ist, sicherzustellen, dass die Steuerung (hier shNG) und das Decice sich immer einig sind, ob das Device ON oder OFF ist.
Zum MQTT Plugin: Da Dein Problem ein allgemeines ist, halte ich es nicht für sinnvoll das im Plugin zu lösen.
Losgelöst davon wird das MQTT Plugin eine Generalüberholung erfahren, wenn die benötigten Komponenten für die Protokoll-Version 5 vorliegen. Dabei wird vermutlich der eigentliche Protokoll Teil in den shNG Core wandern. Das schafft dann die Möglichkeit Plugins zu schreiben, die MQTT einfach nutzen und ein eigenes darauf basierendes Protokoll (in der Payload) implementieren, um spezifische Devices zu unterstützen.
Kommentar