fel-x Posté(e) vendredi à 17:24 Signaler Posté(e) vendredi à 17:24 Hello Je suis assez fan du design et je crée facilement des icônes pour Fibaro Par propreté je voudrais associer des icônes à chacun de mes modules, mais je constate que les parents, même s'ils sont souvent "invisibles" par défaut, n'ont pas d'icône. Y a-t-il un moyen pour remplacer ce petit point d'interrogation sur fond gris par l'icône de mon choix? Les modules parents n'ont pas de fonction pour télécharger d'icône visibmement.
Lazer Posté(e) vendredi à 17:42 Signaler Posté(e) vendredi à 17:42 En effet, pas possible de changer l’icône. C'est un détail cosmétique, mais j'ai une préférence pour l'ancien jeu d’icônes par défaut :
Lazer Posté(e) vendredi à 19:04 Signaler Posté(e) vendredi à 19:04 (modifié) Peut être en forçant par l'API. Si tu es motivé, avec les outils de développement (F11) de ton navigateur, tu peux regarder comment est chargé l'icône sur les devices qui permettent le changement via l'interface Web, puis tu essayes de le reproduire en LUA. Modifié vendredi à 19:04 par Lazer 1
fel-x Posté(e) vendredi à 21:48 Auteur Signaler Posté(e) vendredi à 21:48 Bon sang mais c'est bien sûr ! J'ai suivi ta piste et j'ai réalisé que c'est plus simple qu'on ne le pensait. quelques lignes dans une QA et hop... ça fonctionne ! Icône Parent modifié > c'est largement plus esthétique que toutes ces boites avec un gros point d'interrogation. Voici le code pour ceux que ça intéresse : function QuickApp:onInit() local deviceID = 123 local iconID = 1234 self:debug("Attribution de l'icône " .. iconID .. " au module " .. deviceID) local payload = { properties = { deviceIcon = iconID } } api.put("/devices/" .. deviceID, payload) end 2
jojo Posté(e) hier à 10:23 Signaler Posté(e) hier à 10:23 et l'ID que tu réfère, c'est celle qu'on retrouve dans le JSON d'un device ?
fel-x Posté(e) il y a 22 heures Auteur Signaler Posté(e) il y a 22 heures (modifié) Si tu fais ça, tu réfères à l'ID de l'icône est cours d'utilisation pour ce device. Donc dans ta capture d'écran, le device dont tu affiches le JSON emploie l'icône 1129. Tu peux donc attribuer ce icondD à n'importe quel autre device bien entendu avec le petit code LUA ci-dessus. Moi ce que je fais, c'est uploader une icône de mon choix dans l'un des modules enfant. Ensuite j'en récupère l'ID en simulant un "enregistrer sous" par click droit sur l'icône. J'attribue cet iconID au module Parent avec mon code. De cette manière, si je supprime un jour le module, l'icône personnalisée disparaîtra aussi. Voici une petite illustration de ce que j'ai fait ce matin en réinstallant mon thermostat SRT-323, et créé une icône : 1. Inclusion du module 2. Ajoute de mon icône personnalisée dans le module enfant (877) 3. Click-droit sur l'icône uploadée pour en connaître l'ID --> je découvre que c'est le 1143 4. Attribution de l'iconID 1143 au deviceID 876 function QuickApp:onInit() local deviceID = 876 local iconID = 1143 self:debug("Attribution de l'icône " .. iconID .. " au module " .. deviceID) local payload = { properties = { deviceIcon = iconID } } api.put("/devices/" .. deviceID, payload) end Citation [DEBUG] [QUICKAPP875]: Attribution de l'icône 1143 au module 876 5. On admire le résultat CQFD. PS: je n'ai pas testé un reboot pour savoir si l'effet est permanent. Modifié il y a 20 heures par fel-x 2
jojo Posté(e) il y a 19 heures Signaler Posté(e) il y a 19 heures en fait, il faut continuer à creuser le sujeet. Je veux le faire pour un FGS223n et les modules enfants sont donc de type "interrupteur", c'est à dire une icone pour chaque status. Exple : parent Device ID = 1128 Device ID du child qui correspond à R1 : 1732 ID Icône si R1 à on (avec ta méthode): 1003100 ID Icône si R1 à off (avec ta méthode): 10030 d'après le JSON (que R1 soit à On ou Off): 1003 En tout cas, l'icône du parent ne change pas ... (Mais j'ai des idées et je vais creuser le sujet)
fel-x Posté(e) il y a 14 heures Auteur Signaler Posté(e) il y a 14 heures Tu voudrais que l'icône Parent soit dynamiquement changé selon l'état du child ? Avec GEA ce devrait être facile
jojo Posté(e) il y a 1 heure Signaler Posté(e) il y a 1 heure non, pas jusque là (car quoi mettre sur le parent si R1=ON et R2=OFF ???), juste modifier l'icône parent pour faire joli ...
fel-x Posté(e) il y a 11 minutes Auteur Signaler Posté(e) il y a 11 minutes moi aussi c'est pour faire joli. Alors tu peux uploader ton icône dans un autre module et en utiliser l'ID pour l'attribuer à n'importe quel parent ! Pour le coup j'ai créé une scène LUA avec mon code ci-dessus, et j'y ai uploadé plusieurs icônes que j'avais créées pour usage ultérieur. J'emploie la scène à chaque Parent que je veux "enjoliver" : je modifie l'ID du parent et l'ID de l'icône qui peut très bien provenir de n'importe quel module, script ou QA ! Donc rien ne t'empêche d'utiliser un iconID provenant de n'importe où, l'unique raison de l'uploader dans un enfant c'est la logique et la "propreté", mais après... 1
Messages recommandés