flamalex Posté(e) le 9 novembre 2015 Signaler Posté(e) le 9 novembre 2015 Si c'est pour consulter UNIQUEMENT sur interface web, alors tu peux insérer du code html dans l'étiquette par exemple, mais c'est pas terrible... fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label1.value", '<img height="48" width="48" src="https://cdn1.iconfinder.com/data/icons/ui-icons-2/512/checkbox-on-1-01-128.png" />') Nicolas ca fonctionne egalement, mais comme tu disais, uniquement sur web, pas sur le phone then fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label4.value", '<img height="48" width="48" src="https://cdn1.iconfinder.com/data/icons/ui-icons-2/512/checkbox-on-1-01-128.png" />') --fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label4.value", "MARCHE") else fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label4.value", '<img height="48" width="48" src="https://cdn1.iconfinder.com/data/icons/ui-icons-2/512/checkbox-off-1-01-128.png" />') --fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label4.value", "ARRET") end
Nikko Posté(e) le 9 novembre 2015 Signaler Posté(e) le 9 novembre 2015 est il possible dans le message, qu'au lieu d'afficher T°consigne + hysteresis, il m'affiche le resultat? exemple: la T° sonde de 20° est < 21-0.3 ====== T°sonde de 20° est < 20.7° msg = "Chaudière ON "..tonumber(fibaro:getValue(id['TEMPERATURE'], 'value')).. "< "..tonumber(fibaro:getGlobalValue('consigneT')).. " - "..tonumber(fibaro:getGlobalValue('hysteresis')).. " depuis 1 minute Mode AUTO" Il s'agit juste de réaliser la soustraction au lieu de concatener un chiffre, un moins et un chiffre msg = "Chaudière ON "..tonumber(fibaro:getValue(id['TEMPERATURE'], 'value')).. "< ".. tonumber(fibaro:getGlobalValue('consigneT'))- tonumber(fibaro:getGlobalValue('hysteresis')).. " depuis 1 minute Mode AUTO" Nicolas 1
flamalex Posté(e) le 10 novembre 2015 Signaler Posté(e) le 10 novembre 2015 Salut Nico, ca fonctionne tres bien merci il me reste à ajouter des couleurs et j'aimerai simplifier l'hysteresis sur le VD, il prends "2 labels" d'affichage, de plus le code que j'ai recup n'est pas tres net pour moi ce serait bien de tout réunir dans le même label et de pouvoir également mettre un hysteresis de 0 mini à 1,5 max --[[ %% autostart %% properties %% globals --]] local statut = fibaro:getGlobalValue('SceneON') local icon = { AUTO = 105 , MANU = 106 } local hysteresis; local id = {}; id.display = 123; function round(num, idp) local mult = 10^(idp or 0) return math.floor(num * mult + 0.5) / mult end local w = round((3+(_sliderValue_)*(19-3)/100)/10, 1); --fibaro:setGlobal("hysteresis", "value") fibaro:setGlobal("hysteresis", w) --fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label3.value", w) local hysteresis; local id = {};id.display = 123; -- on va renseigner la variable "hysteresis" fibaro:setGlobal('hysteresis', fibaro:getGlobalValue('hysteresis')); hysteresis= fibaro:getGlobal("hysteresis"); fibaro:debug(hysteresis); -- puis on affiche la valeur de la variable dans le champs hysteresis label3 fibaro:call(id.display, "setProperty", "ui.Label3.value", hysteresis.." °C"); -- et on repasse l'icon en haut a droite en mode initial if (statut == "ON") then -- Mode AUTO fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", icon['AUTO']) else -- Mode MANU fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", icon['MANU']) end
Nikko Posté(e) le 10 novembre 2015 Signaler Posté(e) le 10 novembre 2015 Désolé mais là je ne comprends pas trop ce que tu veux faire.... Tu veux supprimer le Label "HYSTERESIS" et que la valeur apparaisse au niveau du slider, c'est à dire avoir 0/3 au lieu de 0/100 ? Si c'est le cas je ne pense pas que cela soit possible. Quant à ton bout de code à moins d'avoir loupé un truc, tu calcules ton hysteresis dans la variable w puis tu la stockes dans une VG hysteresis pour la récupérer ensuite pour la remettre dans le label. Tu pourrais limiter déjà à : --[[ %% autostart %% properties %% globals --]] local statut = fibaro:getGlobalValue('SceneON') local icon = { AUTO = 105 , MANU = 106 } local id = {}; id.display = 123; function round(num, idp) local mult = 10^(idp or 0) return math.floor(num * mult + 0.5) / mult end -- Calcul Hysteresis en fonctionde la valeur du slider local hysteresis = round((3+(_sliderValue_)*(19-3)/100)/10, 1); -- Stockage dans variable Globale "hysteresis" fibaro:setGlobal('hysteresis', hysteresis); fibaro:debug("Valeur Hysteresis: ".. hysteresis) -- puis on affiche la valeur de la variable dans le champs hysteresis label3 fibaro:call(id.display, "setProperty", "ui.Label3.value", hysteresis.." °C"); -- et on repasse l'icon en haut a droite en mode initial if (statut == "ON") then -- Mode AUTO fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", icon['AUTO']) else -- Mode MANU fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", icon['MANU']) end Nicolas 1
flamalex Posté(e) le 11 novembre 2015 Signaler Posté(e) le 11 novembre 2015 en effet, c'est plus propre comme ça. oui, pour le slider, tu as bien compris, à voir maintenant si c'est possible je souhaiterai que le label 3 disparaisse, il faudrait que l'info du label 3 (exemple: 0,3°) soit affichée dans le slider à la place de 0/100
Messages recommandés