décenchement d'une scène dans une fouchette d'heure

Programmation de la Vera

décenchement d'une scène dans une fouchette d'heure

Messagede hornet49 » 06 Nov 2015, 18:09

Bonjour,

j'aimerai connaitre la commande pour déclencher une scène par exemple uniquement entre 7h et 10h.
Même un code complet qui s'exécute dans une fourchette d'heure je trouverais la commande qu'il me faut dedans.

Exemple concret:
le matin j'allume la lampe de la salle de bain et il me dira quel temps il fera mais si je me rase le soir j'ai pas besoin de connaitre le temps lol
effectivement si j'allume la lumière 3 fois, il me le dira 3 fois mais c'est pas grave, car ça sera moi, ma femme, et mes gosses....

merci d'avance pour ceux qui connaissent la réponse ;-)
Vera light UI5 (1.5.672) avec:
RFXcom (79 beta 3), 8 modules Volet roulant DIO, 5 modules lumière chacon (54755), 2 RGB Fibaro (FGRGB-101), 2 modules prise (FGWPF-102),
caméra APEXIS + barrière IR
serveur WES (V0.7G3) avec:
6 Sondes de températures, 2 pinces ampèremétrique, 2 téléinfo (conso et prod), 5 switch (1 a chaque porte et 2 pour niveau cuve eau), un compteur d'impulsion eau, 2 relais arrosage auto)
2 Tablettes android avec: impérihome
2 Télephone android dans les faux plafond avec amplis + HP pour synthèse vocal avec impérihome et squeezbox
1 TV samsung (UE46D6300)
1 Freebox mini
2 BoxTV android (MXQ PRO)
1 Autoradio Android (RK3188)
1 Onduleur (pour Vera, freebox, wes et toute les lampes led) 20 min d'autonomie.
1 EEEPC avec Sarah V3, sqeezbox serveur et base SQL pour médiathèque KODI
1 Karotz (a vendre lol)
hornet49
P'tit Dieu de domotique
 
Messages: 169
Inscription: 09 FĂ©v 2013, 09:16

Re: décenchement d'une scène dans une fouchette d'heure

Messagede lmet » 06 Nov 2015, 19:19

Dans le startup lua mettre la fonction
Code: Tout sélectionner
function inTime(startTime, endTime)
  local hour = tonumber(startTime:sub( startTime:find("%d+")))
  local minute = tonumber(startTime:sub(-2))
  if hour and minute then
    startTime = hour * 100 + minute
  else
    return 0
  end
  hour = tonumber( endTime:sub( endTime:find("%d+") ) )
  minute = tonumber(endTime:sub(-2))
  if hour and minute then
    endTime = hour * 100 + minute
  else
    return 0
  end
  local currentTime = os.date("*t")
  currentTime = currentTime.hour * 100 + currentTime.min
  local intervalTime = (endTime - startTime) % 2400
  if (((currentTime - startTime) % 2400) < intervalTime) then
    -- L'heure est dans l'intervalle
    return true
  end
  -- L'heure est en dehors
  return false
end


Quelque part dans une scène appeler la fonction
Code: Tout sélectionner
if (inTime("07:00", "10:00") == true) then
    -- action Ă  mener
end

Voili voilou
lmet
Domotique : RPI 3 raspbian stretch, clef Z-wave Aeon Labs, application Domoticz v4.9700
EverSpring : ST814, AN158-6
Fibaro : FGR-221,FGS-221, FGS-211,FGD-211,FGK-103, FGRM-221, FGRM-222, FGMS-001, FGFS-101
iPad Air 2 : Imperihome
Caméras : FosCam FI9805W
Sécurité : Nest Protect
Energie : AEO_HEM2 d'AEON LABS, onduleur APC Back-UPS ES 700
Autres : Pc Windows 10 Pro 64 bits, IPX 800 v3, Netatmo station météo, NAS Synology DS214, TV Sony KDL-50W755c
Avatar de l’utilisateur
lmet
Dieu de domotique
 
Messages: 1086
Inscription: 14 AoĂ» 2011, 18:54
Localisation: Val d'Oise

Re: décenchement d'une scène dans une fouchette d'heure

