Calcul de temps - je ne comprends plus rien!

Bonjour,

Jeedom v4.1.19
Raspberry Pi OS Buster 10.7 - 32 bits

Je ne comprends plus le fonctionnement des durations.

Ce je que veux, c’est connaitre le temps de fonctionnement de ma chaudière.
Chaque jour (visible dans un virtuel) (h mn)
Depuis le début du mois (visible dans le même virtuel) (j/h/mn)

Avant, j’avais cela :

convertDuration(duration(#[Chauffage][Module chaudière][Etat]#,1, today)*60)
convertDuration(duration(#[Chauffage][Module chaudière][Etat]#,1, first day of this month)*60)

J’ai l’impression que cela à toujours bien fonctionné.

Ce matin, 1er du mois, je vois à 08h00 du matin, que ma chaudière à fonctionné 06hxx ce qui est impossible.

Là, j’ai du temps, alors je veux analyser le truc.
Si je regardes mon historique, le temps actif du thermostat, en minute depuis ce matin, j’ai 139, soit 2h19 (pour moi, alors que les calculatrices donne 2h31 je suis perdu).

Mais Jeedom, donne 8h18 !
Alors je décompose avec ce que j’ai trouvé :
convertDuration(duration(#[Chauffage][Thermostat][Actif]#,1,ago 06:00)*60)
Le chauffage n’a pas fonctionné cette nuit, car la température à toujours été au dessus de la consigne.
Donc, depuis 06h00 Jeedom indique : Résultat : 2h 18min 0s
Mais la ou je ne comprends plus rien, c’est que si je fait :
convertDuration(duration(#[Chauffage][Thermostat][Actif]#,1,ago 05:00)*60)
Il ajout 1 heure : 3h 18min 0s
Jusqu’à 00h00 ou renvois : 8h 18min 0s (comme le virtuel donc).

Et le cumule jour, est toujours à 0.

Pouvez-vous m’indiquer ou je me trompe, merci.

le today marche chez moi mais le first day of the month me donne 0 …

Ba moi non, il fonctionne, mais ajoute des heures qui sortent du chapeau !
En fait, il ajoute 1 heure chaque heure ou il n’y a pas d’évènement (pour moi, c’est une piste).

en essayant tes formules d’après, j’ai des trucs bizarres (ajout de minutes dans mon cas !!)aussi sur l’ouverture d’une porte intérieure, je continue les essais et surtout je vais essayer de trouver un capteur plus probant.

j’ai mis le ago pour comprendre.
Mais en principe j’utilise cela :
convertDuration(duration(#[Chauffage][Thermostat][Actif]#,1,today)*60)
Mais il ajoute 1 heure à chaque heure ou il y a rien (j’ai fait le calcul à la mains pour comprendre).

le today m’ajoute environ 20min sur le fonctionnement (4h22 au lieu de 4h00 environ) de la tv et le ago 05:00 m’ajoute 9h : je passe a 13h04 … je ne connaissais pas cette fonction, c’était pas plus mal ! lol

Je viens de tester sur un Jeedom v4.1.16, je n’ai pas ce problème :
convertDuration(duration(#[Chauffage][Module chaudière][Etat]#,1, today)*60)
Donne 0s car c’est un VM qui ne chauffe pas en vrais, donc c’est ok pour moi.

les passage par zero semblent faire l’erreur

si je fais ago 17h00 : le temps d’allumage de la tv est bon
si je fais ago 13h : ca me rajoute 30 min mais la valeur est passée a 0 de 17 à 18 on va dire

si ca donne un indice

ma porte de sous sol a été ouverte 1 fois aujourdhui juste avant 18h (mon retour) et voici le résultat pour ago 13:00 et pour today : on dirait le dernier changement d’état …

image

Je pense qu’il y a un problème.

Je viens de faire le test sur le statut de mon imprimante ; 10h40
=> pour 4 minutes en vrais.

Allo, Huston ?

@kiboost, @Salvialf

Avec first day of this month, les heures minutes secondes sont l’heure actuelle.
Voir Différence entre 'first day of this month' et 'first day of january' en janvier - #2 par jpty
ou là:
Fonction statistics et statisticsbetween - #2 par jpty

status de ma tv

résultats

et
image

ils sont égaux sauf que la tv a tourné entre 16h et 17h (bon ok, j’ai mis 1 min pour la capture d’écran)

j’arrete les tests, j’y perd le peu de latin que je connais

Bonsoir et merci de votre réponse.

Mais c’est une réponse que je ne comprend pas, désolé.

Mon problème est : cela fonctionnait avant la v4.1.16 et plus maintenant

Si vous avez une idée ;
Je souhaites afficher le temps d’état à 1 d’un statut, pour today,now
et la même chose, mais depuis le 1er du mois…

De préférence, avec ce qui est disponible nativement dans Jeedom

Merci.

Bon,

Alors visiblement c’est un bug (s’il est encore d’actualité) :
Duration déconne en v4.1.4? - Salon des Bêta-Testeurs / Core V4 (BugsReports) - Communauté Jeedom
ou :
Soucis calcul valeur depuis passage en béta - Utilisation du core de Jeedom - Communauté Jeedom

:frowning:

Bonsoir, je confirme le bug , j’utilise « DurationBETWEEN »
j’ai remarqué qu’en allant dans la commande du virtuel, avec une simple sauvegarde sans rien modifier les calculs redevenaient bons :slight_smile: vivement le débug…

PS: Et le lendemain patatras :slight_smile:

Bonsoir,

Il semble qu’il y ai des différences entre les installations (divers utilisateurs, pas le même constat).
Ce qui est positif, c’est que la Teams est au courant.

Ce qui l’ai moins, c’est que je n’était pas confronté à ce problème avant :wink:

Moi, cela ne concerne pas QUE les virtuelles, c’est directement le testeur d’expression.

Cela dit, je pense que les calcules de temps ne doivent pas être facile.

La preuve (ou alors je suis très fatigué) :
Convert Minutes a Heures (convertlive.com)

Tout comme dans Windows (via la calculatrice, qui fait les conversions maintenant) :
120 minutes = 2 heures (c’est normal)
130 minutes (pour moi, cela fait 2 heure 10), mais pour les convertisseurs cela fait 2h16 ! (comment un tel bug peut-il est présent à la fois sur l’Internet et à la fois dans la calculatrice de Windows 10 !!!

Où voyez-vous un bug dans la calculatrice Windows ?
image

1 « J'aime »

130 minutes, cela ne fait pas 2 heures 10 ?

Ca fait 2h 10min ou 2,166666 heures en décimal

2 « J'aime »

Bonsoir @Fabrice

Ne sommes nous pas sur les mêmes pb que pour les 2 posts ci-dessous :

Pas de solution trouvée, juste des contournements, et pb qui est apparu sur une des dernières versions

Norbert

1 « J'aime »