Noyde Posté(e) le 10 mai 2020 Signaler Posté(e) le 10 mai 2020 Bonjour, J'ai un souci avec les QuickApp de type color controler. Lorsque j'utilise le slider de l'app mobile ou les couleurs favorites je n'arrive pas à récupérer le code "rgbw" complet, seulement le "r". Par contre si je fait un call: fibaro.call(134, "setColor", "204,75,194,0") Avez-vous une idée? Merci d'avance.
jjacques68 Posté(e) le 10 mai 2020 Signaler Posté(e) le 10 mai 2020 connais pas, mais tu peux poster le code du QA en question ?
Noyde Posté(e) le 10 mai 2020 Auteur Signaler Posté(e) le 10 mai 2020 J'ai refait un QA tout propre, voila le code généré à la creation: -- Color controller type should handle actions: turnOn, turnOff, setValue, setColor -- To update color controller state, update property "value" with integer 0-99 function QuickApp:turnOn() self:debug("color controller turned on") self:updateProperty("value", 99) end function QuickApp:turnOff() self:debug("color controller turned off") self:updateProperty("value", 0) end -- Value is type of integer (0-99) function QuickApp:setValue(value) self:debug("color controller value set to: " .. tostring(value)) self:updateProperty("value", value) end -- Color is type of string, with format "r,g,b,w". -- Eg. relaxing forest green, would look like this: "34,139,34,150" function QuickApp:setColor(color) self:debug("color controller color set to: " .. color) self:updateProperty("color", color) end -- To update controls you can use method self:updateView(<component ID>, <component property>, <desired value>). Eg: -- self:updateView("slider", "value", "55") -- self:updateView("button1", "text", "MUTE") -- self:updateView("label", "text", "TURNED ON") -- This is QuickApp inital method. It is called right after your QuickApp starts (after each save or on gateway startup). -- Here you can set some default values, setup http connection or get QuickApp variables. -- To learn more, please visit: -- * https://manuals.fibaro.com/home-center-3/ -- * https://manuals.fibaro.com/home-center-3-quick-apps/ function QuickApp:onInit() self:debug("onInit") end
jang Posté(e) le 10 mai 2020 Signaler Posté(e) le 10 mai 2020 (modifié) QuickApp function: turnOn () self: debug ("color controller turned on") self: updateProperty ("value", 99) end QuickApp function: turnOff () self: debug ("color controller turned off") self: updateProperty ("value", 0) end - Value is of integer (0-99) QuickApp function: setValue (value) self: debug ("color controller value set to:" .. tostring (value)) self: updateProperty ("value", value) end - Color is type of format r, g, b, w. - Eg. relaxing forest green, would look like this: 34,139,34,150 QuickApp function: setColor (r, g, b, w) local color = table.concat ({r, g, b, w}, ",") self: debug ("color controller color set to:", color) self: updateProperty ("color", color) end QuickApp function: onInit () self: debug ("onInit", self.name) self: turnOn () end Modifié le 10 mai 2020 par jang 2
Noyde Posté(e) le 10 mai 2020 Auteur Signaler Posté(e) le 10 mai 2020 (modifié) Super, merci beaucoup ca fonctionne! Autre soucis avec ce QA, sur l'app mobile il y a 2 sliders, un pour la couleur et un pour intensité: Mais interaction des 2 appellent la methode setColor. pour moi le 2eme devrait appeler setValue Modifié le 10 mai 2020 par Noyde
jang Posté(e) le 10 mai 2020 Signaler Posté(e) le 10 mai 2020 Oui, ils diminuent l'intensité en abaissant les valeurs RGB ...
Noyde Posté(e) le 10 mai 2020 Auteur Signaler Posté(e) le 10 mai 2020 Merci beaucoup Jang pour ces réponses, 3 jours que je galère avec ce code RGB !! je vais pouvoir convertir en hexa et envoyer ça à mon bandeau led Yeelight via Jeedom!!
Messages recommandés