LUA Debute 1 inter et 1 sortie

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
fcBourgogne
Messages : 172
Inscription : 31 mars 2020, 14:22

Re: LUA Debute 1 inter et 1 sortie

Message par fcBourgogne »

Bonjour,

Sinon en détail:

Code : Tout sélectionner

local DHTSalon = 'TempSalon'
local sonde = otherdevices_svalues[DHTSalon]

if  sonde then
    -- Parse temperature and humidité
    local temp, hum = string.match(sonde, "([^;]+);([^;]+)")
    print("TempSalon: " .. temp .. "°C")
    print("HumSalon: " .. hum .. "%")
end
A+
Raspberry PI5+ 1WIRE + I2C +ESP8266 +esp32
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Re: LUA Debute 1 inter et 1 sortie

Message par daniel4860 »

Bonjour,
Merci fcBourgogne et keros
Il parait que l'on devient forgeron en forgeant!
Donc je me suis creusé la cervelle et voici mon code pour scindée les valeurs.
Je suis passé par la création d'un tableau et une boucle for afin de garder un exemple qui peut servir pour des sondes ou autres qui donne plusieurs valeurs.
Voici mon code:

Code : Tout sélectionner

commandArray = {}

--La sonde DHT22 est sur un ESP8266, les donneées sont transférer par mqtt dans un Dispositif Virtuel
local dht22 = 'TempHumidite'

--Creation d'un tableau dans lequel seront enregistrer les valeurs 
local valdht22 = {}

--Les valeurs sont mis dans donnée : 20.4;44;0
donnee = otherdevices_svalues[dht22]

--Je scinde les données dans un tableau avec une boucle for
for valeur in string.gmatch(donnee, "[^;]+") do
    table.insert(valdht22, tonumber(valeur))
end

--Je crée les variables temp Temperature et humi pour Humidite
local temp = valdht22[1]
local humi = valdht22[2]

--On retrouve le résultat dans les log de domoticz
print("Temperature: " .. temp .. "°C")
print("Humidite: " .. humi .. "%")

return commandArray
Bonne soirée et bon week-end.
Daniel
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
fcBourgogne
Messages : 172
Inscription : 31 mars 2020, 14:22

Re: LUA Debute 1 inter et 1 sortie

Message par fcBourgogne »

Bonjour,

Bien et propre le script!

A+
Raspberry PI5+ 1WIRE + I2C +ESP8266 +esp32
Répondre