Page 2 sur 3

Re: Recherche scipt

Publié : 23 août 2019, 20:58
par banditos
banditos a écrit : 23 août 2019, 12:21 Bonjour,
j'ai créé un dummy virtuel T°/H evec un idx de 789, ma sonde physique T°/H a 733 d'idx, j'ai modifié le script, je l'ai placé dans le fichier lua de Domoticz comme à chaque fois et pourtant ma sonde virtuelle n'est pas mise à jour, si quelqu'un a une idée.

Merci

Code : Tout sélectionner

-- arrondire
function round(num, dec)
	if num == 0 then return 0
	else local mult = 10^(dec or 2)
	return math.floor(num * mult + 0.5) / mult
	end
end

-- température
function getTempIdx(idx)
	return round(tonumber(otherdevices_temperature[GetDeviceNameByIdx(idx)]),1)
end

-- humidité
function getHum(device)
	return round(tonumber(otherdevices_humidity[GetDeviceNameByIdx(idx)]),1)
end

-- retourne le nom du switch selon son IDX
function GetDeviceNameByIdx(deviceIDX)
	for i, v in pairs(otherdevices_idx) do
		if v == deviceIDX then
			return i
		end
	end
	return 0
end


commandArray = {}

local ArraySonde = {}
--sonde est le numero idx du dispositif affichant la Temperature
--idx est le numero idx du dispositif virtuel à mettre à jour

ArraySonde[#ArraySonde + 1] = {sonde = 733, idx = 789}



--Parcours le Tableau
for key, valeur in pairs(ArraySonde) do
	if (devicechanged[GetDeviceNameByIdx(valeur.sonde)]) then
		--print(GetDeviceNameByIdx(valeur.sonde)..'-'..getTempIdx(valeur.sonde))
		commandArray[#commandArray+1]={['UpdateDevice'] = valeur.idx..'|0|'..getTempIdx(valeur.sonde)}
	end
end
	
return commandArray	
Personne pour m'aider?

Re: Recherche scipt

Publié : 23 août 2019, 21:06
par vil1driver
J'avais supprimé ton message doublon,
j'ai pensé à une erreur mais là tu relances clairement.

Ce n'est pas dans les bonnes pratiques, sache le.
Cela risque même d'être contre productif..

Pour revenir à ton problème, en quoi au juste ce changement d'idx te gêne ?

Re: Recherche scipt

Publié : 24 août 2019, 11:54
par denis_brasseur
banditos a écrit : 23 août 2019, 20:58 Bonjour,
j'ai créé un dummy virtuel T°/H evec un idx de 789, ma sonde physique T°/H a 733 d'idx, j'ai modifié le script, je l'ai placé dans le fichier lua de Domoticz comme à chaque fois et pourtant ma sonde virtuelle n'est pas mise à jour, si quelqu'un a une idée.

Merci

Personne pour m'aider?
Le script initial est prévu pour récupérer la température d'un device température, et mettre ensuite à jour la valeur d'un device température.
Toi, tu essaye de récupérer la valeur d'une sonde physique T°/H. et de mettre ensuite à jour les valeurs d'un dummy virtuel T°/H.
C'est peux être cela qui coince.

Mais il est vrai que le changement d'idx suite à changement de device n'est pas un phénomène très gênant, il suffit d'appliquer la méthode précisé plus haut.

Re: Recherche scipt

Publié : 24 août 2019, 12:38
par balajol
Bonjour tous,
Pour amener ma petite réflexion à ce sujet :) :)
En effet pas très compliqué pour la personne qui gère la domotique de résoudre ce problème de changement d idx mais il n en n est pas de même pour la conjointe , conjoint ou les enfants..
Le condensateur dans la sonde donne plusieurs dizaines de secondes pour remplacement des piles sans aucune autre intervention .
Lien en bas de mon premier message.
Cdt
Bertrand

Re: Recherche scipt

Publié : 24 août 2019, 13:00
par vil1driver
C'est en effet ta méthode la meilleure car même avec le script, il faudra toujours une intervention de la personne compétente

Re: Recherche scipt

Publié : 24 août 2019, 13:26
par banditos
vil1driver a écrit : 23 août 2019, 21:06 J'avais supprimé ton message doublon,
j'ai pensé à une erreur mais là tu relances clairement.

Ce n'est pas dans les bonnes pratiques, sache le.
Cela risque même d'être contre productif..

Pour revenir à ton problème, en quoi au juste ce changement d'idx te gêne ?
Ok, désolé.

Toute la régulation de mon chauffage passe par des blocky donc aux changements de pile, ma sonde n'est plus valide dans les blocky.

Re: Recherche scipt

Publié : 24 août 2019, 13:33
par banditos
denis_brasseur a écrit : 24 août 2019, 11:54
banditos a écrit : 23 août 2019, 20:58 Bonjour,
j'ai créé un dummy virtuel T°/H evec un idx de 789, ma sonde physique T°/H a 733 d'idx, j'ai modifié le script, je l'ai placé dans le fichier lua de Domoticz comme à chaque fois et pourtant ma sonde virtuelle n'est pas mise à jour, si quelqu'un a une idée.

Merci

Personne pour m'aider?
Le script initial est prévu pour récupérer la température d'un device température, et mettre ensuite à jour la valeur d'un device température.
Toi, tu essaye de récupérer la valeur d'une sonde physique T°/H. et de mettre ensuite à jour les valeurs d'un dummy virtuel T°/H.
C'est peux être cela qui coince.

Mais il est vrai que le changement d'idx suite à changement de device n'est pas un phénomène très gênant, il suffit d'appliquer la méthode précisé plus haut.
J'ai testé les 2, avec ou sans humidité car j'ai plusieurs sondes, des simple T° et des T°/H.

Re: Recherche scipt

Publié : 24 août 2019, 13:34
par vil1driver
As tu au moins essayé la procédure évoqué dans ce fil ?

En images ici
https://blogmotion.fr/diy/remplacer-cap ... ture-15225

Re: Recherche scipt

Publié : 24 août 2019, 13:35
par banditos
vil1driver a écrit : 24 août 2019, 13:34 As tu au moins essayé la procédure évoqué dans ce fil ?

En images ici
https://blogmotion.fr/diy/remplacer-cap ... ture-15225
Oui, cette procédure permet de garder l'historique T°, pas l'idx.

Re: Recherche scipt

Publié : 24 août 2019, 13:36
par vil1driver
Oui mais on se fiche de l'idx

Blocky ne se base que sur le nom (sauf erreur car je n'utilise pas)

Si je me trompe, voilà bien encore un avantage pour lua