Aller au contenu

Langage LUA


Messages recommandés

Posté(e)

Bonjour,

 

        Je suis en train de découvrir le monde Fibaro avec une HC3 et je tente désespérément de trouver de la documentation sur le langage LUA. J'ai réussi à créer un quickApps relativement simple mais je me pose un paquet de question. Exemple avec la commande QuickApp:updateView(component_name, component_attribute, value) j'ai trouvé que par exemple pour un label, on peut modifier l'attribut "Text" mais a-t-on accès à d'autres attributs (Visible...) idem pour un bouton peut-on le "Disablé" ou le rendre "invisible"...

       J'ai pas mal cherché sur le forum, mais j'ai peut-être raté un quelque chose. 

        Merci d'avance à toutes les personnes qui pourront me guider vers la bonne source d'info.

Posté(e)

Bonjour,

 

il y a 42 minutes, MichelR a dit :

(...) et je tente désespérément de trouver de la documentation sur le langage LUA

 

Pour commencer, si ce n'est pas déjà fait, tu peux lire et relire les 2 docs Fibaro :

Lien vers le manuel Fibaro LUA

Lien vers le manuel Fibaro Quick Apps

 

il y a 42 minutes, MichelR a dit :

(...)

Je suis en train de découvrir le monde Fibaro avec une HC3 (...). J'ai réussi à créer un quickApps relativement simple mais je me pose un paquet de question. Exemple avec la commande QuickApp:updateView(component_name, component_attribute, value) j'ai trouvé que par exemple pour un label, on peut modifier l'attribut "Text" mais a-t-on accès à d'autres attributs (Visible...) idem pour un bouton peut-on le "Disablé" ou le rendre "invisible"...

J'ai pas mal cherché sur le forum, mais j'ai peut-être raté un quelque chose.

Tu verras qu'il y a beaucoup de sujets et tuto principalement dans les rubriques ci-dessous (mais partout ailleurs également) :

Résumé Des Fonctions Lua (Doc Fibaro)

HC 3

Quick App

HC 2 & Lite

 

Concernant ta question plus précise à propos des "updates" de labels et autres boutons, je ne peux pas complètement te répondre.

Je connais la base, modifier/récupérer le texte (et/ou la position d'un slider) par exemple, etc. Mais par contre rendre un bon "invisible" je ne sais pas si c'est faisable. Inactif oui, c'est facile (même pour un débutant en LUA comme moi) avec des conditions de faire en sorte que lorsque tu appuies dessus il ne se passe rien.

 

A+

Fred

Posté(e)

Le problème des 2 pages de manuels de Fibaro, c'est qu'elles ne sont pas du tout didactique, donc il faut relire plusieurs fois, tester, bidouiller, et ça force de galérer ça finit par rentrer dans la tête :P

Et aussi, ne pas oublier de chercher sur Google, ce qui nous ramène souvent sur ce forum, ou le forum officiel de Fibaro.

 

Si on regarde le JSON d'un QuickApp (pour rappel : /api/devices/ID), on voit que les labels comme les boutons ont un attribut visible, donc théoriquement on doit pouvoir agir dessus avec les valeurs true/false.

Cela dit je n'ai jamais essayé, donc on est en plein dans le cas de figure de ma 1ère ligne : tu testes avec updateView(), et si ça fonctionne, tant mieux :) Sinon.... tant pis :( Ou alors il faudra trouver une autre méthode.

 

Il n'y a pas de propriété enable/disable, donc comme le suggère @Fredmas il faut coder sa propre logique en LUA dans le code du bouton... et agir (ou pas) en conséquence. Ce qui est sympa pour l'utilisateur, c'est de mettre un label qui sert juste à afficher une information, par exemple pour dire que l'action demandée est impossible pour telle ou telle raison. En effet, un bouton qui ne réagit pas sans donner de raison, ce n'est guère agréable.

Posté(e)

Merci @Fredmas et @Lazer pour ces infos.

En effet les deux pages de la doc demandent plusieurs lectures et pour arriver à piloter un simple FGS224 j’ai bien galéré!!

 

Le week-end étant propice aux tests, je vais tenter de faire disparaître un bouton et si je trouve une solution je partage!

 

 

Posté(e)

@MichelRSalut. Voici la syntaxe pour faire disparaître un bouton:

self:updateView("btnTest","visible",true)

Il suffit de remplacer changer true par false pour le changement visible/invisible

  • Like 1
Posté(e) (modifié)

Bien vu et merci, je ne connaissais pas. Après un essai à l'instant, effectivement le bouton disparait et devient inactif dans l'aperçu  :P

Les docs officielles étant loin d'être complètes, je me demande comment nous ferions sans notre forum :D

Modifié par Fredmas
Posté(e)

Merci @fredokl. J’avais tenté mais évidemment ave une majuscule  à « visible ». Sans ça marche tout de suite mieux :60: 

 

Cette même commande fonctionne aussi avec un label.

 

 

×
×
  • Créer...