Aller au contenu

Interface : Texte En Gris


Nico

Recommended Posts

confirme, aussi avec le blablabla de @Berale depuis une scene sur un VD sans MainLoop, c'est permanent ;-)

 

C'est TOP !!

 

vous pouvez me reexpliquer le coup du Label, pas bien compris hihi

Lien vers le commentaire
Partager sur d’autres sites

Euh et comment tu créer cette propriété ???

Du coup Berale, sans mainloop, cela reste affiché en continu, même si tu fermes et ré-ouvres ta session sur la HC2 ??

Lien vers le commentaire
Partager sur d’autres sites

@pepite en gros :

Chaque VD ouverture de porte se compose de :

  • 2 boutons
    • Ouvert
    • Fermé
  • 2 labels
    • Last Update
    • Last Change

 

Lors d'un événement EnOcean, la passerelle FHEM vient cliquer sur le bouton Ouvrir ou Fermer du VD, au travers de l'API de la HC2.

Chaque bouton contient seulement 2 lignes de codes afin de mettre à  jour les 2 labels avec le statut de la porte, ainsi que le timestamp.

 

L'idée suggérée c'est juste d'en profiter pour mettre à  jour le texte dans le log sous l'icone du VD.

Lien vers le commentaire
Partager sur d’autres sites

Pepite, alors pour un détecteur de mouvements chez moi par exemple :

 

Premier bouton de mon VD (Repos) :

local deviceId = fibaro:getSelfId();
fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Repos")

Second bouton (Alarme) :

 

local deviceId = fibaro:getSelfId();
fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Alarme")
fibaro:call(deviceId, "setProperty", "ui.Label2.value", os.date("%m %B %Y - %H:%M:%S"))

Mainloop :

local deviceId = fibaro:getSelfId();
local value = fibaro:getValue(deviceId, "ui.Label2.value")
fibaro:log(value)
fibaro:call(fibaro:getSelfId(), "setProperty", "logTemp", "TxtGray" )

Et voilà  le travail. Maintenant si je peux virer le main loop, c'est encore mieux, je testerai ce soir.

Lien vers le commentaire
Partager sur d’autres sites

ok merci messieurs @nico et @lazer.

 

Je n'avais pas compris que vous vouliez récuperer la valeur d'un Label pour le mettre dans le LOG ;-)

 

Testé aussi depuis les serveurs home.fibaro, c'est permanent tant qu'on ne ferme pas la session..

Le MainLoop dans ce cas a l'air obligatoire ;-)

Lien vers le commentaire
Partager sur d’autres sites

Je ne vois pas les choses comme toi.

Mettre dans le main loop c'est réafficher toutes les 3 secondes, pas un affichage permanent.

En ce qui me concerne, j'affiche depuis une scène, donc pas de main loop et comme ma session est en continue je ne perds rien. :)

Lien vers le commentaire
Partager sur d’autres sites

Oui, sauf que moi je l'ouvre par exemple de chez moi au boulot, et boom, je n'ai plus l'info, donc cela ne va pas. Moi je veux l'info partout, quelque soit la session, le lieu ou la personne qui se connecte.

Avec le mainloop, cela est affiché en permanence, car cela s'efface après 3s, et vu qu'il rafraîchi au bout de 3s, on est bien sur du permanent au niveau affichage.

 

Mais effectivement, chacun son besoin.

Lien vers le commentaire
Partager sur d’autres sites

Encore un petit test:

 

J'ai mis:

fibaro:log("blablabla")

dans le bouton d'un VD et le texte reste 9s.

 

Je l'ai ensuite remplacé par:

fibaro:call(fibaro:getSelfId(), "setProperty", "log", "blablabla" );

et le texte est permanent.

 

Si ça peut aider.

Lien vers le commentaire
Partager sur d’autres sites

je ne comprends pas, c'est exactement identique au test que tu as fait hier à  10h20 non ?

Pourtant Nico disais que ce n'est pas persistant.

 

Désolé je ne peux pas faire le test là 

Lien vers le commentaire
Partager sur d’autres sites

Hier, j'ai commencé par un test dans le main loop, puis depuis une scène pour afficher dans un VD.

 

L'affichage depuis une scène est permanent tant que tu ne quittes pas la session ou que tu ne fais pas un refresh de la page.

 

ici, je compare le comportement de fibaro:call et fibaro:log depuis un bouton de VD et il n'est pas le même.

fibaro:log reste 9s et fibaro:call est permanent.

Je trouve ça étrange et ça montre une fois de plus que la programmation de fibaro est très particulière.

Lien vers le commentaire
Partager sur d’autres sites

Quand tu fais un fibaro:log(...) cela doit déclencher un timer qui dans 9sec va effacer le texte. Alors que quand tu attaques directement le "call" tu court-circuites le timer.

Lien vers le commentaire
Partager sur d’autres sites

Je l'ai ensuite remplacé par:

fibaro:call(fibaro:getSelfId(), "setProperty", "log", "blablabla" );

et le texte est permanent.

 

Si ça peut aider.

@BEraele24,

C'est EXACTEMENT ce à  quoi je souhaite arriver, mais ça ne fonctionne pas chez moi : il est dans un bouton, et rien ne s'affiche.

Je suis en firmware 4.063b. Es-tu toujours en 4.056 ?

Lien vers le commentaire
Partager sur d’autres sites

Dans mes tests j'avais mis la fameuse ligne avec le "blablabla" puis je l'avais supprimée.

Mais régulièrement le "blablabla" revenait. J'ai pensé m'être trompé et j'ai cherché vainement cette ligne un peu partout, mais rien.

Alors, pris d'un doute, j'ai fait un reboot de la box et maintenant tout va bien.

 

Je n'ai jamais aimé le main loop des VD, voilà  une raison de plus. :angry:

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...