Aller au contenu

Est-il possible de changer l'icône Parent d'un module ?


Messages recommandés

Posté(e)

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.

 

parent_icone.thumb.png.f805736403e0d4a7cf8f535fb439dd1d.png

 

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.

 

 

 

Posté(e)

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 :

 

image.png.26a227cce47a88242cecb975061b7d8f.png

 

Posté(e) (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é par Lazer
  • Like 1
Posté(e)

Bon sang mais c'est bien sûr ! :60:

 

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

 

  • Like 2
Posté(e) (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

image.png.3df44f86027933f175269136fbb7f5b8.png

 image.png.b7e4fb8e66e8307b09a4835afb96dd97.png

 

 

2. Ajoute de mon icône personnalisée dans le module enfant (877) 

image.png.7650ac93aaca5dd83081b6bceae47fc0.png

 

3. Click-droit sur l'icône uploadée pour en connaître l'ID --> je découvre que c'est le 1143

 

image.png.e4759304c53c7cb949fa6f1e908d13fb.png

 

 

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 

 

image.png.b8abc49f690f2d965879685538acfcb0.png

image.png.3a2c73075f0fd8cad71748bc17a23724.png

 

CQFD.

 

PS: je n'ai pas testé un reboot pour savoir si l'effet est permanent.

 

Modifié par fel-x
  • Like 2
Posté(e)

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)

Posté(e)

Tu voudrais que l'icône Parent soit dynamiquement changé selon l'état du child ?

Avec GEA ce devrait être facile

 

×
×
  • Créer...