Page 1 sur 1

script lua : Autolight : Fonction lumières automatiques AVEC mode manuel

Posté : 20 juil. 2017, 02:00
par technick
Derniere tentative ici : viewtopic.php?f=10&t=8884

Re: script lua : Autolight : Fonction lumière automatique AVEC mode manuel

Posté : 05 août 2017, 16:08
par technick
Dernière version, merci à tous ceux qui on partagé leur code, ça m'a bien aidé à debuter (non je ne debute pas en developpement, seulement en Lua).

Vous avez ici une base avec gestion des variables (y compris celles modifiées en live ;) ), des logs, ainsi que mon script de gestion automatique des lumières.

Garanti avec BUGs, je corrigerais en fonction des commentaires et retours si il y a .

08 Aout 2017
-Pas de retour mais une correction pour corriger la non extinction lors de la détection de mouvements en mode auto.
13 Aout 2017
-Toujours aucun retour (pourquoi partager ?) mais changement de methode sur le timer d'extinction.
-Il semble qu'il n'y ait aucun moyen de stopper un ordre "Off in x seconds"
-Les variables de travail sont maintenant crées automatiquement
26 Aout 2017
-Petit mot pour dire que ce script fonctionne maintenant plutôt bien, aucun problème détecté depuis le 26 :mrgreen:
16 Juillet 2019
-Adaptation au nouveau nom de l'API JSON d'ajout de variable
17 Juillet 2019
-Ajout de l'éclairage du placard par le plafonnier du couloir juste en face (avec sauvegarde et restauration du niveau d'éclairage de ce dernier ;) )
23 Juillet 2019
Script V2
Fin du partage

Technick

Re: script lua : Autolight : Fonction lumières automatiques AVEC mode manuel

Posté : 04 sept. 2017, 14:13
par david.2d
Hello,

Je pense que tu n'a pas de réponse, car ton script est fortement orienté pour ton installation et difficilement transposable chez quelqu'un pour un simple test.

Re: script lua : Autolight : Fonction lumières automatiques AVEC mode manuel

Posté : 04 sept. 2017, 20:33
par landaisbenj
J'ai hésité a le dire aussi. La plus part des scripts ici sont propres a leurs installation. Ils sont très intéressant pour s'en inspirer et pouvoir faire les nôtres, mais si jamais je te partageais le miens, il est sur et certains que tu ne t'en servirai pas.

Les scripts de lumière volet absence ou autre, la plus part du temps n'intéresserons pas. Ceux qui intéressent sont ceux qui apporte des fonctionnalités que nous n'avons pas. Genre luxmetre, freebox, ou quoi...

Mais surtout ne te décourage pas, plus il y a de script plus c'est simple pour tous le monde d'en faire d'autre.

J'en profite pour remercier tout ceux comme toi qui partage car grâce a ça on apprend très vite.

Re: script lua : Autolight : Fonction lumières automatiques AVEC mode manuel

Posté : 11 sept. 2017, 16:06
par deennoo
Ton script a l 'air bon, meme si il est tres personnalisé il fonctionne surement.

Le "bloquage" vient du manque de commentaire dans ton script je pense.

Nous sommes quasiment tous des novices en prog et script, du coup il y a plein de chose que je comprend pas, ce qui me freine.

Voici mon script d'alumage auto de lumiere exterieur avec fonction manuel sur un inter physique (Lum ext auto) et en fonction de la luminositée exterieur.

Code : Tout sélectionner

-- chargement des modules
package.path = package.path..";/home/nico/domoticz/scripts/lua/?.lua"
require "modules"

time = os.date("*t")
function timedifference (s)
t1 = os.time()
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)
t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
absence = (os.difftime (t1, t2))
return absence
end

Lux = otherdevices_svalues['Luminosite Exterieur']:match("([^;]+)")
Lux = tonumber(Lux)

commandArray = {}
if otherdevices['Lum ext auto']=='On' then
  if  ((timedifference(otherdevices_lastupdate['PIR Porte RDC']) > 300) and (timedifference(otherdevices_lastupdate['Etat Portail']) > 300)) and otherdevices['Eclairage Exterieur'] ~= 'Off' then
   groupOff('Eclairage Exterieur')
   
   elseif (devicechanged['PIR Porte RDC'] == 'Open' or devicechanged['Etat Portail'] == 'Open') and (otherdevices['Eclairage Exterieur']=='Off') and Lux <= 100  then
   groupOn('Eclairage Exterieur')
  end
end
return commandArray
Si Lum ext auto == OFF j'ai un autre script qui va forcer l'allumage du groupe "eclairage exterieur"

Re: script lua : Autolight : Fonction lumières automatiques AVEC mode manuel

Posté : 18 juil. 2019, 14:16
par technick
Fin du partage