Comme annoncé, ce forum est passé en lecture seule au 1er janvier 2020. Désormais nous vous invitons à vous rendre sur notre nouvelle page communauté :
Image

A très bientôt !

Utilisation d'un widget volet numérique

Réservé à l'utilisation et la création des objets virtuels dans JEEDOM
steve115
Timide
Messages : 13
Inscription : 27 juin 2018, 22:56

Utilisation d'un widget volet numérique

Message par steve115 » 14 mars 2019, 08:41

Bonjour,

et désolé d'avance pour ma question qui peut paraître évidente, mais voila je débute sur Jeedom et même en ayant lu plein de choses sur le paramétrage des widgets, je n'arrive pas à en faire fonctionner un.
Mon cas :

J'ai un virtuel pour la commande de volets SOMFY RTS via une Zibase. J'ai regardé les widgets possible et j'ai récupéré un widget de type numérique à trois possibilités ( 0 1 2 ) qui donne trois positions pour le volet.
Voila mon hic, le virtuel commande bien le volet, le cote visuel par contre et aléatoire, sur 8 volets j'en ai un en permanence représenté fermé et les autres ouvert alors que j'ai dupliqué le même virtuel.

Je joint une copie d'écran de mon virtuel.

Merci d'avance pour votre aide.

@+

Steve
Pièces jointes
Sans titre.png
Sans titre.png (52.17 Kio) Consulté 803 fois

winhex
Actif
Messages : 3799
Inscription : 23 janv. 2015, 01:41

Re: Utilisation d'un widget volet numérique

Message par winhex » 14 mars 2019, 23:32

bonjour c'est quoi le nom du widget ?

pour savoir si c'est une vieille version
fait une actualisation de ton navigateur

si c'est ok
ton widget est ton soucis

---
maintenant sur le principe
tu as à droite et a gauche / via la liste l'etat
hors à gauche tu n'as pas mis de valeur sous la commande
normalement on utilise la gauche seul

si tu souhaites utilisé la droite
met à gauche sur aucun

---
si c'est le widget voici une modification du code dont tu peux t'inspirer pour le passer en v3

Code : Tout sélectionner

<div style="min-width:80px;min-height:80px;" class="cmd #history# tooltips cmd-widget" data-type="info" data-subtype="numeric" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#">
    <center>
        <span class='cmdName' style="font-weight: bold;font-size : 12px;#hideCmdName#">#name_display#</span></br>
        <span class="iconCmd"></span>
    </center>
    <script>
	jeedom.cmd.update['#id#'] =function(_options){    
		$('.cmd[data-cmd_id=#id#]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
		if (_options.display_value == '1') {
			$('.cmd[data-cmd_id=#id#] .iconCmd').empty().append('<img src="plugins/widget/core/template/dashboard/cmd.info.numeric.Ematronic-Store/VoletsFermé.png" height=50 width=50>');
		}else if (_options.display_value == '0') {
			$('.cmd[data-cmd_id=#id#] .iconCmd').empty().append('<img src="plugins/widget/core/template/dashboard/cmd.info.numeric.Ematronic-Store/VoletsOuvert.png" height=50 width=50>');
		}else if (_options.display_value == '2') {
			$('.cmd[data-cmd_id=#id#] .iconCmd').empty().append('<img src="plugins/widget/core/template/dashboard/cmd.info.numeric.Ematronic-Store/VoletsEntreDeux.png" height=50 width=50>');
		}
	}       
          jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});     
          </script>
</div>

foxer37
Timide
Messages : 160
Inscription : 03 août 2014, 15:04
Localisation : Joué Les Tours 37

Re: Utilisation d'un widget volet numérique

Message par foxer37 » 15 mars 2019, 16:40

Remplace le code du Widget Ematronic par celui ci ( inspiré du travail de JAG ) :

Code : Tout sélectionner

