Widget Push url pour piloter un module X4VR

Bonjour tout le monde,
Ayant parcouru beaucoup de post je n’arrive cependant toujours pas à faire un simple push afin de monter ou descendre mes volets roulants.
J’ai des X4VR pour piloter mes volets que je commande avec le widget volet roulant depuis mon dashboard.
Néanmoins j’aimerais également ajouter un dashboard avec une vue par pièce et donc avoir pour un seul volet un bouton montée et descente.
J’ai trouvé les commandes URL d’ouverture et fermeture des volets (qui fonctionne très bien) mais je n’arrive pas à les intégrer dans un widget push URL.
Merci par avance de vos lumières.

Pour rappel pour les personnes qui auraient cherchées comme moi les URL
Ouverture volet 1 sur le X4VR 1
http://XXX.XXX.X.XX/user/api.cgi?Set4VR=1&VrNum=1&VrCmd=1

Fermeture volet 1 sur le X4VR 1
http://XXX.XXX.X.XX/user/api.cgi?Set4VR=1&VrNum=1&VrCmd=2

1 « J'aime »

Je viens de tester ça fonctionne comme ça. (voir screenshot)
Visiblement ça ne fonctionne qu’avec l’IP distante je ne sais pas si c’est normal…
@GCE

bonjour,
@sebyldino a raison
l’IPX ne peut pas s’auto notifier (à cause des limitations Cross Domain) Si vous voulez le faire malgré tout, l’IP distante est obligatoire (il faudra donc une redirection de port sur le routeur)

cdt

Bonsoir,
Merci à vous deux pour ces retours complets. Néanmoins n’ayant pas prévu d’ouvrir pour le moment un accès distant à mon IPX j’arrive dans une impasse. Il me reste plus à attendre une éventuelle évolution des widgets volets afin de pouvoir sélectionner le nombre de volets actifs ainsi que les numéros

avez-vous regardé le sujet suivant ?

1 « J'aime »

Bonsoir fgtoul, merci pour le lien sur le post, je vais regarder attentivement.

Bonsoir,
Après avoir lu ce post et d’autre sur le web_relay_board je viens de faire un widget sans prétention mais qui répond à mes attentes.

image

Bonsoir,

Les extraits de codes sont toujours les bienvenus
:slight_smile:
Cdt

Aucun problème. Ci-dessous sans aucune prétention

J’ai essayé de copier coller le code en entourant avec « ` » que j’avais vu dans un autre post mais je n’y arrive pas.

Alternativement, vous pouvez selectionner votre code et cliquer sur l’icone <\> dans la barre d’outil du composeur :wink:

Merci!

<div class="sub-section sub-section-height-2" data-bind="css: 'sub-section-height-' + height()">
	<div class="widget" data-bind="widget: true, css:{fillsize:fillSize}">
		<h2 class="section-title"></h2>
		<div class="indicator-vr vr1" style=" margin-left: 94px">
			<div class="indicator-vrFond" id="vrFond1" style="height: 0%;"></div>
		</div>
        <span class="police-arrow-up" style="width:90px;margin-left:20px;font-size:20px" onclick="newAJAXCommand('api.cgi?Set4VR=1&amp;VrNum=2&amp;VrCmd=1');"></span>
		<br style="margin:7px;">
        <span class="police-stop" style="width:90px;margin-left:20px;font-size:20px" onclick="newAJAXCommand('api.cgi?Set4VR=1&amp;VrNum=2&amp;VrCmd=0');"></span>
		<br style="margin:10px;">
		<span class="police-arrow-down" style="width:90px;margin-left:20px;font-size:20px" onclick="newAJAXCommand('api.cgi?Set4VR=1&amp;VrNum=2&amp;VrCmd=2');"></span>
	</div>
    <div class="sub-section-tools">
		<ul class="board-toolbar"></ul>
    </div>
</div>
2 « J'aime »

Je pose ici ma question car plutôt proche de celle initiale…
Je cherche à faire remonter l’état via push hors dans les scenarios je n’y parviens pas…
Quelqu’un aurait il une idée ?

bonjour,
ici, il était plutôt question d’un Widget.
vous avez déjà créé un sujet avec cette même question.
Si vous n’avez pas eu de réponse , c’est que la communauté n’en a pas trouvé pour le moment.:wink:

cdt

@fgtoul merci de m’avoir répondu, mais est ce une limitation technique ?

désolé, je ne sais pas…sinon j’aurais apporté une réponse à votre sujet précédent :slight_smile:

Bonjour,

En mettant en oeuvre mon widget dans certains de mes dashboards je me suis aperçu d’un comportement bizarre car en effet dans certains la mise à jour visuelle de l’état d’ouverture/fermeture ne se fait pas.

Après quelques recherches dans le code je vous fais part de ma découverte.
Le code de mise à jour des volets se trouve dans le fichier index1.htm ligne 8011 (voir ci-dessous).

// Met à jour le widget volet roulant (Rempli le volet de 0 à 100%)
if ($('#vrFond'+i).length) {
  $('#vrFond'+i).css("height", getXMLValue(xmlData, 'volet'+i)+'%');
}

Fonctionnant très bien il a cependant une restriction puisqu’il est contenu dans une boucle séquentielle qui met à jour le premier id de type vrFond trouvé. Et oui, vous me voyez venir, si plusieurs objets pointent sur le même volet alors la mise à jour s’effectue uniquement sur le premier widget rencontré. Pour vérifier mon hypothèse j’ai fait un test simple avec les widgets fournis à savoir un « contrôle de volets » et deux widgets d’états des volets.

image

Validant mon analyse du code, on voit que le premier widget du volet du salon est mis à jour et pas le deuxième.
Ainsi je ne peux donc pas faire cohabiter mon widget par pièce avec le widget global sur le même dashboard.

Pour information j’ai regarder un peu plus largement le code et il me semble que d’autres widgets sont dans le même cas (par exemple concernant le x-pwm) . Pour les curieux la boucle globale de mise à jour se trouve ligne 7916.

NB : J’ai poussé un peu plus mes investigations en mettant deux boutons identiques sur la même sortie et là aucun souci.
En effet un bout de code en plus semble faire le taf

// On test la précense d'un ou plusieurs boutons
elementArray = $(".btnV4vout"+i);
for(var c = 0; c < elementArray.length; c++)

Cdlt!

2 « J'aime »

Bonjour @Maxime_gce,

Voici un post qui pourrait vous intéresser . :slight_smile: