Tuto création widget multi départ horaire par jour simple

Bonjour
Je met ici ma méthode pour créer un widget.
Ici pour récupérer des images et explications pour les placer ici html/data/img;
https://community.jeedom.com/t/widget-multi-action-default-en-v4-sur-des-commandes-info/46772

Pour les boutons slider: dans outils/widget: ajouter et nommer le comme vous voulez


Choisir une image pour on et pour off dans la banque images
1

Création panneau de commande virtuel

Dans Plugins/programmation/virtuel : ajouter et nommer le comme vous voulez

Commandes à créer







Pour la config des commandes Départ 1 à 4

Retourner dans outils/widget et ouvrir le widget précédemment créer et aller
dans Appliquer à


Maintenant il faut mettre en page le panneau du virtuel

Mise en forme1
Mise en forme 2

Créer un scénario sans déclencheur (vous serez pourquoi après)


Maintenant il faut compléter dans les commandes des Départ horaire 1 à 4
Une action après exécution de la commande

Et à chaque fois que vous changé l’heure de chaque départ le scénario se mettra à jour.

Merci à :
@ DanielJ
@ ngrataloup

2 « J'aime »

Bonjour,
Je me permet de compléter ce petit tutoriel avec cette petite astuce que je vous propose pour éviter l’emploi d’un slider pour modifier l’heure, qui est, il faut bien l’avouer, pas très pratique ni ergonomique…

Ainsi, défini comme ceci :

On obtient donc ceci sur un design :

Curseur

De plus, rien n’empêche, alors qu’il s’agit de définir une heure, d’avoir une valeur qui peut être aberrante (20h90 ??? :thinking:).
C’est dû au fait que cette fonction reste dans un système décimal, et ne manipule pas ces nombres dans le système sexagésimal requis pour traiter des heures et minutes.

Comment faire ?
Il y a certainement plusieurs solutions, mais voici ma méthode.

Tout d’abord, créer 4 actions virtuelles (par défaut) : heure+, heure-, minutes+, minutes-
Chaque de ces actions se réfèrent à une information de type numérique :

  • heure_manuelle pour les heures,
  • minute_manuelle pour les minutes.

Ces infos sont crées automatiquement lors de la création des actions correspondantes.

Dans la case valeur, mettre cette formule :

  • Pour heure+ :
    #[...][...][heure_manuelle]#+1 > 23 ? 0 : #[...][...][heure_manuelle]#+1
  • heure- :
    #[...][...][heure_manuelle]#-1 < 0 ? 23 : #[...][...][heure_manuelle]#-1
  • minute+ :
    #[...][...][minute_manuelle]#+5 > 59 ? 0 : #[...][...][minute_manuelle]#+5
  • minute- :
    #[...][...][minute_manuelle]#-5 < 0 ? 55 : #[...][...][minute_manuelle]#-5

[…][…] étant l’objet parent et le nom du virtuel ainsi défini.

A chaque activation sur heure+, etc… on aura donc les heures qui vont s’incrémenter de + ou - 1 heure, et les minutes de + ou - 5 minutes (mais on peut aussi conserver un pas d’une minute si besoin), avec un retour à 0 passé 24 heures ou 60 minutes.

Il reste donc à concaténer heure_manuelle et minute_manuelle. Pour ce faire, il suffit de créer une autre action, où dans la case valeur on va mettre la formule suivante :

#[...][...][heure_manuelle]#*100+#[...][...][minute_manuelle]#

Associé à une info (ici ‹ Heure_reveil_Vincent ›), on a donc notre heure programmée sous la forme HHMM, directement exploitable par une fonction time_op dans un scénario.