<div style="padding:0;width:90px;min-height:62px;" class="cmd #history# tooltips cmd-widget" data-type="info" data-subtype="numeric" data-cmd_id="#id#" data-cmd_uid="#uid#" data-eqLogic_id="#eqLogic_id#" data-eqLogic_id="#eqLogic_id#" title="#collectDate#">
	<!-- Info Widget
		
	-->
	<div class="row">
		<div class="cmdName" id="cmdName#id#" style="font-weight: bold;font-size : 10px; #hideCmdName#;">#name_display#</div>
		<div class="iconCmd#uid#"></div>
      	<!-- Historique -->
      		<div style="#displayHistory# font-weight: bold;font-size : 10px;">
      			<span class="timeCmd#uid#"></span>
      		</div>
	</div>
	<script>
        jeedom.cmd.displayDuration('#valueDate#', $('.timeCmd#uid#'));
      	jeedom.cmd.update['#id#'] = function(_options){
              // Paramètrage du logo
  				// Valeur pour ON ou 1
      				var srcImglogoON	= ('#logoClose#'!='#'+'logoClose#') ? "#logoClose#" 	: "VoletsFermé";
  				// Valeur pour OFF ou 0
      				var srcImglogoOFF	= ('#logoOpen#'!='#'+'logoOpen#') ? "#logoOpen#" 	: "VoletsOuvert";
          		// Valeur pour Entre 2  ou  2
      				var srcImglogoErreur	= ('#logoErreur#'!='#'+'logoErreur#') 	? "#logoErreur#": "VoletsEntreDeux";
             // Paramètre "sizehw" : à déclarer en pixels - 80 maxi
      				var srcImgHeight 	= (is_numeric('#sizehw#')) ? parseFloat('#sizehw#') : 50;
      				var srcImgWidth		= (is_numeric('#sizehw#')) ? parseFloat('#sizehw#') : 60;
        	// Paramétrage des images
        			var srcImgURL 		= 'plugins/widget/core/template/dashboard/cmd.info.numeric.Ematronic-Store/';
        			var srcImgOn 		= srcImgURL + srcImglogoON +'.png'; 	// Pour Valeur = 1
        			var srcImgOff 		= srcImgURL + srcImglogoOFF +'.png';  	// Pour valeur = 0  
                  	var srcImgErreur	= srcImgURL + srcImglogoErreur +'.png'; // Pour valeur = 2  
			$(".iconCmd#uid#").empty();
			if (parseInt(_options.display_value) == 1) {
				$(".iconCmd#uid#").append('<img src="'+srcImgOn+'" style="height:' + srcImgHeight +'px;width:' + srcImgWidth +'px;">');
            } else if (parseInt(_options.display_value) == 0) {
				$(".iconCmd#uid#").append('<img src="'+srcImgOff+'" style="height:' + srcImgHeight +'px;width:' + srcImgWidth +'px;">');
			} else if (parseInt(_options.display_value) == 2) {
				$(".iconCmd#uid#").append('<img src="'+srcImgErreur+'" style="height:' + srcImgHeight +'px;width:' + srcImgWidth +'px;">');
			}
			$('.cmd[data-cmd_id=#id#]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate);
		}
      
		jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});
	</script>
</div>
Fonctionne chez moi avec la 3.3.17 .

winhex
Actif
Messages : 3799
Inscription : 23 janv. 2015, 01:41

Re: Utilisation d'un widget volet numérique

Message par winhex » 18 mars 2019, 20:14

je partage
ça concerne les volet ematronic et leurs spécificités
mais j'en ai un en wifi er j'ai fait en sorte qu'il se comporte de la même manière

0 ouvert
1 fermé
2 stop (entre ouvert complet et fermé)

comment faire un ajout au résumé global ou virtuel
(#[volet1]#!=1?1:0)+(..)

Code : Tout sélectionner

(#[Volet Roulant][VR Cuisine][etat]#!=1?1:0) + (#[Volet Roulant][VR S.A.M.][etat]#!=1?1:0) +(#[Volet Roulant][VR Salon][etat]#!=1?1:0)+(#[Volet Roulant][VR Adrien Nord][etat]#!=1?1:0)+(#[Volet Roulant][VR Adrien Ouest][etat]#!=1?1:0)
afin d'avoir le nombre de volet ouvert
le widget "jaune"

Code : Tout sélectionner

<div class="cmd #history# container-fluid tooltips cmd cmd-widget" data-type="info" data-subtype="numeric" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#">
<center>
   <span class="iconCmd#id#" style="font-size: 25px;margin-left: 3px;"></span>
     <span class="state#id#" style="font-family: 'Roboto-Regular';font-size: 15px;vertical-align: top;margin-left: 5px"></span> #unite#
<span style="text-align: left;font-weight: bold;font-size : 10px;#hideCmdName#">#name_display#</span></center>
  <script>
jeedom.cmd.update['#id#'] = function(_options){
$('.cmd[data-cmd_id=#id#]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
//
// $('.cmd[data-cmd_id=#id#] .state#id#').empty().append(_options.display_value);
 $('.cmd[data-cmd_id=#id#] .state#id#').empty().append(_options.display_value);

//  $(".state#id#").css('color', ''); 
  if (_options.display_value == 0 ) {
$(".state#id#").css('color', '#e6e6e6'); 
  $(".iconCmd#id#").empty().append('<i class="jeedom-volet-ferme" style="color:#e6e6e6;"</i>');  

}else if (_options.display_value >= 1 ) { 
  $(".state#id#").css('color', '#CDDC39');
   $(".iconCmd#id#").empty().append('<i class="jeedom-volet-ouvert" style="color:#CDDC39;"</i>');  
;
}
  //

}
jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});
</script>
</div>
Pièces jointes
Screenshot_20190318-201054_Chrome.jpg
Screenshot_20190318-201054_Chrome.jpg (73.29 Kio) Consulté 749 fois

steve115
Timide
Messages : 13
Inscription : 27 juin 2018, 22:56

Re: Utilisation d'un widget volet numérique

Message par steve115 » 22 mars 2019, 14:56

Bonjour à tous
désole pour la lenteur de réponse.
Effectivement je pense que ce n'est pas un problème du virtuel mais du widget.
Je viens de remarquer en plus la chose marrante : vers le bas l'image change en live pour montrer le volet fermé, le volet en position "stop" il faut effectuer un F5, mais le volet ouvert et bien rien de rien, même une mies à jour n'y fait rien.

je vais essayer de modifier le widget.

@+

Steve

Répondre

Revenir vers « [Plugin officiel] Virtuels »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 5 invités