Aller au contenu

Scene Lua - Jour / Nuit Avec Décalge Possible Et Optimisation Du Sleep


mprinfo

Messages recommandés

  • 2 mois après...
  • 6 mois après...

Bonjour,

je débute en LUA et pour le moment je galère!

Je n'ai pas de formation en informatique et simplement autodidacte.

Voilà, pour la scène mise sur la première page, les deux dernières lignes indiquent une information concernât une Id du téléphone.

Ma question est de savoir comment je peut connaître mon Id de téléphone et surtout àquoi ça sert?

Merci de vos réponse.

Lien vers le commentaire
Partager sur d’autres sites

Merci pour cette réponse rapide.

J'ai déjà  des VD pour me notifier par freesms de la fermeture ou ouverture de mes volets.

Je vais utiliser les mêmes pour les tests.

 

En tout cas merci pour tout le boulot qui est fait par toi et les nombreux passionnés. Je suis nouveau dans le monde de la domotique (depuis la semaine dernière!) et j'apprends doucement.

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Bonjour à  vous,

en premier lieu un grand merci à  vous tous pour le partage de votre travail, je suis comme beaucoup d'autre un novice (pour ne pas dire une brelle) en LUA. Je n'ai ma box que depuis un mois et je patauge dès qu'il faut rédiger la moindre ligne de code.

Je désire gérer la descente de mes volets et divers éclairage lors de la mise en On et Off de mon alarme. Il me manquait l'info Jour/Nuit, ce superbe code (un immense merci mprinfo) tombe à  pic!!!!!!

Juste une question (fatalement):

 

A quoi sert la variable local "J"

 

Je n'ai pas encore installer de "push", puis je mettre en commentaire les lignes qui l'utilise sans rien compromettre( tu as indiqué --************ Ne rien modifier en dessous de cette ligne ************)?

 

 

Je ne parviens pas à  déchiffrer entièrement ton code, dans la capture ci-dessous,pourrais tu, s'il te plait, me commenter chaque lignes, je ne comprends pas comment tu utilises les triggers et que vient faire une commande "print" dans tout ça.

Merci à  toi

 

JP

  1. --[[
  2. %% globals
  3. SoleilLever
  4. SoleilCoucher
  5. --]]
  6.  
  7. local trigger = fibaro:getSourceTrigger()
  8.  
  9. if (trigger['type'] == 'global') then
  10. LeverCoucher = trigger['name']
  11. valeur = tonumber(fibaro:getGlobalValue(LeverCoucher))
  12. print(nom, valeur)
  13. end
Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Je te commente les lignes,  je laisse le vieux répondre aux autres questions :

--[[
%% globals
SoleilLever
SoleilCoucher
--]]

-- On récupère les valeurs qui on déclenché la scène
local trigger = fibaro:getSourceTrigger()

-- Si la scène a été déclenchée par un changmement de variables globales
if (trigger['type'] == 'global') then
  -- On récupère le nom de la variable qui a déclenché "SoleilLever" ou "SoleilCoucher"
  LeverCoucher = trigger['name']
  -- On récupère la valeur de la variable "SoleilLever" ou "SoleilCoucher"
  valeur = tonumber(fibaro:getGlobalValue(LeverCoucher))
  -- On affiche le nom et la valeur de la variable dans la console
  print(nom, valeur)
end
  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

 

Je te commente les lignes,  je laisse le vieux répondre aux autres questions :

--[[
%% globals
SoleilLever
SoleilCoucher
--]]

-- On récupère les valeurs qui on déclenché la scène
local trigger = fibaro:getSourceTrigger()

-- Si la scène a été déclenchée par un changmement de variables globales
if (trigger['type'] == 'global') then
  -- On récupère le nom de la variable qui a déclenché "SoleilLever" ou "SoleilCoucher"
  LeverCoucher = trigger['name']
  -- On récupère la valeur de la variable "SoleilLever" ou "SoleilCoucher"
  valeur = tonumber(fibaro:getGlobalValue(LeverCoucher))
  -- On affiche le nom et la valeur de la variable dans la console
  print(nom, valeur)
end

Merci Steven :-)

Lien vers le commentaire
Partager sur d’autres sites

  • 5 mois après...

Bonjour,

J'ai installé ce module et j'ai une erreur ligne 100: "invalid pattern capture"

          -- on extrait l'heure et minute (%d+) est un digit
         local heure, minute = string.match(NomDate, "(%d+)%d+)") 

 

Une idée? Je suis en V 4.120.


Merci. 

 

Lien vers le commentaire
Partager sur d’autres sites