Messagede hornet49 » 07 Nov 2015, 08:22

Un grand merci d'avoir prit le temps de me répondre !!!!
je pensais à une commande toute bête mais j'aurai chercher longtemps je crois avant que ça fonctionne lol......
Merci M'sieu !!!!
Vera light UI5 (1.5.672) avec:
RFXcom (79 beta 3), 8 modules Volet roulant DIO, 5 modules lumière chacon (54755), 2 RGB Fibaro (FGRGB-101), 2 modules prise (FGWPF-102),
caméra APEXIS + barrière IR
serveur WES (V0.7G3) avec:
6 Sondes de températures, 2 pinces ampèremétrique, 2 téléinfo (conso et prod), 5 switch (1 a chaque porte et 2 pour niveau cuve eau), un compteur d'impulsion eau, 2 relais arrosage auto)
2 Tablettes android avec: impérihome
2 Télephone android dans les faux plafond avec amplis + HP pour synthèse vocal avec impérihome et squeezbox
1 TV samsung (UE46D6300)
1 Freebox mini
2 BoxTV android (MXQ PRO)
1 Autoradio Android (RK3188)
1 Onduleur (pour Vera, freebox, wes et toute les lampes led) 20 min d'autonomie.
1 EEEPC avec Sarah V3, sqeezbox serveur et base SQL pour médiathèque KODI
1 Karotz (a vendre lol)
hornet49
P'tit Dieu de domotique
 
Messages: 169
Inscription: 09 FĂ©v 2013, 09:16

Re: décenchement d'une scène dans une fouchette d'heure

Messagede hornet49 » 08 Nov 2015, 21:47

une autre petite question, je veux dire l'heure quand je suis dans la salle de bain.
exemple: je me brosse les dents et à 7h je dois réveiller ma fille.

Est ce que ce code fonctionnerait ?
en trigger je mets le device de la lampe de la salle de bain.
et dans le LUUP ce code:
local t = os.date('*t')
local current_second = t.hour * 3600 + t.min * 60 + t.sec -- convertir en seconde depuis minuit pour avoir l'heure actuelle
local time1 = 7*3600 -- convertir 7h en seconde
local time2 = 7*3600 + 30*60 -- convertir 7h30 en seconde
local message1 = "http://192.168.0.43:8080/api/rest/speech/tts?text=il%20es%207%20heure"
local message2 = "http://192.168.0.43:8080/api/rest/speech/tts?text=il%20es%207%20heure%2030"

if current_second = time1 then
luup.inet.wget(message1)
if current_second = time2 then
luup.inet.wget(message2)
end


Merci par avance. (j'ai mis toute la journée de dimanche pour comprendre que l'on pouvait activer une scène soit sur un TRIGGER soit sur un SCHEDULES, mais pas les 2)
Vera light UI5 (1.5.672) avec:
RFXcom (79 beta 3), 8 modules Volet roulant DIO, 5 modules lumière chacon (54755), 2 RGB Fibaro (FGRGB-101), 2 modules prise (FGWPF-102),
caméra APEXIS + barrière IR
serveur WES (V0.7G3) avec:
6 Sondes de températures, 2 pinces ampèremétrique, 2 téléinfo (conso et prod), 5 switch (1 a chaque porte et 2 pour niveau cuve eau), un compteur d'impulsion eau, 2 relais arrosage auto)
2 Tablettes android avec: impérihome
2 Télephone android dans les faux plafond avec amplis + HP pour synthèse vocal avec impérihome et squeezbox
1 TV samsung (UE46D6300)
1 Freebox mini
2 BoxTV android (MXQ PRO)
1 Autoradio Android (RK3188)
1 Onduleur (pour Vera, freebox, wes et toute les lampes led) 20 min d'autonomie.
1 EEEPC avec Sarah V3, sqeezbox serveur et base SQL pour médiathèque KODI
1 Karotz (a vendre lol)
hornet49
P'tit Dieu de domotique
 
Messages: 169
Inscription: 09 FĂ©v 2013, 09:16

Re: décenchement d'une scène dans une fouchette d'heure

