Comparaison d’une valeur toutes les heures

Bonjour à tous,
Je cherche une solution (et si possible un exemple) pour comparer la valeur d’un compteur à lui même toutes les heures et déclencher une action si ce dernier n’a pas augmenté.

Actuellement j’incrémente un compteur virtuel à chaque passage devant un capteur de présence, je voudrais pouvoir « surveiller » ce compteur.

Si mon compteur a évolué depuis la dernière valeur = pas d’action
Si mon compteur n’a pas évolué depuis la dernière valeur = lancer l’action programmée
Par exemple :

  • … toutes les heures
  • À 10h le compteur est à 128 passages
  • À 11h le compteur est à 153 passages (donc pas d’action à déclencher)
  • À 12h le compteur est toujours à 153 passages (lancer l’action programmée)
  • À 13h le compteur est à 237 passages (pas d’action, car compteur supérieur à 12h)
  • Ect… toutes les heures

Je précise que mon compteur virtuel est réinitialisé tous les jours à minuit…

Merci pour vos réponses !

Bonjour,

Tu dois historiser la valeur et ensuite regarde du coté des fonctions de calcul: https://jeedom.github.io/core/fr_FR/scenario#tocAnchor-1-7-4

Bonjour,
Sinon, pourquoi passer par un virtuel, une variable suffit.
Ensuite tu fais un scénario avec déclenchement programmé toutes les heures et tu testes ta variable.

1 « J'aime »

Hello,
Pour le coup, ici un scénario déclenché toutes les heures ferait parfaitement l’affaire.
L’idée est d’avoir une variable qui contient la valeur du compteur à H-1. Tu compares le compteur avec la vriable et si compteur == variable, alors tu lances ton action. Sinon, variable = compteur et hop, prêt pour le teste à l’heure suivante.

2 manière de faire: avec un virtuel historisé ou une variable.

Pour le virtuel tu utilises la commande - minBetween(#[Salle de bain][Hydrometrie][Humidité]#,2015-01-01 00:00:00,2015-01-15 00:00:00)
https://jeedom.github.io/core/fr_FR/scenario
Et tu mes un intervalle d’une heure. Tu peux te permettre d’historique que pendant une semaine, le nettoyage de fera automatiquement.

L’autre solution, c’est ta variable. Tu l’incrementes a chaque détection et tu la test toutes les heures. Donc si variable =0, tu fais tu action sinon, tu met ta variable de nv a 0

Merci à tous, je vais faire une variable, mais je ne vois pas comment mettre en mémoire le compteur H-1 et le comparer avec H, bon cette après-midi je vais chercher un peu avec vos réponses…:thinking:

Scénario déclenché toutes les heures.

si variable est égale à compteur
    Action à faire
Sinon
    Variable = compteur

Ton compteur est une autre variable. Tu en as donc 2.

Ça c’est une excellente idée. Incrémenter la variable à chaque événement et tester toutes les heures si elle vaut 0 ou pas. Impec.

Il me semble que c’est ce que nous t’avons tous dit, non?

Ah bon? Chacun a donné une idée et je trouve l’idée de @Poluket la meilleure. C’est tout.

Je voulais simplement dire que toutes ces idées tournaient autour du même principe, à savoir 2 variables.
Je me moque de savoir si mon idée est la meilleure ou pas.
On est là pour s’entraider à priori.

2 « J'aime »

Bonjour mich0111 et merci pour l’intérêt porté à mon problème. Je bloque toujours sur la création de la variable qui va stocker la valeur à comparer à mon compteur, en fait je pense ne pas comprendre comment faire une variable, c’est un plugin à utiliser comme le virtuel ?

Avec une action.

Et pour comparer

variable(maVariable) == #[Aucun][Mon][Compteur]#

Merci, je vais tester ça…

Non, cela n’a rien à voir avec un virtuel.
Tu peux créer des variables.
Si tu es en V4, tu fais outils->variables et tu crées tes variables.
Ensuite, tu les utilises dans tes scénarios comme tu veux.
En V4, tu peux créer tes variables directement dans tes scénarios, je me demande si cela ne marche pas aussi comme ça en V4.
Une variable est une variable globale, si tu t’y connais en informatique. Elle est disponible partout dans ton système. Les variables locales, c’est-à-dire visible uniquement dans un scénario ou un code sont appelés des tags ici.
Je ne m’en suis pas encore servi mais je crois qu’il suffit d’y ajouter un # pour la définir comme telle dans ton code.
Si j’ai dit une bêtise,. n’hésitez pas à me reprendre.
Si tu veux d’autres précisions, à ta disposition.
Bonne soiree

Super, merci !
Je commence à saisir :+1:
Je vais reprendre ça demain, en tout cas merci beaucoup à vous tous pour votre aide

1 « J'aime »

ça fonctionne !!! j’ai fais une variable dans un scénario…
Merci à tous pour votre aide :grin:

2 « J'aime »

Ravi d’avoir pu t’'aider.
Pense à marquer le fil comme,solutionné.
Bonne soirée

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.