ça j'avais compris que ça marchait bien chez tout le monde sauf chez moi  :2:

 

bon ben en cherchant sur le net "invalid pattern capture", j'ai rajouté des %  :huh:

   local heure, minute = string.match(NomDate, "(%d%+)%d%+)")

 

et j'ai plus d'erreur ....  à voir à l'usage ...

Lien vers le commentaire
Partager sur d’autres sites

Tu n'as plus d'erreur mais cela ne fonctionnera pas (le pattern %d+ signifie "un ou plusieurs chiffre à la suite alors que %d%+ signifie "un seul chiffre suivi d'un +").

 

Est-ce que tu pourrais ajouter :

 

print(NomDate) 

 

juste avant la ligne en erreur et nous dire ce qui va s'afficher dans la console de débug.

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

[DEBUG] 09:21:56: La box a démarré le 11/04/2017 a 09:21
[DEBUG] 09:21:56: Lever Soleil : 06:47 - Coucher Soleil : 19:59
[DEBUG] 09:21:56: Mise a jour de la Variable Globale : Jour_Nuit = Jour
[DEBUG] 09:21:56: Heure Actuelle : 09:21
[DEBUG] 09:21:56: 06:47
[DEBUG] 09:21:56: heure Lever Soleil Mini : 11:30:56 - Maxi : 13:01:56
[DEBUG] 09:21:56: 19:59
[DEBUG] 09:21:56: heure Coucher Soleil Mini : 11:30:56 - Maxi : 12:26:56
[DEBUG] 09:21:56: Valeur du Sleep 30 mn

merci Steven pour les explications  :74: 

 

à voir si ça joue mais j'ai mis ça dans le TLever / TCoucher.

 

-- Minutes de décalages par rapport au lever du soleil
local TLever = {60}
-- Minutes de décalages par rapport au Coucher du soleil
local TCoucher = {25}

 

 

et j'ai ça si je remets l'erreur avec print(NomDate)

 

[DEBUG] 09:28:31: La box a démarré le 11/04/2017 a 09:28
[DEBUG] 09:28:31: Lever Soleil : 06:47 - Coucher Soleil : 19:59
[DEBUG] 09:28:31: Mise a jour de la Variable Globale : Jour_Nuit = Jour
[DEBUG] 09:28:31: Heure Actuelle : 09:28
[DEBUG] 09:28:31: 06:47
[DEBUG] 09:28:31: line 101: invalid pattern capture

 

Modifié par SosAlaide
Lien vers le commentaire
Partager sur d’autres sites

[DEBUG] 09:33:21: La box a démarré le 11/04/2017 a 09:33
[DEBUG] 09:33:21: Lever Soleil : 06:47 - Coucher Soleil : 19:59
[DEBUG] 09:33:21: Mise a jour de la Variable Globale : Jour_Nuit = Jour
[DEBUG] 09:33:21: Heure Actuelle : 09:33
[DEBUG] 09:33:21: 06:47
[DEBUG] 09:33:21: heure Lever Soleil Mini : 06:17:21 - Maxi : 07:48:21
[DEBUG] 09:33:21: 19:59
[DEBUG] 09:33:21: heure Coucher Soleil Mini : 19:29:21 - Maxi : 20:25:21
[DEBUG] 09:33:21: Valeur du Sleep 30 mn

:13::16:

 

par contre à voir si besoin de changer car le code initial en page 1 est bien : local heure, minute = string.match(NomDate, "(%d+)%d+)")

encore merci ! bonne journée 

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

 

   -- on extrait l'heure et minute (%d+) est un digit
         local heure, minute = string.match(NomDate, "(%d+):(%d+)") 
         -- On récupère l'heure et date actuelle sous forme de tableau

Alors là c'est trop fort, j'utilise ce code depuis 6 mois dans mes scènes d'alarme et volets roulants et aucun problème, la cerise sur le pompon est que le code que j'ai est correct alors que je n'ai fait que recopier cette partie du programme dans l'éditeur de HC2 TOOLKIT :huh:

Lien vers le commentaire
Partager sur d’autres sites

  • 2 ans après...
  • 1 mois après...
  • 2 mois après...

Bonjour à tous,

 

Cela fait 2 semaine que j'ai mis en place cette scène sur ma box afin de piloter mon éclairage extérieur.

Merci @mprinfopour ce travail qui m'est fort pratique.

 

Ce pendant j'ai une question, j'ai régulièrement, plusieurs fois par jour au coucher du soleil des notifications indiquant que l"La box a démarré le .....

Cela est il normal?

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...