Ajouter un arrondi dans les alertes ouvrant

Hello,
Petit irritant dans les messages d’alerte déclenchés par le plugin thermostat quand un ouvrant dépasse sa durée autorisée : la durée indiquée dans le message d’erreur n’est pas arrondie et du coup le message (que je transfère en notification jeedomconnect pour ma part) est indigeste:

Pour info la config du thermostat en question :

Et jai bien vérifié, le message en question est généré automatiquement par le plugin, ce n’est pas une action que j’ai configurée moi-même.
D’ailleurs ce serait une chouette évolution de pouvoir paramétrer des actions personnalisées…


Informations Jeedom Atlas

Core : 4.4.5 (V4-stable)
DNS Jeedom Atlas : oui

Plugin : Thermostat
Version : 2024-02-20 01:26:05 (stable)

Personne n’a le même souci ? Quelqu’un sait si c’est un bug ou un problème chez moi ?

Hello,

Je te confirmes que j’ai aussi le même problème :

En passant, si j’attends un temps > à « Éteindre si ouvert plus de (min.) » et que je ferme la fenêtre, j’ai quand même le message après ~35 minutes (« Alerte si ouverture de plus de 35 minutes » chez moi).

Mais je suis resté en version 2022-08-04 01:21:42 vu les autres problèmes rencontrés par certains.

Bad

1 « J'aime »

@Loic je me permets de te tagger pour que tu puisses jeter un oeil si tu as le temps (il me semble que c’est toi qui suis ce plugin, si ce n’est pas le cas je m’en excuse). C’est mineur comme souci mais peut-être facile à corriger ?

Est-ce qu’un pro des PR saurait en faire une pour cette amélioration ?
Ça doit pas être compliqué mais j’y connais rien :clown_face:.

Je me permets de relancer le sujet. Soit quelqu’un sait meguider pour faire une PR , soit peut la faire lui-même…

Salut,

En attendant la modification, tu peux remplacer dans thermostat.class.php.

log::add(__CLASS__, 'error', $thermostat->getHumanName() . ' ' . __("Attention le thermostat est suspendu à cause d'une fenêtre ouverte depuis", __FILE__) . ' : ' .  ((strtotime('now') - $thermostat->getCache('window::state::open', -1)) / 60) . __('minutes', __FILE__));

par:

log::add(__CLASS__,  'error', $thermostat->getHumanName() . ' ' . __("Attention le thermostat est suspendu à cause d'une fenêtre ouverte depuis", __FILE__) . ' : ' .  floor((strtotime('now') - $thermostat->getCache('window::state::open', -1)) / 60) . __(' minutes', __FILE__));

floor (arrondi inférieur)

1 « J'aime »

Ah merci ! Tu saurais me donner la ligne, je suis sur mobile et c’est difficilement navigable :frowning:

Pour moi, c’est la ligne 401, à confirmer de ton côté.
Je verrai après les fêtes pour faire une PR.

Voici ce que cela donne chez moi sans et avec floor :wink:

Au top, merci encore !

Et au fait les PR ça marche comment ? Il faut forcément proposer la modif de code directement, ou bien on peut juste indiquer le problème en question ?