Page 105 sur 148

Re: Custom page

Publié : 22 oct. 2016, 11:42
par papoo
Chris54220 a écrit :
papoo a écrit : la custom page reste affichée sur ton iphone en permanence pendant 10 jours? sans aucune interruption?
tu ne téléphone pas avec?
je souhaite l'afficher en permanence, pas la consulter de temps en temps
oui les et affichée en permanence sans aucune interruption
non je ne téléphone pas avec car ces mon vieux téléphone
je pense que le soucis viens du navigateur de mon ipad 1 qui ne doit pas être parfaitement compatible avec certaines fonctionnalités présentes dans le code de la custom page

Re: Custom page

Publié : 22 oct. 2016, 18:57
par Snorky
Bonsoir,

J'imagine que vil1driver a prévu une autre solution mais je n'ai pas trouvé comment afficher les UserVariables dans la page.

Pour ceux que ça peut intéresser.

Modifier frontpage.js juste avant

Code : Tout sélectionner

$.refreshTimer

Code : Tout sélectionner

		// affichage de la partie UserVariable

		$.ajax({url: [$.domoticzurl,'/json.htm?type=command&param=getuservariables&jsoncallback=?'].join('')}).done(function(data) {
		
			var four = new Date();
		
                	if (typeof data.result !== 'undefined') {

		                $.each(data.result, function(i,item){
		                    //    for( var ii = 0, len = $.PageArray_UserVariable.length; ii < len; ii++ ) {
		                	var ii = 0, len = $.PageArray_UserVariable.length;
					jsKata.nofreeze.forloop(
				  		// the condition
						function() { return ii < len;  }, 
					  	// the incrementor
						function() { ii++; },
						// this is what will be executed
						function fct() {
							if( $.PageArray_UserVariable[ii][0] === item.idx || $.PageArray_UserVariable[ii][0] === item.Name ) {

								// Domoticz idx number
							        var vtype=      $.PageArray_UserVariable[ii][1];         // Domotitcz type (like Temp, Humidity)
							        var vlabel=     $.PageArray_UserVariable[ii][2];         // cell number from HTML layout
							        var vdesc=      $.PageArray_UserVariable[ii][3];         // description
							        var vattr=    	$.PageArray_UserVariable[ii][4];         // extra css attributes
							        var vdata=      item[vtype];                            // current value
												
								if (typeof vdata === 'undefined') {
									vdata='?!';
							        }
							
								////////////////////////////////////////////////////////////////////////////													

						                // if extra css attributes
						                if (typeof vattr === 'undefined') {
						                	$(['#',vlabel].join('')).html(['<span>',vdata,'</span>'].join(''));
						                }
								else {
						                	$(['#',vlabel].join('')).html(['<span style=',vattr,'>',vdata,'</span>'].join(''));
						                }

						                if ($(['#desc_',vlabel].join('')).length > 0) {
									$(['#desc_',vlabel].join('')).html(vdesc);
						                }							 
												
                                        		}

                                		});
                        		});
                	}
				
			four = new Date() - four;
			console.log('UserVariable : ' + four + 'ms');	
			
				
        });
Ne pas oublier de remplacer

Code : Tout sélectionner

<script src="js/frontpage.min.js"></script>
par

Code : Tout sélectionner

<script src="js/frontpage.js"></script>
Dans frontpage_settings.js

Code : Tout sélectionner

        $.PageArray_UserVariable = [		// placez ci dessous vos userVariable
            
		//['idx','value','cellule','description','override css'],
           
                ['0','','','',''],
 			
        []];
Si dans les 106 pages, la solution à ce problème a été donnée, désolé...

Encore une fois, travail impressionnant de Vil1driver et des contributeurs

Re: Custom page

Publié : 22 oct. 2016, 19:04
par papoo
génial
plus besoin de créer un dummy device pour les infos ne figurant que sur la custom page
je vais tester ça dés que j'aurais fini d'installer homebridge

Re: Custom page

Publié : 22 oct. 2016, 19:08
par Chris54220
Snorky a écrit :Bonsoir,

J'imagine que vil1driver a prévu une autre solution mais je n'ai pas trouvé comment afficher les UserVariables dans la page.

Pour ceux que ça peut intéresser.

Modifier frontpage.js juste avant

Code : Tout sélectionner

$.refreshTimer