Messagede slyos31 » 09 Nov 2015, 10:30

Salut
Si je comprends bien tu veux une annonce vocale à 7h et à 7h30 si tu es dans ta salle de bain (lumière allumée).
Si c'est cela alors ton code ne se déclenchera qu'à l'allumage de ta lampe, et l'annonce ne sera faite que si il est 7h ou 7h30 à ce moment précis.

Moi je ferais une scène avec 2 trigger temporels à 7h et 7h30 ( en semaine) et du code luup pour conditionner les annonces à l'allumage de la lampe.
Dernière édition par slyos31 le 09 Nov 2015, 10:34, édité 1 fois.
slyos31
Dieu de domotique
 
Messages: 400
Inscription: 17 FĂ©v 2011, 21:44
Localisation: Toulouse

Re: décenchement d'une scène dans une fouchette d'heure

Messagede slyos31 » 09 Nov 2015, 10:33

...et j'ai beaucoup de scènes avec des triggers sur événement et sur programmation. Qu'est ce qui te fais penser que ceci n'est pas possible ?
slyos31
Dieu de domotique
 
Messages: 400
Inscription: 17 FĂ©v 2011, 21:44
Localisation: Toulouse

Re: décenchement d'une scène dans une fouchette d'heure

Messagede hornet49 » 10 Nov 2015, 11:09

Merci pour la piste je crois que ça marche (enfin a vérifie au moment t)
du coup j'ai mis en SCHEDULE l'heure a laquelle je veux déclencher la scène.
puis en code LUUP:

local volume = "http://192.168.x.x:xxxx/status.html?p0=mixer&p1=volume&p2=20&player=192.168.x.x"
local message = "http://192.168.x.x:xxxx/api/rest/speech/tts?text=il%20est%207%20heure%2015%20il%20est%20temps%20de%20partir"
local stop = "http://192.168.x.x:xxxx/status.html?p0=stop&player=192.168.x.x"
local spot_sdb = luup.variable_get("urn:upnp-org:serviceId:SwitchPower1", "Status", 125)

if (spot_sdb == "1") then
luup.inet.wget(volume)
luup.inet.wget(stop)
luup.inet.wget(message)
end

Encore merci ;-)
simple et efficace....
Vera light UI5 (1.5.672) avec:
RFXcom (79 beta 3), 8 modules Volet roulant DIO, 5 modules lumière chacon (54755), 2 RGB Fibaro (FGRGB-101), 2 modules prise (FGWPF-102),
caméra APEXIS + barrière IR
serveur WES (V0.7G3) avec:
6 Sondes de températures, 2 pinces ampèremétrique, 2 téléinfo (conso et prod), 5 switch (1 a chaque porte et 2 pour niveau cuve eau), un compteur d'impulsion eau, 2 relais arrosage auto)
2 Tablettes android avec: impérihome
2 Télephone android dans les faux plafond avec amplis + HP pour synthèse vocal avec impérihome et squeezbox
1 TV samsung (UE46D6300)
1 Freebox mini
2 BoxTV android (MXQ PRO)
1 Autoradio Android (RK3188)
1 Onduleur (pour Vera, freebox, wes et toute les lampes led) 20 min d'autonomie.
1 EEEPC avec Sarah V3, sqeezbox serveur et base SQL pour médiathèque KODI
1 Karotz (a vendre lol)
hornet49
P'tit Dieu de domotique
 
Messages: 169
Inscription: 09 FĂ©v 2013, 09:16

Re: décenchement d'une scène dans une fouchette d'heure

Messagede ElYoM » 14 Jan 2016, 17:36

Au cas où si ça peut aider certains, y'a un topic très bien foutu sur l'exécution de scènes avec conditions sur les forums de micasaverde, avec des exemples qui vont bien.
http://forum.micasaverde.com/index.php?topic=18679.0
ElYoM
Membre un peu timide !
 
Messages: 4
Inscription: 11 Jan 2016, 21:10


Retourner vers Programmation

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités

Copyright © 2011 - Touteladomotique.com - Tous droits rĂ©servĂ©s
Les blogs partenaires : Abavala, Domo-Blog, Domotique34, Maison et Domotique