Compte à rebours jusqu'à un événement de l'agenda

Bonjour !
Je souhaiterais afficher sur mon design une tuile avec un compte à rebours (pas besoin qu’il affiche les secondes, juste le nombre de jours, et heures éventuellement) jusqu’à un événement programmé dans le plugin.

Est-ce que c’est possible ?

Bonjour,
Oui, avec un virtuel comportant la commande info du compteur.
Par contre je ne sais pas si on peut faire le calcul directement dans le virtuel ou si un scénario se déclenchant tous les jours à minuit pour décrémenter le compteur est nécessaire.

il faut utiliser

time_diff(date1,date2[,format, round])` : Permet de connaître la différence entre deux dates (les dates doivent être au format AAAA/MM/JJ HH:MM:SS). Par défaut, la méthode… et le tag #date# qui renvoit la date du jour et le mois

Voir la doc des scénarios: https://doc.jeedom.com/fr_FR/core/4.2/scenario

J’aurais dis la même chose :

  • Soustraire la date « objectif » (récupéré sur l’agenda) à la date du jour. Transformer le résultat en format souhaité
  • Mettre à jour toute les heures
  • Récupérer également le nom de l’événement dans le même virtuel
  • Dans une tuile sur le dashboard tu peux ajouter du texte « Cette événement aura lieu dans: »

Merci de vos réponses.
J’ai un petit niveau sous Jeedom, donc je vais essayer et je reviens ici si ça coince ! :smiley:

J’ai mis ça dans les commandes d’un virtuel (Info virtuelle/autre) :
time_diff(NOW,2022/09/22 03:05:05)

Ca m’affiche mon nombre de jours entre la date du jour et la date prévue donc ça me va. Merci !

Salut,

time_diff(NOW,2022/09/22 03:05:05,dhms)

image

Bonjour,

Donc désolé mais la vrai réponse est non (il faut lire la question jusqu’au bout) car il n’est pas possible de récupérer la date du prochain événement dans le plug-in agenda.

Si la récupération de la date depuis l’agenda pour informer d’un évènement à venir n’est pas possible.

Alors j’ai pensé à un virtuel
ajout event

(J’ai jamais fait, alors ça ressemble à rien).

Mais ceci serait la tuile pour programmer un évent avec date et heure
(Programmer une heure j’ai déjà pour faire un réveil)

Les slides permettraient de choisir la date (Jour/Mois/année)
Comme tu peux le voir, j’ai pas réussi à l’afficher dans un format lisible.

Puis une liste déroulante pour définir un numéro d’évent (Event1/event2/event3…)

Puis une autre tuile (que je n’ai pas fait) qui prend les informations programmées depuis le premier virtuel et soustrait la date et l’heure pour annoncer que l’évènement aura lieu dans « … »

Ensuite, si tu veux être avertir à l’avance de l’évènement tu peux le faire via un scénario qui t’envoie une notification.

Comme il ne s’agit pas de ta demande initiale; je soumet juste l’idée et arrête mes recherches. Ce n’est surement pas pratique comme ça pour.

Je n’apporte que mes idées :wink:

1 « J'aime »

C’est intéressant de creuser le sujet quoiqu’il en soit ! Merci de tes remarques :slight_smile:

Là ou je sèche pour pouvoir t’aider c’est :

-Réussir à obtenir le bon format
-De ça, comparer la date créer avec la date du jour

Si tu veux commencer à créer ton programmateur d’heure voici pour t’aider:

La première chose à créer c’est
« Sélectionner heure »
« Sélectionner minute » (t’en à surement pas besoin)

dans la case à coté tu met « heure_info » qui sera ton état sélectionné
Valeur min, valeur max c’est la plage que tu souhaite restreindre. Si tu veux toute la plage horaire d’une journée alors tu mets « 00 - 23 »
Dans la roue crantée à côté de tester tu choisi un affichage en slide ou en bouton (c’est toi qui voit)

Quand tu sauvegarde tu auras automatique l’info heure_info qui va s’afficher.

Infos réveil c’est pour l’avoir au format lisible, quand t’as juste l’heure sans minute je pense pas que ce soit utile.

Infos backreveil c’est l’information au format non lisible que Jeedom sait interpréter dans les scénarios qui est issue de l’information Réveil.

On/off c’est un interrupteur virtuel. Ne prends pas en compte

Dans tous les cas, si tu veux juste l’heure (pas de minute ni seconde), je pense qu’il te faut quand même l’afficher en « 0600 » pour jeedom car 06 ne suffira surement pas.

Voilà, si cette solution te plait, j’espère que quelqu’un passera pour t’aider sur la date, le format et la comparaison :wink:

edit: voilà ce que tu devrais obtenir:
heure

Sinon il y a ce topic qui parle de compte à rebours :

Si ça peut t’aider
ça m’a bien aider pour des tempo avant extinction quand quelqu’un quitte une pièce

1 « J'aime »

Bonsoir,

après quelques expérimentations voilà où j’en suis :
ajout event

event1

Sur le virtuel pour modifier les paramètres de l’événement tout fonctionne. L’heure s’ajoute à la date et il suffit d’écrire dans Titre ou Message pour écrire l’intitulé de l’évènement
Le compte à rebours s’affiche sur la tuile de l’évènement seulement.

Seul soucis que je n’arrive pour l’instant pas à résoudre c’est le maintiens de l’information sur le virtuel Event1. En effet, quand je change d’évent dans le menu déroulant, les informations s’efface. Quand on visualise la configuration du virtuel c’est tout à faire normal. Mais je ne trouve pas de syntaxe qui puisse faire retenir l’information.

Je drop tel quel les virtuels, si @bpi1 ou d’autres personnes ont des questions sur les virtuels je peux y répondre. Si quelqu’un à une solution je prends :slight_smile:

virtuel pour modifier les events


virtuel event1

Tout ne marche pas parfaitement. Une ébauche à retravailler…

1 « J'aime »

@bpi1

Démo :


Modificateur d’évènement page 1:

Modificateur d’évènement page 2:

virtuel évènement 1 :

virtuel évènement 2 :

Scénario de sauvegarde des évènements avec syntaxe « event » (déclencheur : validation dans le virtuel du modificateur, qui est mis à 1 dans les réglages de la commande message):

Si tu as besoin de 5, ou 10 events, la seule chose que tu as à faire c’est le rajouter dans la syntaxe liste du modificateur d’évènement, de faire son virtuel (event6) en dupliquant les premiers (tu peux avoir des erreurs, comme j’ai rencontré, demande moi si c’est le cas j’ai réussi à corriger). Puis de le rajouter dans le scénario.

Ensuite, tu peux également faire un scénario de déclenchement d’évènement pour prévenir de l’évènement ou d’anticiper des déclenchements de scénarios par rapport à un numéro d’évent.

Par exemple l’évent 1 déclenchera TEL EQUIPEMENT lorsque la date est défini en faisant

heure event1 == #time# && date event1 == #date# && année event1 == #annee#

Tu as des réglages à faire pour certaines commandes de virtuel, demande moi

Seul inconvénient c’est de vérifier que la date existe car le virtuel ne le fait pas pour toi!

Merci pour le challenge :wink:

Oops:

#[Cellule test][Event 1][back_heure_scenario]# < #time# && #[Cellule test][Event 1][back_moisjour_scénario]# <= #date# && #[Cellule test][Event 1][annee_info]# <= #annee#

event   #[Cellule test][Event 1][Evènement dans : ]#  FIN D'EVENEMENT

Doit être mis dans un scénario qui s’actualise toute les heures


update :

dans la fonction time_diff, now peut être remplacé par #time# pour n’afficher que jour/h/min restante

time_diff(#time#,#[Cellule test][Event 1][back_a_m_j]# #[Cellule test][Event 1][heure_info]#:00,dhms) 

Le virtuel doit être actualisé beaucoup moins fréquemment que le scénario « sauvegarde ». Si ils sont mis à jour au même moment le décompte continuera d’indiquer « 1h restante » alors qu’il est au contraire fini d’une heure.

Le virtuel peut être actualisé toute les dix minutes (par exemple, ou plus) et le scénario toute les minutes. Ce qui évite aussi de surcharger.

Pendant 1 minute, la tuile event peut afficher un timing alors qu’il est terminé. Les 9 autres minutes, « fin d’évent » est bien affiché.

Je n’ai pas de solution à ça pour l’instant. Le mieux aurait été d’agir directement sur l’auto actualisation du virtuel sous la condition, par le scénario sauvegarde, que le temps soit dépassé. Lorsque ce n’est pas/plus le cas, le virtuel tourne. Je pense pas que ce soit possible.