Re: Températures min/max et envoi par mail
Publié : 15 févr. 2016, 17:11
Pour la troisième variable, ce ne serait pas l'état des piles ? Un truc du genre 0 = 0%, 1 = 50% et 2 = 100% suivant les constructeur 
Reprenez le contrôle de votre domotique
https://easydomoticz.com/forum/
Code : Tout sélectionner
if (hour==07 and min==00)
then
objet = 'Températures du '..day
message = 'Cette nuit, la température est descendue à '..uservariables["Temp_min_ext"]..'°C à ' ..uservariables["Temp_min_ext_hour"]..'h'..uservariables["Temp_min_ext_min"]..'. Hier la température maxi a été de '..uservariables["Temp_max_ext"]..'°C à '..uservariables["Temp_max_ext_hour"]..'h'..uservariables["Temp_max_ext_min"]..'.'
commandArray['SendEmail']= objet..'#'.. message .. '#' .. EmailTo
commandArray['Variable:Temp_max_ext']= tostring(0)
if (debug == 'oui') then
print('message envoyé')
print('Objet:'..objet)
print('Corps du message: '..message)
print('Destinataire: '..EmailTo)
end
endCode : Tout sélectionner
commandArray = {}
---------------------------------
------ Variables à adapter ------
---------------------------------
local EmailTo = 'email@gmail.com' -- adresse mail, séparées par ; si plusieurs
local sonde = 'Exterieur' -- nom de la sonde à surveiller
local typeSonde = 'humid' -- type de sonde: 'temp': uniquement température / 'humid' : temp+humidité
local debug = 'oui' -- oui ou non pour avoir des valeurs dans le log
---------------------------------
---------------------------------
hour = tonumber(os.date("%H"));
min = tonumber(os.date("%M"));
day = tonumber(os.date("%d"));
if (hour==7 and min==00)
then
objet = 'Températures du '..day
--message = 'Cette nuit, la température est descendue à '..uservariables["Temp_min_ext"]..'°C à ' ..uservariables["Temp_min_ext_hour"]..'h'..uservariables["Temp_min_ext_min"]..'. Hier la température maxi a été de '..uservariables["Temp_max_ext"]..'°C à '..uservariables["Temp_max_ext_hour"]..'h'..uservariables["Temp_max_ext_min"]..'.'
message = 'Cette nuit, la température est descendue à '..uservariables["Temp_min_ext"]..'°C à ' ..uservariables_lastupdate["Temp_min_ext"]..'. Hier la température maxi a été de '..uservariables["Temp_max_ext"]..'°C à '..uservariables_lastupdate["Temp_max_ext"]..'.'
commandArray['SendEmail']= objet..'#'.. message .. '#' .. EmailTo
commandArray['Variable:Temp_max_ext']= tostring(0)
if (debug == 'oui') then
print('message envoyé')
print('Objet:'..objet)
print('Corps du message: '..message)
print('Destinataire: '..EmailTo)
end
end
if (devicechanged[sonde]) then
if (typeSonde == 'temp') then
temp = tonumber(otherdevices_svalues[sonde])
elseif (typeSonde == 'humid') then
temp, sHumid = otherdevices_svalues[sonde]:match("([^;]+);([^;]+)")
temp = tonumber(temp)
end
temp_min = tonumber(uservariables["Temp_min_ext"])
temp_max = tonumber(uservariables["Temp_max_ext"])
if (debug == 'oui') then
print('#### Debug script température ####')
print('sonde '..sonde..' = '..temp..'°C')
print('Temp_max_ext = '..temp_max..'°C')
print('Temp_min_ext = '..temp_min..'°C')
print('Nous sommes le '..day..', il est '..hour..'h'..min..'min')
end
if (tonumber(uservariables["Temp_ext_day"]) ~= day)
then
commandArray['Variable:Temp_min_ext']= tostring(30)
commandArray['Variable:Temp_ext_day'] = tostring(day)
if (debug == 'oui') then
print('Variable "day" changée, maintenant :'..day)
print('Variable Temp_min_ext passée à 30')
end
end
if (temp < temp_min)
then
commandArray['Variable:Temp_min_ext']= tostring (temp)
--commandArray['Variable:Temp_min_ext_hour']= tostring (hour)
--commandArray['Variable:Temp_min_ext_min']= tostring (min)
print('Temp_min_ext mis à jour : '..temp..' °c à '..hour..'h'..min)
end
if (temp > temp_max)
then
commandArray['Variable:Temp_max_ext']= tostring (temp)
--commandArray['Variable:Temp_max_ext_hour']= tostring (hour)
--commandArray['Variable:Temp_max_ext_min']= tostring (min)
print('Temp_max_ext mis à jour : '..temp..' °c à '..hour..'h'..min)
end
if (debug == 'oui') then
print('#### Fin du debug ####')
end
end
return commandArray