Purger les cron de la veille

Bonjour à tous !

Hier, intervention d’Enedis sur ma commune, coupure de courant prévue de 30 minutes.
Mon onduleur pouvant tenir 40 minutes, je me dis que ça va passer.
Sauf que l’intervention a été plus longue et tout s’est coupé en début de matinée.

Bref.

Ce matin, mes volets s’ouvre au lever du soleil au lieu de 9H (le week end j’ouvre à 9h)
Il ce fait que c’est le cron de la veille qui a déclanché mes volets.
Comment faire pour effacer les cron de la veille expliré en cas de coupure longue ?

Merci de m’avoir lu et merci d’avance pour votre aide !

Pour les volets, si Jeedom a été coupé le matin et que le matin et qu’aujourd’hui la programmation est pas bonne il faut peut être revoir un truc dans ta programmation.

Sinon il y a le moteur de tâches qui te permet de supprimer les cron
Ou un remove_inat dans le scénario qui a fait la prog…

En fait ce matin j’ai eu l’ouverture à 8H35 (celui d’hier qui n’a pas eu lieu car Jeedom off) et ouverture à 9h comme prévu aujourd’hui

Scénario qui tourne depuis plus de 2 ans sans auccun soucis.

Pour le remoove_inat , je le met en action en premier lieu sur mon scénario c’est ça ?

Bonjour,

Le remove_inat n’est nécessaire que si le bloc A n’est pas reprogrammé dans le scénario.
Donc si tous les matins (genre à 1h30 ou 3h30 pour éviter la période 2h/3h du changement d’heure) vous avez un scénario qui programme l’ouverture des volets à l’heure voulue pour le jour, vous n’aurez jamais de problème.

Vous pouvez aussi avoir un scénario avec #start# comme déclencheur qui sera exécuté en cas de démarrage de jeedom et dans ce scénario refaire vos programmations ou autres actions pour remettre tout d’équerre suite à un redémarrage.

Mon scénario tourne à 5h15 et au #start# au cas ou.

Donc ça n’aurait pas dû arriver.

Au cas ou j’aurai loupé un truc, je mes les logs.

C’est pas dramatique mais j’aimerai comprendre ce qu’il s’est passé.

