si changement de la valeur de consigne de thermostat envoi de SMS

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 <\>.
lebsana
Messages : 21
Inscription : 22 mars 2016, 15:58

si changement de la valeur de consigne de thermostat envoi de SMS

Message par lebsana »

Bonjour tout le monde,

Me voilà déjà revenu.
En gros j'ai la consigne de chauffage du thermostat dans l'onglet mesure.
Je sais modifier cette valeur soit en activant la commande physique de l'appareil ou en utilisant un script /json...

Le tout fonctionne correctement.
Grâce à l'Api de free, je voudrais être informé par sms lorsque il y changement (dû au script /json ou intervention manuelle) de consigne de la température.

Je pensai le faire via le script suivant mais Lua me remonte toujours une erreur :
Error: EventSystem: in sms changement consigne: [string "local consigne = 'consigne temperature'..."]:7: 'then' expected near 'values'

Code : Tout sélectionner

local consigne = 'consigne temperature'
local temp_thermostat = tonumber(otherdevices_svalues[consigne])


commandArray = {}

if changed values[temp_thermostat] then
    Print ('blabla ..... pour céer mon scénario SMS si la consigne thermostat change dû à l'activation manuelle ou par /json')
end
    
return commandArray

J'ai essayé avec devicechanged [temp_thermostat ou devicechanged[consigne] ou change value [...........] mais rien ne fonctionne j'ai toujours un message d'erreur.

donc si une âme charitable pouvait éclairer ma lanterne ce serais sympa.

Lebsana
Des débuts en domotique avec une Zipabox "une vraie catastrophe !!!" Depuis début mars 2016 avec Domoticz "du bonheur" Zwave et rfxcom 433 mhz.
lebsana
Messages : 21
Inscription : 22 mars 2016, 15:58

Re: si changement de la valeur de consigne de thermostat envoi de SMS

Message par lebsana »

Je me réponds à moi-même.
Après une bonne nuit de sommeil il y a des idées qui germes !!
Voici la parade que j'ai trouvée :

Code : Tout sélectionner

local consigne = 'consigne temperature'
local temp_thermostat = tonumber(otherdevices_svalues[consigne])
-- pour envoi de smsapi
local url = 'https://smsapi.free-mobile.fr/sendmsg?user=XXXXX&pass=YYYYYY&msg='

commandArray = {}

function timedifference(d)
   s = otherdevices_lastupdate[d]
   year = string.sub(s, 1, 4)
   month = string.sub(s, 6, 7)
   day = string.sub(s, 9, 10)
   hour = string.sub(s, 12, 13)
   minutes = string.sub(s, 15, 16)
   seconds = string.sub(s, 18, 19)
   t1 = os.time()
   t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
   difference = os.difftime (t1, t2)
   return difference
end

-- on regarde de quand date le dernier changement de consigne du thermostat
local lastSeen = string.sub(os.date("!%X", timedifference(consigne)), 1, 8)
print ('dernier changement de consigne :' ..lastSeen)
 
 
 --envoie du SMS lorsqu'il y a un changement
   if (lastSeen >= '00:00:00' and lastSeen <= '00:00:05') then
      commandArray['OpenURL']=url..'Changement de consigne du thermostat Domoticz à : '..temp_thermostat..' !!!'
    end
   
return commandArray 
Comme ça j'ai toujours un œil sur la dernière consigne de température du thermostat et en cas d'anomalie cela me permettra d'y remédier et surtout d'éviter d'avoir "madame" sur le dos (à juste titre) !!!!

:D :D :D :D

Lebsana
Des débuts en domotique avec une Zipabox "une vraie catastrophe !!!" Depuis début mars 2016 avec Domoticz "du bonheur" Zwave et rfxcom 433 mhz.
Répondre