Code : Tout sélectionner

		// affichage de la partie UserVariable

		$.ajax({url: [$.domoticzurl,'/json.htm?type=command&param=getuservariables&jsoncallback=?'].join('')}).done(function(data) {
		
			var four = new Date();
		
                	if (typeof data.result !== 'undefined') {

		                $.each(data.result, function(i,item){
		                    //    for( var ii = 0, len = $.PageArray_UserVariable.length; ii < len; ii++ ) {
		                	var ii = 0, len = $.PageArray_UserVariable.length;
					jsKata.nofreeze.forloop(
				  		// the condition
						function() { return ii < len;  }, 
					  	// the incrementor
						function() { ii++; },
						// this is what will be executed
						function fct() {
							if( $.PageArray_UserVariable[ii][0] === item.idx || $.PageArray_UserVariable[ii][0] === item.Name ) {

								// Domoticz idx number
							        var vtype=      $.PageArray_UserVariable[ii][1];         // Domotitcz type (like Temp, Humidity)
							        var vlabel=     $.PageArray_UserVariable[ii][2];         // cell number from HTML layout
							        var vdesc=      $.PageArray_UserVariable[ii][3];         // description
							        var vattr=    	$.PageArray_UserVariable[ii][4];         // extra css attributes
							        var vdata=      item[vtype];                            // current value
												
								if (typeof vdata === 'undefined') {
									vdata='?!';
							        }
							
								////////////////////////////////////////////////////////////////////////////													

						                // if extra css attributes
						                if (typeof vattr === 'undefined') {
						                	$(['#',vlabel].join('')).html(['<span>',vdata,'</span>'].join(''));
						                }
								else {
						                	$(['#',vlabel].join('')).html(['<span style=',vattr,'>',vdata,'</span>'].join(''));
						                }

						                if ($(['#desc_',vlabel].join('')).length > 0) {
									$(['#desc_',vlabel].join('')).html(vdesc);
						                }							 
												
                                        		}

                                		});
                        		});
                	}
				
			four = new Date() - four;
			console.log('UserVariable : ' + four + 'ms');	
			
				
        });
Ne pas oublier de remplacer

Code : Tout sélectionner

<script src="js/frontpage.min.js"></script>
par

Code : Tout sélectionner

<script src="js/frontpage.js"></script>
Dans frontpage_settings.js

Code : Tout sélectionner

        $.PageArray_UserVariable = [		// placez ci dessous vos userVariable
            
		//['idx','value','cellule','description','override css'],
           
                ['0','','','',''],
 			
        []];
Si dans les 106 pages, la solution à ce problème a été donnée, désolé...

Encore une fois, travail impressionnant de Vil1driver et des contributeurs

Demande à vil1driver de l'intègre à ces mise à jour sa serai cool

Re: Custom page

Publié : 22 oct. 2016, 19:49
par deennoo
L'avantage de github c'est que chaqu'un peux :
Copier le projet original
Faire ses modifications (en les argumentants)
Puis faire un update (commit) au master (qui doit etre validé par le createur du git original).

Ainsi les modifs profitent a tous lors du git-update

Re: Custom page

Publié : 22 oct. 2016, 20:27
par Snorky
je viens d'envoyer un msg privé à Vil1Driver mais pour la prochaine fois je ferai comme ça.

je ne connais pas bien Git

Re: RE: Re: Custom page

Publié : 22 oct. 2016, 21:07
par deennoo
Snorky a écrit :je viens d'envoyer un msg privé à Vil1Driver mais pour la prochaine fois je ferai comme ça.

je ne connais pas bien Git
C'est pas hyper facile mais super pour faire evoluer les projets, et surtout cela creer un historique des changements, et des evolutions.

Re: Custom page

Publié : 22 oct. 2016, 21:25
par vil1driver
SnorkY a écrit : J'imagine que vil1driver a prévu une autre solution mais je n'ai pas trouvé comment afficher les UserVariables dans la page.
nop je n'avais rien prévu ;)
SnorkY a écrit :

Code : Tout sélectionner

var four = new Date();
;)
Chris54220 a écrit : Demande à vil1driver de l'intégrer à ses mises à jour ce serai cool
ahah, je vois pratiquement tous les messages passer et plus particulièrement sur les sujets que j'ai créé :D
donc demande inutile ;) surtout quand tout est fournis, de qualité et d'utilité publique :)

c'est du super travail Snorky, je viens de mettre à jour, grand merci à toi.

Re: Custom page

Publié : 22 oct. 2016, 22:01
par Snorky
Merci Vil1driver.

En plus cela me permet de me mettre à Git...

Re: Custom page

Publié : 23 oct. 2016, 22:19
par Snorky
Bonsoir,

J'ai un compteur OWL Micro 180 pour mesurer ma conso électrique.

2 soucis :
- avec un vtype=Data, le script affiche Watt et non KWh (message privé envoyé à Vil1driver donc pas besoin d'en reparler pour le moment surtout que l'on a identifié la cause donc voir comment on peut corriger)

- je n'arrive pas à avoir de graphique avec mon compteur OWL (il reste vide)
==> a priori normal car la commande json n'a pas l'air d'exister pour ce device (source https://www.domoticz.com/wiki/Domoticz_API/JSON_URL's).

Pour une sonde de température, on peut faire (requête utilisée par Vil1driver) :

Code : Tout sélectionner

/json.htm?type=graph&sensor=temp&idx=IDX&range=day
Quand je lance cette requête, j'obtiens :

Code : Tout sélectionner

{
   "status" : "OK",
   "title" : "Graph temp day"
}
Il me manque donc l'historique

Par contre, ce que je ne comprends pas c'est que sur Domoticz, quand je cliques sur "Log" de mon compteur, j'ai bien un graphique.
Il ferait son graphique directement en récupérant les données d'une requête SQL directement en base et non pas depuis Json ?

Des idées ?