Verrouillage volets

Bonjour,

J’utilise les module X-VR.
Est il possible de verouiller un volet en particulier?

car qlq fois j’utilise mon portable en telecommande sur l’interface ipx et avec mes gros doigts de temps en temps j’en ouvre un autre…

merci

Bonjour @IPXNICO

Oui c’est possible en coupant le jus du volet en question à l’aide d’un contacteur
Puis un gestion par scénario.

Merci. Mais cela utile un relais bien precieux! Je cherche une solution logicielle plutot.

bonjour,

Peut-être en confirmant chaque action comme dans Imperihome ?
c’est possible avec un javascript en utilisant window.confirm().
C’est le plus simple, mais pas le plus confortable. :smiley:

<FORM>
<INPUT type=button value="Monter" onClick="ConfirmMonter()">
</FORM>
<SCRIPT language=javascript>
   function ConfirmMonter() {
       if (confirm("Confirmez l'action sur ce volet?")) { // Clic sur OK
           //-> placer ici l'action 'monter le VR';
       }
   }
</SCRIPT>

cdt

1 « J'aime »

2ème méthode :slight_smile:un checkbox qui conditionne tout le widget

un verrou est activé par défaut. il faut le désactiver pour rendre opérationnel chaque élément du formulaire.

petit exemple :slight_smile:

<html>
  <script>
    function act_desact() {
      if (verrou.checked) {
        monter1.disabled = descendre1.disabled = true;
      } else {
        monter1.disabled = descendre1.disabled = false;
      }
    } 
  </script>

  <form>
    <input type=checkbox id="verrou" onchange="act_desact();" checked>Verrou<br>
    <input type=button id="monter1" onclick="alert('Montée ok');" disabled=true value="Monter">
    <input type=button id="descendre1" onclick="alert('Descente ok');" disabled=true value="Descendre">
  </form>
</html>
1 « J'aime »

pour aller plus loin, si je reprends le code de @Teebex (que je ne peux pas tester n’ayant pas d’IPX)

on peut ajouter des petits cadenas qui changent de couleur quand on les clique, au dessus de chaque volet.
Rouge les commandes ne fonctionnent pas,
Vert pour déverrouiller les commandes.
Les commandes sont initialement verrouilées.

Ainsi, en début de script :


Var s='<span id="sec1" class="glyphicons glyphicons-lock" style="width:25%;margin-left:40px;font-size:20px;color:red" onClick="(function(elmt){elmt.style.color = (elmt.style.color == 'red') ? 'green' : 'red'; return false;})(this);">glyphicons-lock</span>' +
<span id="sec2" class="glyphicons glyphicons-lock" style="width:25%;margin-left:40px;font-size:20px;color:red" onClick="(function(elmt){elmt.style.color = (elmt.style.color == 'red') ? 'green' : 'red'; return false;})(this);">glyphicon-lock</span>' +
<span id="sec3" class="glyphicons glyphicons-lock" style="width:25%;margin-left:40px;font-size:20px;color:red" onClick="(function(elmt){elmt.style.color = (elmt.style.color == 'red') ? 'green' : 'red'; return false;})(this);">glyphicon-lock</span>' +
<span id="sec4" class="glyphicons glyphicons-lock" style="width:25%;margin-left:40px;font-size:20px;color:red" onClick="(function(elmt){elmt.style.color = (elmt.style.color == 'red') ? 'green' : 'red'; return false;})(this);"">glyphicon-lock</span>'

puis on conditionne les actions des boutons sur la couleur du cadenas correspondant au volet :
exemple avec le bouton up

s = s + '<div style="height:40px;"></div>' +
        '<span class="police-arrow-up" style="width:25%;margin-left:20px;font-size:20px" onclick="(function(){if (sec1.style.color=="green"){newAJAXCommand(' + "'io.cgi?rly=0'" + ');})();"></span>' +
        '<span class="police-arrow-up" style="width:25%;margin-left:40px;font-size:20px" onclick="(function(){if (sec2.style.color=="green"){newAJAXCommand(' + "'io.cgi?rly=2'" + ');})();"></span>' +
        '<span class="police-arrow-up" style="width:25%;margin-left:40px;font-size:20px" onclick="(function(){if (sec3.style.color=="green"){newAJAXCommand(' + "'io.cgi?vout=4'" + ');})();"></span>' +
        '<span class="police-arrow-up" style="width:25%;margin-left:40px;font-size:20px" onclick="(function(){if (sec4.style.color=="green"){newAJAXCommand(' + "'io.cgi?vout=54'" + ');})();"></span>';

Puis conditionner les autres éléments du widget.

j’espère ne pas avoir fait de fautes de frappes, ne pouvant pas tester ce script.

1 « J'aime »

je vous remercie pour vos contributions, cependant vos lignes de codes me font tourner la tete car je n’y connais rien…
je pensais une solutions a base de sortie virtuelle ou autres, mais la…