[2021-11-26 05:15:02][SCENARIO] Start : Scenario execute automatiquement sur programmation.
[2021-11-26 05:15:02][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-26 05:15:02][SCENARIO] Evaluation de la condition : [0 == 1 OU 0 == '1'  OU 0 == 1  OU "Vendredi" == 'Mardi'] = Faux
[2021-11-26 05:15:02][SCENARIO] Exécution du sous-élément de type [action] : else
[2021-11-26 05:15:02][SCENARIO] Exécution d'un bloc élément : 23
[2021-11-26 05:15:02][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-26 05:15:02][SCENARIO] Evaluation de la condition : [820  > 0710] = Vrai
[2021-11-26 05:15:02][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-11-26 05:15:02][SCENARIO] Exécution d'un bloc élément : 24
[2021-11-26 05:15:02][SCENARIO] Exécution du sous-élément de type [condition] : at
[2021-11-26 05:15:02][SCENARIO] Evaluation de la condition : [835] = 835
[2021-11-26 05:15:02][SCENARIO] Tâche : 24 programmée à : 2021-11-26 08:35:00
[2021-11-26 05:15:02][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-26 05:15:02][SCENARIO] Evaluation de la condition : [1650 > 1940] = Faux
[2021-11-26 05:15:02][SCENARIO] Exécution du sous-élément de type [action] : else
[2021-11-26 05:15:02][SCENARIO] Exécution d'un bloc élément : 31
[2021-11-26 05:15:02][SCENARIO] Exécution du sous-élément de type [condition] : at
[2021-11-26 05:15:02][SCENARIO] Evaluation de la condition : [1635] = 1635
[2021-11-26 05:15:02][SCENARIO] Tâche : 31 programmée à : 2021-11-26 16:35:00
[2021-11-26 05:15:02][SCENARIO] Fin correcte du scénario
------------------------------------
[2021-11-26 08:35:04][SCENARIO] ************Lancement sous tâche**************
[2021-11-26 08:35:04][SCENARIO] Exécution du sous-élément de type [action] : do
[2021-11-26 08:35:04][SCENARIO] Exécution d'un bloc élément : 25
[2021-11-26 08:35:04][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-26 08:35:04][SCENARIO] Evaluation de la condition : [0 == 0] = Vrai
[2021-11-26 08:35:04][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-11-26 08:35:04][SCENARIO] Pause de 2 seconde(s)
[2021-11-26 08:35:06][SCENARIO] Exécution de la commande [Chambre Léandre][Volet Ch Léandre][Ouvrir]
[2021-11-26 08:35:07][SCENARIO] ************FIN sous tâche**************
------------------------------------
[2021-11-26 16:15:04][SCENARIO] Start : Scenario execute sur evenement : #start#.
[2021-11-26 16:15:04][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-26 16:15:04][SCENARIO] Evaluation de la condition : [0 == 1 OU 0 == '1'  OU 0 == 1  OU "Vendredi" == 'Mardi'] = Faux
[2021-11-26 16:15:04][SCENARIO] Exécution du sous-élément de type [action] : else
[2021-11-26 16:15:04][SCENARIO] Exécution d'un bloc élément : 23
[2021-11-26 16:15:04][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-26 16:15:04][SCENARIO] Evaluation de la condition : [820  > 0710] = Vrai
[2021-11-26 16:15:04][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-11-26 16:15:04][SCENARIO] Exécution d'un bloc élément : 24
[2021-11-26 16:15:04][SCENARIO] Exécution du sous-élément de type [condition] : at
[2021-11-26 16:15:04][SCENARIO] Evaluation de la condition : [835] = 835
[2021-11-26 16:15:04][SCENARIO] Tâche : 24 programmée à : 2021-11-27 08:35:00
[2021-11-26 16:15:04][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-26 16:15:04][SCENARIO] Evaluation de la condition : [1650 > 1940] = Faux
[2021-11-26 16:15:04][SCENARIO] Exécution du sous-élément de type [action] : else
[2021-11-26 16:15:04][SCENARIO] Exécution d'un bloc élément : 31
[2021-11-26 16:15:04][SCENARIO] Exécution du sous-élément de type [condition] : at
[2021-11-26 16:15:04][SCENARIO] Evaluation de la condition : [1635] = 1635
[2021-11-26 16:15:04][SCENARIO] Tâche : 31 programmée à : 2021-11-26 16:35:00
[2021-11-26 16:15:04][SCENARIO] Fin correcte du scénario
------------------------------------
[2021-11-26 16:35:04][SCENARIO] ************Lancement sous tâche**************
[2021-11-26 16:35:04][SCENARIO] Exécution du sous-élément de type [action] : do
[2021-11-26 16:35:04][SCENARIO] Exécution d'un bloc élément : 32
[2021-11-26 16:35:04][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-26 16:35:04][SCENARIO] Evaluation de la condition : [0 == 0  ] = Vrai
[2021-11-26 16:35:04][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-11-26 16:35:04][SCENARIO] Pause de 2 seconde(s)
[2021-11-26 16:35:06][SCENARIO] Exécution de la commande [Chambre Léandre][Volet Ch Léandre][Fermer]
[2021-11-26 16:35:06][SCENARIO] ************FIN sous tâche**************
------------------------------------
[2021-11-27 05:15:01][SCENARIO] Start : Scenario execute automatiquement sur programmation.
[2021-11-27 05:15:01][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-27 05:15:01][SCENARIO] Evaluation de la condition : [1 == 1 OU 0 == '1'  OU 0 == 1  OU "Samedi" == 'Mardi'] = Vrai
[2021-11-27 05:15:01][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-11-27 05:15:01][SCENARIO] Exécution d'un bloc élément : 21
[2021-11-27 05:15:01][SCENARIO] Exécution du sous-élément de type [condition] : at
[2021-11-27 05:15:01][SCENARIO] Evaluation de la condition : [0900] = 900
[2021-11-27 05:15:01][SCENARIO] Tâche : 21 programmée à : 2021-11-27 09:00:00
[2021-11-27 05:15:01][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-27 05:15:01][SCENARIO] Evaluation de la condition : [1649 > 1940] = Faux
[2021-11-27 05:15:01][SCENARIO] Exécution du sous-élément de type [action] : else
[2021-11-27 05:15:01][SCENARIO] Exécution d'un bloc élément : 31
[2021-11-27 05:15:01][SCENARIO] Exécution du sous-élément de type [condition] : at
[2021-11-27 05:15:01][SCENARIO] Evaluation de la condition : [1634] = 1634
[2021-11-27 05:15:01][SCENARIO] Tâche : 31 programmée à : 2021-11-27 16:34:00
[2021-11-27 05:15:01][SCENARIO] Fin correcte du scénario
------------------------------------
[2021-11-27 08:35:02][SCENARIO] ************Lancement sous tâche**************
[2021-11-27 08:35:02][SCENARIO] Exécution du sous-élément de type [action] : do
[2021-11-27 08:35:03][SCENARIO] Exécution d'un bloc élément : 25
[2021-11-27 08:35:03][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-27 08:35:03][SCENARIO] Evaluation de la condition : [0 == 0] = Vrai
[2021-11-27 08:35:03][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-11-27 08:35:03][SCENARIO] Pause de 2 seconde(s)
[2021-11-27 08:35:05][SCENARIO] Exécution de la commande [Chambre Léandre][Volet Ch Léandre][Ouvrir]
[2021-11-27 08:35:05][SCENARIO] ************FIN sous tâche**************
------------------------------------
[2021-11-27 09:00:06][SCENARIO] ************Lancement sous tâche**************
[2021-11-27 09:00:06][SCENARIO] Exécution du sous-élément de type [action] : do
[2021-11-27 09:00:06][SCENARIO] Exécution d'un bloc élément : 22
[2021-11-27 09:00:06][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-11-27 09:00:06][SCENARIO] Evaluation de la condition : [0 == 0  ET 0 == '0'  ] = Vrai
[2021-11-27 09:00:06][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-11-27 09:00:06][SCENARIO] Pause de 2 seconde(s)
[2021-11-27 09:00:08][SCENARIO] Exécution de la commande [Chambre Léandre][Volet Ch Léandre][Ouvrir]
[2021-11-27 09:00:08][SCENARIO] ************FIN sous tâche**************`Texte préformaté`

