[tools] Générateur de templates et widgets (V4)

@Dapolux nickel, ca marche bien.
Juste une info que j’ai pu observer. Lorsqu’on lit un favoris défini dans LMS, il n’est pas possible d’utiliser l’action pause.

Autre chose aussi, j’ai voulu ajouter les boutons ‹ repeat › et ‹ shuffle › mais j’ai pas l’impression que ca marche. Dans la classe squeeze_tools.class, je n’ai rien trouvé pour ces actions. Je voulais avoir confirmation que c’est pour cela que ca ne fonctionne pas.

Pour le repeat et le shuffle, je ne peux pas te dire, je ne les utilise pas. Mais dans tous les cas, tu peux toujours créer 2 commandes dans tes équipements coté tools (avec le nom que tu veux), commandes qui pointent sur la commande repeat et la commande shuffle de ton choix (en gros le repeat et le shuffle de la SB), puis dans l’html tu inclue les commandes.

Pour l’action pause, de mon coté cela fonctionne sans problèmes.

Bonsoir @Dapolux,

J’avance petit à petit grâce à ces informations et conseils.
Je coince actuellement sur l’action pour synchro.

Tu dis que tu appelles un scénario. Tu pourrais partager un screenshot ?
Dans ton virtual tu as défini comment l’appel vers le scenario pour l’action on/off ?

Merci d’avance.

Hello,

Pas d’appel depuis le virtual, j’ai un bouton on/off qui change une info du virtuel, et je met cette valeur en déclencheur du scenario.
Le virtuel:


Le déclencheur:
image
Le scenario:

salut

Super plugin, bravo @ZygOm4t1k !

Je vois tout de suite l’intérêt pour créer des widgets a partir de plusieurs équipements afin d’éviter de multiplier les virtuels comme pour l’hygrothermographe.

Par contre j’avoue que j’ai plus de mal a comprendre le concept de template: je m’attendais a pouvoir créer mes propres templates par extension de ceux du core avec des infos supplémentaires et ensuite de les instancier a la manière de l’outil widget du core
ex nouveau template cmd.info.numeric.tmplmultistate_custom => widgets température, luminosité, hygrométrie…

En fait je n’ai réussi qu’a les appliquer directement a une/des commandes comme avec le plugin pimp-jeedom de @Salvialf. Selon moi ca en réduit l’intérêt vu que le code doit à chaque fois être dupliqué…J’ai raté quelque chose?

Salut.

Pas tout compris.

Créer un seul template pour tout type de commande c’est ça? Et selon la commande tu ajoutes des infos spécifiques?

Oui c’est tout a fait ca. Un moyen de customiser les templates du core tout en limitant le code custom et en simplifiant la maintenance.
Par ex mes widgets numeric multistate ne diffèrent que par le nombre et le nom des images affichées et les seuils

Salut,

J’ai peut-être mal compris mais ça paraît réalisable avec l’outil widgets du core. Tu peux créer un template générique avec des tags puis personnaliser les commandes via des paramètres optionnels.

Un exemple ici:

Effectivement j’avais commencé comme ca mais impossible d’ajouter du code au template du core d’ou la nécessité de le réécrire. ex:

// code a paramétrer selon le widget (seuils, nombre de lignes, nom des images)
         	if (state < 10) 
                cmd.find('.iconCmd').html('<img src="'+ img0 +'" style="height:80%;width:80%;">');
            else if (state >=10 && state < 15) 
                cmd.find('.iconCmd').html('<img src="'+ img20 +'" style="height:80%;width:80%;">');
            else if (state >=15 && state < 20)
                cmd.find('.iconCmd').html('<img src="'+ img40 +'" style="height:80%;width:80%;">');
            else if ...
                cmd.find('.iconCmd').html('<img src="'+ imgError +'" style="height:80%;width:80%;">');          

// gestion du min-max - customisation du template core
            cmd.find('.value').css('color',getTextColor());
            var min = is_numeric('#min#')? parseFloat('#min#'): 0;
            var max = is_numeric('#max#')? parseFloat('#max#'): 0;
          
            if ((min != 0) && (state < min)) 
              cmd.find('.value').css('color','#00ffff');
            if ((max != 0) && (state > max))
              cmd.find('.value').css('color','#ff0000');	

Je pourrais tjs modifier le template par défaut du core mais ca n’est pas très propre.
J’ai essayé de dupliquer le template cmd.info.numeric.tmplmultistate dans le même répertoire mais l’outil widget par défaut ne le voit pas.

Est ce que je fais fausse route?

@ZygOm4t1k tu ne m’as pas répondu:
Est ce que le mode « template » correspond a la creation de widgets custom ou c’est moi qui n’ai pas compris la philosophie du truc?

Le plugin est autonome et ne dépend pas de la partie widget du core.

Tu crées un template qui se base sur « cmd.info.numeric.multistate » (dans la liste déroulante).

Tu dois uploader les images via le bouton icones.

Tu modifies le code comme tu le souhaites et tu assignes ce template à tes commandes.

Tu peux par exemple te baser sur le generic_type pour le nom des images (lumières , volets prises ,…)

Comme ça un seul template gère une grande partie des commandes

ok c’est bien ce que j’avais compris merci

Hello à tous,
ce plugin a l’air top mais je ne le trouve pas sur le market.
J’ai même affiché tous les plugins de @ZygOm4t1k mais « Tools » ne semble pas exister.
Est-il toujours d’actualité ?

Merci d’avance !
Seb

Bonjour,

Vous n’avez pas du lire les précédentes réponses…

Vous avez activé l’accès aux bêtas depuis votre compte Market ?
Vous avez Jeedom v4 ou + ?

J’ai pourtant bien lu les messages précédents justement.
J’ai pris soin de cocher la case pour l’accès aux plugins beta (et valider)


Et je suis en version v4.1.22 sur ma jeedom smart

Donc, quand vous aller ici :
Jeedom Market

Vous devriez voir le plugin.

Mode opératoire classique :
Ce rendre ici : Jeedom Market
S’identifier (important)
Aller sur le menu : Plugin
Cocher la case bêta (doit alors passer en bleu)
Rechercher « tools »
=> Il doit être présent.

Depuis Jeedom :
Plugins → Gestion des Plugins
Market
Rechercher : Tools

Merci !
En cliquant sur le lien direct ça a fonctionné !
Mais peut être y a-t-il une latence entre le moment ou j’ai activé l’affichage des versions beta et celui ou c’est réellement effectif !
Désormais quand je recherche, je le vois bien !

Merci

Bonjour,

J’utilise ce plugin également et je confirme que si tu le recherches par le nom via le moteur (en étant inscrit au béta), il n’apparait pas… Par contre avec le lien cela fonctionne.

Bonjour,

Si cela fonctionne (il l’indique même), mais pour cela, il faut se connecter et ensuite il faut FILTRER avec la case Bêta.