Débutant dans Domoticz, je but sur un problème (insoluble pour moi)
Besoin :
J'ai 2 switchs Sonoff T1 qui doivent commander un même éclairage (remplacement de va-et-vient). Les switchs seront appelés S1 et S2, et la lampe ... bah ..... Lampe
S1 est relié à l'éclairage, et S2 non (interrupteur déporté).
Je souhait que les deux switchs changent d'état en même temps :
- si j'appuie sur S1 , S2 est en mode ON et Lampe s'allume
- si j'appuie sur S1 , S2 est en mode OFF et Lampe s'éteint
- si j'appuie sur S2, S1 passe en mode ON et Lampe s'allume
- si j'appuie sur S2, S1 passe en mode OFF et Lampe s'éteint
- si j'allume Lampe via l'interface, S1 et S2 passent en ON
- si j'éteins Lampe via l'interface, S1 et S2 passent en OFF
Problématique
Vous l'aurez compris, mon problème est d'ordre Maitre/Esclave. Si je défini S1 en Maitre, les changements manuels d'état de S2 ne l'affecte pas, et inversement.
Solution :
Le seul moyen que j'ai trouvé pour remédier à cela est de définir l'origine du changement d'état :
- Changement manuel, sur le switch
- Changement automatique via Domoticz
Le device subissant un changement manuel est défini comme maitre et l'enclave copie son état.
De plus, les 2 switches seraient réunis dans un même groupe Lampe, pour qu'ils puissent changer d'état via un évènement Domoticz. sa donnerait en pseudo code
Code : Tout sélectionner
SI ( S1.origineChangement == Manuel )
ALORS S2.valeur = S1.valeur
Lampe = S1.valeur
SI ( S2.origineChangement == Manuel )
ALORS S1.valeur = S2.valeur
Lampe = S2.valeurOr , le système de groupes ou Blocky ne semblent pas répondre a ce besoin. Il ne me reste donc a priori que les scripts pour avoir des instructions d'assez bas niveau
J'avais pensé à trouvé l'utilisateur à l'origine du changement d'état , qui s'affiche dans les logs, ou encore le topic de la commande MQTT (In = manuel, ou Out = Domoticz), mais je ne sais pas comment l'utiliser dans un script
Merci