-
Compteur de contenus
4 434 -
Inscription
-
Dernière visite
-
Jours gagnés
201
Tout ce qui a été posté par Steven
-
Voilà ton code Monsieur oui il avait doublon voir conflit entre les 2 premières lignes, j'ai profiter pour utiliser la nouvelle fonction Sunset<19:25 J'ai ajouté le If qui permet de vérifier que tout les volets soient fermés -- Si la température es supérieur à 24°, entre 9h et le couché du soleil (s'il est avant 19:25, sinon 19:25), on ferme les volets de 80% GEA.add({"Value+", 67, 24}, 60, "", {{"Time", "09:00", "Sunset<19:25"}, {"Value", 112, 20},{"Value", 113, 20},{"Value", 114, 20},{"Value", 115, 20}}) -- Global "" "" permet de toujours fait l'action :-) GEA.add({"Global", "", ""}, 60, "", {{"Value", 112, 100},{"Value", 113, 100},{"Value", 114, 100},{"Value", 115, 100},{"Time", "19:29", "19:30"}, {"DST"}}) -- Ouvrir Volets étage à 19h30 en été -- Vérifie que tout les volets soit ouvert de plus de 5% --- marge d'erreur de calibrage local pas_ferme = {"If", {{"Value+", 112, 5}, {"Value+", 113, 5}, {"Value+", 114, 5}, {"Value+", 115, 5}}} GEA.add({"Global", "", ""}, 15*60, "", {{"Value", 112, 0},{"Value", 113, 0},{"Value", 114, 0},{"Value", 115, 0},{"Time", "Sunset", "Sunrise"}, pas_ferme}) -- Fermer Volets étage au coucher + 15min
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Normalement pas. Version 3.30 BETA disponible en téléchargement sur le 1er post [Correction] Le paramètre {"Email", <id>} a été corrigé [Nouveauté] Ajout des paramètres {"Armed"} and {"Disarmed"} [Nouveauté] "Time" autorisation du format 22h30 en plus de 22:30 [Nouveauté] "Time" autorisation du format 6:30 au lieu de 06:30 [Nouveauté] Ajout du paramètre {"Dates", "01/06/2014", "31/12/2014"} ou {"Dates", "01/06", "31/12"} [Nouveauté] * Ajout de {"Time", "Sunrise>07:30", "Sunset>22:00"} [Nouveauté] * Ajout de {"Time", "Sunrise+20", "Sunset-100"} [Nouveauté] Les variables globales, label, email peuvent aussi contenir les variables #date#, #time#, #duration#, ... [Nouveauté] Ajout de la variable #durationfull# qui retourne la durée sous le format "1 heure 34 minutes 26 secondes" [Optimisation] Isolation entre les commandes. Si une commande est mal renseignée et qu'elle ne fonctionne pas, l'erreur soulevée n'arrête pas le déroulement des autres commandes [Optimisation] Contrôles techniques supplémentaires [Nouveauté] Ajout de la condition {"Battery", <id>, <valeur>} pour recevoir une notification en cas de batterie faible [Correction] Erreur de programmation sur un délai qui faisait planté la 3.30 Beta. * Sunrise>07:30 est à lire ainsi "Au levé du soleil si ce dernier est plus grand que 7:30, sinon 7:30" ... (donc au plus tôt 7:30) Sunrise<07:30 est à lire ainsi "Au levé du soleil si ce dernier est avant 7:30, sinon 7:30" ... (donc au plus tard 7:30) Sunrise+30 signifie au levé du soleil ajouter de 30 minutes ... si le levé est à 6:30, l'heure sera 7:00
- 905 réponses
-
- 1
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
J'ai une ligne de code qui recalcule le délai entre 2 appels, le calcul de celle-ci est complètement faux et elle va bientôt arriver en négatif. Une fois en négatif, tout plante. En attendant, si vous en avez l'occasion, re-sauver le script pour relancer le délai et gagner environ 8 heures avant la prochaine plantée, cela me laissera le temps de corriger.
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Pour les utilisateurs de la 3.30 BETA ... je vous promet une belle plantée dans quelques heures avec en prime l'arrêt complet de GEA. J'espère qu'il commandait pas l'ouverture de votre porte d'entrée et la levée de vos volets Edit : la version corrigée arrive dans quelques heures.
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Installé hier soir ... super outil. Merci Krikroff.
-
Le département 93 n'existe pas chez Météo France, ils ont du te repérer et l'enlever en vu d’extinction massive Chercher sur http://vigilance.meteofrance.com/ Je pense que tu devras mettre le 75
-
Oui il y a #duration# = "3h 5m 30s" #durationfull# = "3 heures 5 minutes 30 secondes" Et oui, tu peux l'utiliser pour mettre à jour une variable globale ou le label d'un module virtuel ou un push ou un email ou .. ma grand-mère .. Exemple : {"Global", "Karotz", "Ma porte de garage me fait shyer depuis plus de #durationfull#"}
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
GEA.add(21, 30, "Fermeture de la porte de garage #time#", {{"Time","21:00", "21:05"},{"turnOn", 10}, {"Repeat"},{"DST"}}) Si le capteur 21 est activé pendant 30 secondes entre 21:00 et 21:05 alors on ferme le garage (10) ... uniquement en été. Oublie pas de prévoir l'hiver Par contre, fait super attention car dans mon cas il arrive (hier encore) que mon ZG801 m'indique que la porte est ouverte alors qu'elle ne l'est pas. Dans ce cas, ce scénario va : Ouvrir la porte au lieu de la fermer car le capteur lui aura donné une fausse information 30 secondes après il va détecter que le capteur est toujours "ouvert" (ce qui sera vrai cette fois). Mais comme on a mis le Repeat, il va refaire le turnOn ce qui va fermer la porte ce coup-ci. 30 secondes après il va vérifier ... le capteur devrait être fermé donc on ne fait plus rien.
- 905 réponses
-
- 1
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Il faut juste que tu me dises ce que 21 et 10 signifie ? Pour l'instant, ce scénario est lancé manuellement ? Edit : dodo, je te réponds demain
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Non, c'est trop compliqué à faire par rapport à l'architecture de mon code, par contre, regarde le post http://www.domotique-fibaro.fr/index.php/topic/1082-gea-gestionnaire-dévénements-automatique/?p=14175 Il explique comment faire. Le seul truc pénible c'est qu'il faut mettre une ligne par volet.
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Donc la mémoire total d'un module virtuel égal (environ) : collectgarbage("count") de chaque bouton + celui du Main Loop ?
-
Version 1.10 disponible En de problème d'accès au fichier XML, le script tente 5 fois toutes les 10 minutes de récupérer le fichier. En cas d’échec, il attendra les prochaines 6 heures. Taux de rafraîchissement augmenté àtoutes les 6 heures (précédemment 12 heures).
-
Version 3.30 BETA disponible en téléchargement sur le 1er post Je cherche des volontaires Elle est stable, voir plus stable que l'actuel mais quelques testeurs me ferais du bien [Correction] Le paramètre {"Email", <id>} a été corrigé [Nouveauté] Ajout des paramètres {"Armed"} and {"Disarmed"} [Nouveauté] "Time" autorisation du format 22h30 en plus de 22:30 [Nouveauté] "Time" autorisation du format 6:30 au lieu de 06:30 [Nouveauté] Ajout du paramètre {"Dates", "01/06/2014", "31/12/2014"} ou {"Dates", "01/06", "31/12"} [Nouveauté] * Ajout de {"Time", "Sunrise>07:30", "Sunset>22:00"} [Nouveauté] * Ajout de {"Time", "Sunrise+20", "Sunset-100"} [Nouveauté] Les variables globales, label, email peuvent aussi contenir les variables #date#, #time#, #duration#, ... [Nouveauté] Ajout de la variable #durationfull# qui retourne la durée sous le format "1 heure 34 minutes 26 secondes" [Optimisation] Isolation entre les commandes. Si une commande est mal renseignée et qu'elle ne fonctionne pas, l'erreur soulevée n'arrête pas le déroulement des autres commandes [Optimisation] Contrôles techniques supplémentaires * Sunrise>07:30 est à lire ainsi "Au levé du soleil si ce dernier est plus grand que 7:30, sinon 7:30" ... (donc au plus tôt 7:30) Sunrise<07:30 est à lire ainsi "Au levé du soleil si ce dernier est avant 7:30, sinon 7:30" ... (donc au plus tard 7:30) Sunrise+30 signifie au levé du soleil ajouter de 30 minutes ... si le levé est à 6:30, l'heure sera 7:00 Allez ... des courageux stp
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Besoin daide Tableau Dans Une Variable Globale
Steven a répondu à un(e) sujet de Domotique-Home dans HC2
Tu peux malheureusement stocké que des chaînes de caractères Tu peux les stocker sous forme de chaîne avec un séparateur "," ou autre puis les "spliter" pour récupérer un tableau function split(text, sep) local sep, fields = sep or ":", {} local pattern = string.format("([^%s]+)", sep) text:gsub(pattern, function(c) fields[#fields+1] = c end) return fields end local mon_tableau = "1,2,3,4,5,60" local devices = split(mon_tableau, ",") fibaro:debug(devices[2]) -
Non pas besoin dans ton cas car tu souhaites fermer les volets CAR la luminosité est de X pendant plus de Y secondes. Tu as besoin de mettre cela dans l'entête uniquement si tu veux un action directe (ex. dès qu'une porte s'ouvre, je veux remonter les volets). Pour le problème de la notification, le code me semble juste. La seule chose que je vois serait un problème de calibrage et que le volet ne remonte pas de 100 mais de 99 ... c'est un exemple sans aucune certitude. Pour tester, pourrais-tu mettre un peu moins que 100 par exemple 90 pour voir. local si_pas_ouvert = {"If", {{"Value-", 19, 90},{"Value-", 24, 90},{"Value-", 17, 90}}} Si c'est bon, on remonte de petit à petit.
- 905 réponses
-
- 1
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
J'ai prévu une bêta ce soir avec armé entre autres. Mais làpour l'instant c'est priorité aux enfants :-)
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Vider la poubelle Tous les objets détruit sont maintenu dans une poubelle qui se vide automatiquement. Et tu peux forcer cela. Je ne la connaissais pas non plus cette fonction... Merci.
-
Tu sais que j'ai toujours pas installé le Toolkit... J'ai honte
-
function getPlayer() return player end player = "001" local player = "003" fibaro:debug(player) fibaro:debug(getPlayer()) Lol
-
Je programme sans aucune global enfin presque ... enfin sauf une ... celle qui fait tout if (not GEA) then GEA = {} GEA.version = 3.30 GEA.checkEvery = 30 ... GEA.add = function(id, secondes, message, ...) ... end end Seule la variable GEA est global tout le reste est local à la variable GEA. Allez fait moi plaisir ... dis moi que je rajoute des noeuds à ton cerveau
-
Portée des variables LUA (en anglais) : http://www.lua.org/pil/4.2.html Contrôle de type de variable : http://www.lua.org/pil/2.html local id = 1 if ( type(id) == "number" ) then local booo = 1 + id fibaro:debug(booo) --- 2 else -- J'en fait quoi moi de ce truc bizarre qui n'est même pas numérique. end
-
Oui, ils ont appelé cela variables globales mais en réalité ce sont des données partagées.
-
Il y a variable globale en terme de programmation (ce que nous avons précédemment décrit) et les variables de la HC2 qui en réalité sont des données stockées dans une base.
-
Je confirme. Mon code est encore jeune et expérimentale. La prochaine version sera plus stable, je travaille justement sur sa stabilisation. Néanmoins, j'ai aussi les mêmes soucis que toi et ce avant même que GEA soit dans ma tête
-
En gros, c'est bien ça