Gestion prochaine itération agenda

Bonjour,
De ce que je crois comprendre du plugin Agenda, la prochaine entrée dans la table des crons est créée lors de l’enregistrement d’un évènement et lors de l’exécution du dernier événement.
Alors je me pose la question suivante, si je souhaite désactiver provisoirement un agenda (cas de l’absence par exemple), comment faire pour que la prochaine itération de l’agenda, déjà créer dans le cron, soit supprimée ? La simple désactivation ne suffisant pas.
De même, lors de la réactivation de ce même agenda, comment faire pour que la prochaine itération se créée automatiquement ?
Par avance, merci de votre aide.

Pour la désactivation je ne suis pas certain de ce que tu avances, il me semblait que ça supprimait les prochaines instances du cron.
Pour la réactivation il faut malheureusement passer par un autre scénario que tu lances après avoir réactiver ton agenda et qui fait un contrôle sur l’événement en cours et qui lance les actions en conséquence. C’est un peu redondant de l’agenda malheureusement.
Exemple pour mes thermostats (ne fais pas attention à la syntaxe):
SI #agenda thermostat##en cours# matches /jour/ ALORS # thermostat##mode# = eco
SI matches /soir / alors mode = confort , etc… avec tous tes événements de l’agenda

C’est ce que j’ai constaté. Je désactive l’agenda, la prochaine entrée n’est pas supprimée.

Par contre, je n’ai pas compris la suite de ton post. Je ne vois pas comlent prendre le contrôle d’un évènement de l’agenda par scénario. Surtout que je voudrais m’affranchir du scénario. Auparavant, tout ceci ne fonctionnait que par scénario et fonctionnait très bien d’ailleurs, mais ça manquait d’élégance.

Tu ne prends pas contrôle de l’agenda, tu check quel est l’événement en cours de ton agenda et tu exécutez les mêmes actions que ton agenda aurait fait en démarrant ton événement.
Dans mon exemple, au début de l’événement Jour de mon agenda j’il aurait du passer le thermostat en mode Eco, c’est ce que je fais dans mon scénario puisqe l’agenda ne le fait pas.

Oui je comprends mais pour le coup c’est encore moins élégant.
Je vais ceuser encore. L’idéal serait de pouvoir ajouter un SI sur les actions avant ou après des évènements.
Peut-être en passant par un virtuel dont la valeur serait l’exécution ou pas de la commande en fonction d’une valeur.

Pour cette partie ca n’a pas d’importance je pense car lorsque le cron va s’exécuter il va voir que l’équipement est désactiver et ne rien faire.

Bonne remarque, je vais vérifier.

Tu as cette solution aussi :

Ne pas mettre d’action dans l’événement, mais mettre la commande En Cours de l’agenda en déclencheur d’un scénario qui gère ensuite toutes les actions selon l’événement qui vient de démarrer. Et du coup c’est aussi ce scénario que tu relances en même temps que tu ré-actives ton agenda. Ça a l’avantage de ne pas avoir 2 fois les mêmes actions dans 2 endroits différents (agenda et scénario).

1 « J'aime »

A vrai dire, si je dois passer par un scénario autant ne pas toucher à ce que j’avais écrit.
2 lignes de scénario suffisent. Un scénario qui se lance tous les jours en fonction de la présence et qui teste le jour qu’on est avant d’exécuter un ON.
Il doit être possible de s’en passer et je vais trouver.

Bonjour,

À la réactivation de l’agenda, les commandes Action de début des événements en cours sont exécutées par l’agenda.

Donc, si je comprends bien, @Mips affirme qu’il est inutile de s’occuper de la prochaine itération lors de la désactivation car le cron, voyant l’agenda désactivé, n’exécutera pas la prochaine itération.
Et @tomdom affirme de son côté qu’il est inutile de se préoccuper de la prochaine itération lors de la réactivation de l’agenda, le plugin s’en chargera en la recréant.
Pour résumer, je n’ai rien faire, le plugin se charge de tout. Ça me va très bien.
Je vérifie, je vous confirme ça et je viens clôturer le sujet.
Bonne fin de week-end

Je ne suis pas d’accord avec @tomdom , mon expérience montre que réactiver un agenda ne relance pas les actions des évènements en cours.

Alors ça s’est dommage.

Mais il faudrait que je revérifie, du coup j’ai le doute

Qui croire ? :smiling_face_with_tear: