tozankyaku

script_device_Chauffage_Consigne

Jan 24th, 2017
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.23 KB | None | 0 0
  1. -- Script pour forcer la consigne du thermostat des pièces
  2. -- V1.2 : Ajout de la fonction consigne
  3. -- V1.1 : Ajout du double Array
  4. -- V1.0 : Version initiale
  5. --
  6. --
  7. -----------------------------------
  8. -- vvvv Paramètres à éditer vvvv --
  9. --
  10. -- Variables
  11.  
  12.  
  13. -- Materiel
  14.  
  15. local DMode = 'DUSEL-ModeChauffage' -- Switch Marche -- Pour autoriser le fonctionnement du dispositif, permet de couper le script si ça ne tourne pas
  16. local DPrefTh = 'DUTH-' -- Définition du préfixe pour le nom des Thermostats à lire, suivant les modes de chauffage
  17. local Host = 'xxxx:xxxx' -- IP & port du serveur Domoticz
  18.  
  19. Room = {}; -- Tableau des différentes pièces
  20. Room[1] = {Nom = "TV", IDXTh="3"} -- Tableau des données de la pièce
  21.  
  22. -- ^^^^ Paramètres à éditer ^^^^ --
  23. -----------------------------------
  24.  
  25. -- Variables
  26.  
  27. local VMode = otherdevices[DMode] -- Récupération du mode de Chauffage
  28. local DSetTh = DPrefTh..VMode -- Concaténation préfixe + mode chauffage pour trouver le Thermostat correspondant
  29. local VSetTh = otherdevices[DSetTh] -- Récupération du Thermostat de mode
  30.  
  31. -- Fonctions
  32.  
  33. function consigne(IDX,Valeur) -- Permet d'envoyer la consigne au thermostat
  34.     --print ("Adresse de l'équipement : "..Host) -- Pour debug
  35.     --print ("IDx de l'équipement : "..IDX) -- Pour debug
  36.     --print ("Consigne de l'équipement : "..Valeur) -- Pour debug
  37.     commandArray['OpenURL'] = Host..'/json.htm?type=command&param=udevice&idx='..IDX..'&nvalue=0&svalue='..Valeur
  38.    
  39. end
  40.  
  41. commandArray = {}
  42.  
  43. --print ('<font color="Red">Script Device Consigne Chauffage</font>') -- Pour debug
  44.  
  45. if (devicechanged[DMode] and otherdevices[DMode] ~='Off') then -- Le script ne se déclenche qu'en cas de changement de mode de chauffage à condition de ne pas être coupé
  46.     --print ("Consigne : Changement Mode et On"); -- Pour debug
  47.     --print ("Thermostat à récupérer : "..DSetTh) -- Pour debug
  48.    
  49.     for i, v in pairs(Room) do
  50.         --print ("Consigne du Thermostat "..DSetTh.." : "..VSetTh) -- Pour debug
  51.         --print ("Pièce : "..v.Nom.." et IDX : "..v.IDXTh) -- Pour debug
  52.         consigne (v.IDXTh,VSetTh)
  53.         print ('<font color="red">Chauffage en mode '..VMode..', Thermostat '..v.Nom..' réglé sur '..VSetTh..'</font>') -- Retour
  54.    
  55.     end
  56.    
  57. end
  58.  
  59. return commandArray
Advertisement
Add Comment
Please, Sign In to add comment