Aller au contenu

Lister les device eclairage par section


Messages recommandés

Posté(e) (modifié)

Bonjour à tous !

 

Question : y a t'il un moyen simple pour lister les device éclairage par section ?

et bien sur que cette liste soit exploitable en LUA.

 

J'ai fait ça qui marche très bien, mais franchement... à s'arracher les cheveux !!!

un tableau de tableau pour y stocker les valeurs... Y a certainement plus simple non ?

--[[
%% properties
%% events
%% globals
--]]

local rooms = api.get("/rooms")
local sections = api.get("/sections")
local devices = api.get("/devices")

local liste={} 
local C=1 --index des colonnes
local L=1 --index des lignes

liste[L]={} --création d'un tableau dans la première ligne

for i,_ in ipairs(sections) do --pour chaque section
    
	for j,_ in ipairs(rooms) do --pour chaque pièce
		if rooms[j].sectionID == sections[i].id then --si l'id de la pièces = l'id de la section
        
			for k,_ in ipairs(devices) do --pour chaque device
				
				if devices[k].roomID == rooms[j].id --si l'id du device = l'id de la pièce
					and devices[k].properties.isLight == true --et que c'est une lumière
					and devices[k].visible == true then --et qu'il est visible
          	          	
					if C==1 then --ajoute l'id de la section dans la première colonne de la ligne
						liste[L][C] = sections[i].name 
						print("<font color = 'magenta'>L"..L.."C"..C.." "..liste[L][C].."</font>")
					end
					
					C=C+1 --passe à la colone suivante
					liste[L][C] = devices[k].name --ajoute l'ID trouvé
					print("L"..L.."C"..C.." "..liste[L][C])
				end        
			end      
		end
	end
	
	--on passe à la section suivante
	L=L+1 --nouvelle ligne pour nouvelle section
	liste[L]={} --création d'un nouveau tableau dans la nouvelle ligne
	C=1 --retour à la première colonne
end

résultat du debug :

 

[DEBUG] 10:30:23: L1C1 Sous sol
[DEBUG] 10:30:23: L1C2 Eclairage Chaufferie
[DEBUG] 10:30:23: L2C1 Rez de chaussée
[DEBUG] 10:30:23: L2C2 Eclairage Armoire
[DEBUG] 10:30:23: L2C3 Eclairage Murs
[DEBUG] 10:30:23: L2C4 Eclairage Couloir
[DEBUG] 10:30:23: L2C5 Canape GH
[DEBUG] 10:30:23: L2C6 Canape DR
[DEBUG] 10:30:23: L2C7 Bureau
[DEBUG] 10:30:23: L2C8 Ecl. Porte Entrée
[DEBUG] 10:30:23: L2C9 Eclairage SdB
[DEBUG] 10:30:23: L2C10 Eclairage WC
[DEBUG] 10:30:23: L2C11 Debarras
[DEBUG] 10:30:23: L3C1 Etage
[DEBUG] 10:30:23: L3C2 ChevetG
[DEBUG] 10:30:23: L3C3 ChevetD
 

 

Modifié par jjacques68
×
×
  • Créer...