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 !

Formattime supérieur a 24h

De l'installation à l'utilisation venez discuter de JEEDOM au quotidien
ach65
Timide
Messages : 59
Inscription : 20 déc. 2017, 08:30
Localisation : 65

Formattime supérieur a 24h

Message par ach65 » 23 avr. 2019, 11:00

Bonjour,

La fonction "FormatTime, "écrête à 24h, comment afficher une durée supérieure ?
par exemple :
J'ai une valeur de 1512 minutes a afficher en h et mn, soit 25h12.
Avec la fonction "FormatTime" ça affiche 1H12

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: Formattime supérieur a 24h

Message par loic » 23 avr. 2019, 12:13

Bonjour,
Cette fonction ne permet pas de faire ce que tu veux, la seule solution il faut en ecrire une toi meme (voir doc pour les fonction custom).
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

ach65
Timide
Messages : 59
Inscription : 20 déc. 2017, 08:30
Localisation : 65

Re: Formattime supérieur a 24h

Message par ach65 » 23 avr. 2019, 14:01

Bon, je vais m'y mettre !
Merci quand même !

Avatar de l’utilisateur
Claude69
Actif
Messages : 2089
Inscription : 04 avr. 2015, 07:57
Localisation : Nord de Lyon

Re: Formattime supérieur a 24h

Message par Claude69 » 23 avr. 2019, 14:14

Hello
J'utilise convertduration(nb en secondes) pour cela :
Annotation 2019-04-23 141303.jpg
Annotation 2019-04-23 141303.jpg (16.01 Kio) Consulté 511 fois
Gestion d'ouverture / fermeture Portail et garage
Gestion filtration piscine
Divers éclairages
Et tout plein d'autres choses ...
JEEDOM NUC 3.3.33 ULTIMATE

Mon matériel ici

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

Re: Formattime supérieur a 24h

Message par winhex » 23 avr. 2019, 15:48

Screenshot_2019-04-23-15-41-15-024-1.png
Screenshot_2019-04-23-15-41-15-024-1.png (101.04 Kio) Consulté 492 fois
Moi c'est le widget qui met en forme

Utilisation = "état inversé"
durationBetween(#[Cuisine][Hottes Escamotables][Etat]#,0,-#[Cuisine][Filtration][sur]#day0:00,now)

Sur (#[Cuisine][Filtration][sur]#) = une incrémentation de variable + 1 chaque jour

Bouton nettoyage incrémentation variable a 0

Le widget
Si 0 la ligne disparaît (à adapter)

Code : Tout sélectionner

<div class="tooltips cmd cmd-widget #history#" data-type="info" data-subtype="string" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#" style="display: block;">
	<center><span style="font-size : 12px;#hideCmdName#" class="cmdName">#name_display#</span> <strong class="state"></strong>		<span class="unite" style="font-size : 12px;">#unite#</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').empty().append(_options.display_value);

            var _date = Math.floor(_options.display_value); 
			var _el = $('.cmd[data-cmd_id=#id#] .state');
  
			if (_date > '0' ) {
				var j = Math.floor(_date / 1440);   
				var h = Math.floor(_date % 1440 / 60);
                var m = Math.floor(_date % 60);

				$('.cmd[data-cmd_id=#id#] .cmdName').show();
				$('.cmd[data-cmd_id=#id#] .unite').show();
				_el.show().empty().append(((j > 0 ? j + "j " : "") + (h > 0 ? h + "h " : "") + (m > 0 ? (h > 0 && m < 10 ? "0" : "") + m + "min" : "0 min")));

			}else { 
				$('.cmd[data-cmd_id=#id#] .cmdName').hide();
				_el.hide();
				$('.cmd[data-cmd_id=#id#] .unite').hide();
			}
  
			$('.cmd[data-cmd_id=#id#]').removeClass('label label-warning label-danger')
			if(_options.alertLevel == 'warning'){
				$('.cmd[data-cmd_id=#id#]').addClass('label label-warning');
			}else if(_options.alertLevel == 'danger'){
				$('.cmd[data-cmd_id=#id#]').addClass('label label-danger');
			}
		}
		jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});
	</script>
</div>

Je l'utilise avec plein de truc de durée de fonctionnement (ouverture fenêtre,..)
Un autre exemple
duration(#[Salle de bains][VMC Salle de Bains][Etat]#,1,today)
L'historique est toujours en minute

J'ajoute un cron a minuit 5 afin que le widget se rehinitialise en plus dans le widget
Si il n'est pas scénarisé, l'exemple plus haut c est l'incrementation de la variable + 1 qui rehinitialise

ach65
Timide
Messages : 59
Inscription : 20 déc. 2017, 08:30
Localisation : 65

Re: Formattime supérieur a 24h

Message par ach65 » 26 avr. 2019, 08:45

Merci @winhex et Claude 69 !

Répondre

Revenir vers « Utilisation »

Qui est en ligne ?

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