erreur de script Lua
Re: erreur de script Lua
cette fois si j ai bien suivi ta procédure et effectivement quand tu supprime les deux 00 sur les valeurs , ça fonctionne parfaitement
Merci d avoir trouver le problème
j ai chercher comment réussir a supprimer les deux 00 avec mon script mais j ai pas réussi a trouver
peux tu, encore m aider ?
Merci d avoir trouver le problème
j ai chercher comment réussir a supprimer les deux 00 avec mon script mais j ai pas réussi a trouver
peux tu, encore m aider ?
-
denis_brasseur
- Messages : 898
- Inscription : 24 déc. 2018, 17:05
- Localisation : (26)
Re: erreur de script Lua
On peux commencer par le début : comment est généré le fichier data.json ?
Je pense comprendre qu'il s'agit des données issues d'un compteur Linky.
Je pense comprendre qu'il s'agit des données issues d'un compteur Linky.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Re: erreur de script Lua
oui effectivement les données sont extraites d' un Eco compteur legrand
j ai réalisé déjà un script pour extraire les données mais il ne me convient pas mais il fonctionne :
le problème c est que si tu te trompes d un chiffre dans " string.sub" , tu plantes Domoticz
donc je préférerai mettre un ligne un script qui choisi les nombres sans risque de plantage
Dans Ecocompteur legrand il y a l eau et le gaz qui peuvent être récupéré , avec une autre adresse HTPP : mon script avec string.match fonctionne très bien et je souhaiterais faire de même pour l Electricité
j ai réalisé déjà un script pour extraire les données mais il ne me convient pas mais il fonctionne :
Code : Tout sélectionner
local url = 'http://192.168.1.46/data.json' -- url locale de votre écocompteur legrand
htidx = otherdevices_idx['Linky'] -- Idx P1 Compteur intellogent (électrique)
hcidx = otherdevices_idx['HC'] -- Idx Compteur
hpidx = otherdevices_idx['HP'] -- Idx Compteur
local function removeZeros(Id)
while true do
if Id:sub(1,1) == '0' then
Id = Id:sub(2)
else
break
end
end
return Id
end
----------------------------------------------
-- Fin de la partie configuration --
----------------------------------------------
commandArray={}
--import des fontions pour lire le JSON
json = (loadfile "/home/pi/domoticz/scripts/lua/JSON.lua")() -- For Linux
--recuperation des mesure HP et HC sur data.json
local config=assert(io.popen("curl '"..url.."'"))
local location = removeZeros(config:read('*all'))
local trouve = string.find(location,'"conso_hp"')
local consoHP = removeZeros(string.sub(location,trouve+14,trouve +23))
local trouve = string.find(location,'"conso_hc"')
local consoHC = removeZeros(string.sub(location,trouve+14,trouve +23))
config:close()
if Debug == "YES" then
print(trouve)
print(location)
print(consoHP)
print(consoHC)
end
--import des valeurs dans les Idx
commandArray[htidx] = { ['UpdateDevice'] = htidx ..'|0|'.. consoHP .. ";" .. consoHC .. ";" .. "0" .. ";" .. "0" .. ";" .. "0" .. ";" .. "0" }
commandArray[hpidx] = { ['UpdateDevice'] = hpidx ..'|0|'.. consoHP }
commandArray[hcidx] = { ['UpdateDevice'] = hcidx ..'|0|'.. consoHC }
return commandArrayle problème c est que si tu te trompes d un chiffre dans " string.sub" , tu plantes Domoticz
donc je préférerai mettre un ligne un script qui choisi les nombres sans risque de plantage
Dans Ecocompteur legrand il y a l eau et le gaz qui peuvent être récupéré , avec une autre adresse HTPP : mon script avec string.match fonctionne très bien et je souhaiterais faire de même pour l Electricité
Re: erreur de script Lua
Bonjour à tous,
Moi aussi je rencontre un problème de script que je n'arrive toujours pas à résoudre malgré mes différentes recherches ici ou ailleurs
dans mon script, el ligne 4 il y a une erreur indiquée dans le log tel que:
Error: /home/pi/domoticz/scripts/lua/script_time_chauffage.lua:4: ‘)’ expected near ‘&’
j'ai ajouté supprimé une parenthèse mais malgré plusieurs tentatvies je n'arrive pas à contourner ce problème !
Voici la 4ème ligne de mon script
merci par avance pour vos retours
Bonne soirée et à bientôt ...
Moi aussi je rencontre un problème de script que je n'arrive toujours pas à résoudre malgré mes différentes recherches ici ou ailleurs
dans mon script, el ligne 4 il y a une erreur indiquée dans le log tel que:
Error: /home/pi/domoticz/scripts/lua/script_time_chauffage.lua:4: ‘)’ expected near ‘&’
j'ai ajouté supprimé une parenthèse mais malgré plusieurs tentatvies je n'arrive pas à contourner ce problème !
Voici la 4ème ligne de mon script
Code : Tout sélectionner
if ((t1 >= uservariables["Chauff-Central-Temp-Deb-Cal1-d-info"] and uservariables["Chauff-Central-Temp-Fin-Cal1-d-info"] >= t1) or (t1 >= uservariables["Chauff-Central-Temp-Deb-Cal2-d-info"] and uservariables["Chauff-Central-Temp-Fin-Cal2-d-info"] >= t1)) thenBonne soirée et à bientôt ...
Dernière modification par vil1driver le 26 déc. 2019, 18:14, modifié 1 fois.
Raison : Ajoute balises code
Raison : Ajoute balises code
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: erreur de script Lua
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: erreur de script Lua
bonjour et merci mais comme je l'ai indiqué j'ai fait quelques recherches avant de poster ma question
Cette balise si je comprends bien correspond à supérieur ou égal mais je ne comprends pas l'erreur remontée dans le log ? ? ?
Cette balise si je comprends bien correspond à supérieur ou égal mais je ne comprends pas l'erreur remontée dans le log ? ? ?
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: erreur de script Lua
Si tu as compris que
Devrait être
La suite est plutôt implicite non ?
Code : Tout sélectionner
>Code : Tout sélectionner
>MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: erreur de script Lua
Salut,
Écris tes scripts dans "Réglages" => "Plus d'options" => "Événements" tu auras moins de soucis avec la syntaxe.
Écris tes scripts dans "Réglages" => "Plus d'options" => "Événements" tu auras moins de soucis avec la syntaxe.
Re: erreur de script Lua
re bonjour et merci
en fait, j'ai trouvé "mon" erreur
Je pouvais chercher longtemps car le problème de ) était à la ligne suivante !
Encore merci et bon WE
en fait, j'ai trouvé "mon" erreur
Je pouvais chercher longtemps car le problème de ) était à la ligne suivante !
Encore merci et bon WE