Aller au contenu

Champs "Étiquette" et "ID" d'un bouton de VD.


Messages recommandés

Posté(e) (modifié)

Bonjour,

 

Question bête surement !!!

y a t il moyen de récupérer les valeurs  des champs "Étiquette" et "ID" d'un bouton de VD.

 

Dans mon cas, j'aimerais récupérer en variables "1-Jazz" et "Radio1"

J'ai trouve pour les label d'étiquettes ajoutée, genre label1 , mais cela ne fonctionne pas dans mon cas pour ces deux infos

Exemple: local toto = fibaro:getValue(fibaro:getSelfId(), "ui.Radio1.value") ne fonctionne pas et renvoie une valeur de toto vide.

 

 

Que faire ?

 

:13:

 

 

 

image.png.2b78966653dce3de2939af43b86299a4.png

Modifié par DoR.Technique
Posté(e)

Voici mon code:

 

local Cmd1 = "SLI28"
local Cmd2 = "NPR01"
local Cmd3 = "MVL28"

local _deviceIp = fibaro:get(fibaro:getSelfId(), "IPAddress");
local _devicePort = fibaro:get(fibaro:getSelfId(), "TCPPort");
local _maxRetryProcess = 5;

local MyLabel = fibaro:get(fibaro:getSelfId(), "ui.Radio1.value")
fibaro:debug("ML" .. MyLabel) --Affichache de la valeur de l'étiquette

local function _process(retry)
     retry = retry or 0;
     --open the socket

 

image.png.a58c5233a02c50d113df44ad3156eba0.png

 

Posté(e)

Essaie plutôt :

local MyLabel = fibaro:get(fibaro:getSelfId(), "ui.Radio1.caption")

 

Tu trouveras toute la documentation des valeurs retournées par les API à l'adresse : http://<adresse de la HC2>/docs/

 

Posté(e)

mais tu es sur un label d‘un bouton là ? j‘avais pas fait gaffe !

 

du coup je sais pas si c‘est possible !!

 

ça marche sur les objet de type label mais sur un bouton ... ? je sais pas... pense pas...

 

Posté(e)

Avec la fonction suivante, il est possible de récupérer les champs "Étiquette" et "ID" d'un bouton de VD comme demandé initialement.

function btnNameAndCaption(btnId)
	if btnId == nil then btnId = _elementID_; end
	local myDevice = api.get("/devices/"..fibaro:getSelfId());
	for _, row in pairs(myDevice.properties.rows) do
		if row.type == "button" and row.elements then
			for _, btn in pairs(row.elements) do
				if btn.id == btnId then
					return btn.name, btn.caption;
				end
			end
		end
	end
	fibaro:debug("unknown button;");
end

local btnName, btnCaption = btnNameAndCaption();
fibaro:debug("BtnId=".._elementID_..", ID="..btnName..", Étiquette="..btnCaption);

 

 

  • Like 1
×
×
  • Créer...