En regardant encore, j’ai l’impression que c’est le scénario qui a tourné à #start# vers 16h15 qui aprogrammé le cron 8h35.
Par contre, quand il a tourné à 5h15, le 8h35 ne s’est pas effacé.

Une programmation faite dans un scénario est liée a celui-ci
Donc si tu programme avec ton scénario, cela ne sera pas reprogrammé avec le scénario qui se lance sur #start" t auras 2 programmations…

Si je comprend bien, je dois enlever le start ?

Comme on ne sait pas réellement ce que tu fais puisqu’on ne voit pas les scénarios, difficile a dire.

Mais rien ne t’empêche en fonction de comment tu as fait ton truc d’appeler ton scénario de programmation depuis le scénario de #start# en fonction de l’heure ou ca redémarre par exemple ou un truc du genre !
Car en fonction de l’heure du start peut etre faut il lancé la programmation, ou pas et cela seul toi peut le déterminer

Peut être faire un test si l’heure est déjà passée de ne pas prévoir d’action.

Si besoin mon scénario :




Y a plusieurs choses que je ne comprends pas.

Tu testes certains état avec == ‹ 1 › donc entre guillemet comme si la valeur n’était pas numérique ?

Ensuitedans les SI tu testes
#[Chambre Léandre][Fenêtre Ch Léandre][Ouverture]# == 0 Quand ce test est vrai le volet est donc fermé c’est cela ?

A 7h10 si ouverture == 0 alors ouverture

Mais à 1940 si ouverture == 0 alors fermer sinon tu te dis que c’est ouvert…

Y a pas un souci la ???

Alors, c’est vrai que je peux ne pas être clair dans mes appellations…

*Le 1 c’est des virtuels que je coche ou non. Si on est en vacances ou pas par exemple.
*Fênetre ouverture c’est un capteur d’ouverture. Donc le volet ne se ferme que si la fenêtre est fermée.
*A 7h10 si ouverture n’est pas vrai (donc fenêtre fermée) alors ouverture du volet.
*19h40 même logique que pour 7h10 fermeture du volet si fênetre fermée

OK c’est plus clair.
Et y a une raison au sleep a chaque fois ?

J’ai 5 scénarios cousins pour les différentes pièces avec des conditions de jour et d’heure un peu différentes.
Mais le matin en semaine par exemple les volets s’ouvrent tous en même temps et j’avais des ratés. Depuis que j’ai mi des sleep pour séparer d’une secondes les ordres tout va bien.
C’est une petite rustine.
Les volets sont pilotés soit par des shelly 2.5 soit via une connexoon.

Avec un bloc code.

2 « J'aime »

Merci pour cette réponse.

Si je comprend bien, je met un bloc code, je copie colle le code, et je n’ai qu’à indiquer d’id du scénario.

Si c’est ça c’est super simple et la solution parfaite !

J’attend juste ta confirmation pour le mettre en place et l’indiquer en solution.

Au passage, merci également à prfalken et Mips pour l’aide apportée :+1:

1 « J'aime »

Moi je pense que quand on a besoin d’annuler le Inat d’un scénario depuis un autre c’est qu’on a un problème de conception.

Vous devriez avoir un scénario qui gère de sorte que s’il est lancé il fait ce qu’il faut.

Et si vous avez besoin vous pouvez appeler ce scénario depuis un autre.

Mais avoir 2 scénarios qui programme des actions sur le même équipement, dans 6 mois vous allez faire un post parce « jeedom actionne vos volets tout seul alors que vous avez désactivé le scénario ».

J’ai un scénario par groupe de volet.
Qui chaque matin à 5h15 fait un calcul qui me dit A x heure ouvrir et A x heure fermer.

Ca fonctionne sans problème sauf dans la situation particulière ou le calcul est fait au #start# l’après midi et qu’il recalcul l’action du matin et l’ajoute pour le lendemain.

Deux solutions données dans ce fil :

  • Faire un test si l’heure est passée et donc ne pas programmer l’action
  • Annuler les actions programmées précédemment avant de faire le calcul

Je comprend que ce n’est pas super propre niveau programmation.

J’ai donné mon scénario, si il a des erreur de conception je suis preneur de solutions.

J’apprend au fil de mes expériences et de mes lectures sur ce forum et je suis toujours intéressé pour m’améliorer.