Aller au contenu

Messages recommandés

Posté(e)

Oui pour le -5 ce code sert a fermé le volet si la porte et fermer. Attention le volet ce fermera si tu ferme la porte que si il fait nuit

Il faut que les minutes soit dans les 2 scène.

Je debut en lua j'ai commencer fin janvier 2015 et ca fais 2 miis que je ne programme plus beaucoup

Envoyé de mon SM-G900F

Posté(e)

Ok,c'est bien ce que j'avais compris

Et bien chapeau car cela fait que 5mois et demis et tu assure au niveaux codage en lua j'espère avoir ton niveau dans 5mois

La scene vient de fonctionner les volet ce sont fermer sauf la baie 2 qui est en alerte et pour tester je l'ai fermer nickel le volet Se ferme

Maintenant je vais me servi de ton code pour allumer les lumières àla fermeture des volet mais la je me débrouille tout seul

Si je sèche je t'appellerai a l'aide

Je ne le dirais pas assez MERCI À TOI pour toute ton aide

Posté(e)

Hello mprinfo désoler mais je vais t’embêter encore un peut 

sur la scene que tu m'as fais le volet de la baie 2 ne ce ferme pas quand on ferme la baie 2 et que la variable est bien passé a nuit

je cherche d'ou cela peut bien provenir n'ai sans succé je te remet la scene complette si tu peur jeté un coup d'oeil

--[[
%% globals
SoleilLever
SoleilCoucher
%% properties
179 value
--]]
local mesvolets ={
["Volet Ch Parents"] = 117,
["Volet CH Lily"] = 108,
["Baie 1"] = 73,
["Baie 2"] = 75,
["Volet 3"] = 77,
["Volet Bureau"] = 28,
}
-- Table Zone (Groupes de modules)
local RDC = {"Volet Bureau", "Baie 1", "Volet 3"}
local Etage = {"Volet CH Lily", "Volet Ch Parents"}
 
--------------------------------------------------------------------------
local nomLever = "SoleilLever" --> Nom de la Variable Globale lever soleil
local nomCoucher = "SoleilCoucher" --> Nom de la Variable Globale coucher soleil
--local Heure = "Heure" --> Nom de la variable globale Heure
--local JourChome = fibaro:getGlobalValue("JourChome") --> Nom de la variable Module Virtuel Hansloo
--local IdTel = fibaro:getGlobalValue("IdTel") -- Recuperation de id du tel pour le push
local IdTel = 164
local JourNuit = fibaro:getGlobalValue("Jour_Nuit")
--------------------------------------------------------------------------
local Pause = 3 -- Temp de pause entre chaque commande de modules en seconde
 
----------------------------------------------------------------------
-- Envoi d'un Push pour avertir que le box à  démarrer ou redémarrer --
----------------------------------------------------------------------
function EnvoiPush(Message)
fibaro:debug("Envoi Push : "..Message)
if Idtel ~= nil then
fibaro:call(IdTel, "sendPush", Message)
else
fibaro:debug("Il n'y a aucun tel enregistré")
end
end
 
-----------------------------------------------------------------------
-- Test si la valeur a enoyer est différente de la valeur du module
-----------------------------------------------------------------------
function testvaleur(id, valeurs)
local GetValeur = tonumber(fibaro:getValue(id, "value"))
if valeurs ~= GetValeur then
fibaro:call(id, "setValue", valeurs)
--fibaro:debug(id.." - action en cours... - Valeur "..valeurs)
fibaro:sleep(Pause*1000)
end
end
----------------------------------------------------------------------------
-- Recupération de l'id par rapport au nom de la tables mesvolets
----------------------------------------------------------------------------
function volets(zone, valeurs)
if (type(zone) == "table") then
local messages = "Les "..#zone.." Volets : "
for i,v in ipairs(zone) do
messages = (messages..v..", ")
local id = mesvolets[v]
if id == nil then
fibaro:debug("ERREUR NOM DU VOLET - "..v.." - dans une table")
EnvoiPush("ERREUR NOM DU VOLET - "..v.." - dans une table")
else
testvaleur(id, valeurs)
end
end
messages = (messages.."ont été actionnés à  "..valeurs.."%")
EnvoiPush(messages)
elseif (type(zone) == "string") then
local id = mesvolets[zone]
if id == nil then
fibaro:debug("ERREUR DANS LE NOM DU VOLET : "..zone)
EnvoiPush("EERREUR DANS LE NOM DU VOLET : "..zone)
else
testvaleur(id, valeurs)
EnvoiPush("Le volet : "..zone.." a été actionné à  "..valeurs.."%")
end
else
fibaro:debug("Erreur......")
EnvoiPush("Erreur......")
end
end
 
--------------------------------------------------------------------
-- test si le déclencheur est lever ou coucher du soleil
--------------------------------------------------------------------
function Test(zone, valeurs, minutes)
if zone ~= nil then
if minutes == nil then;
minutes = 0
end
volets(zone, valeurs)
else
fibaro:debug("Erreur dans la table ou table inéxitante")
EnvoiPush("Erreur dans la table ou table inéxitante")
end
end
 
--------------------------------------------------------------------
-- test Lever
--------------------------------------------------------------------
function lever(zone, valeurs, minutes, Jchome)
if nomTrigger == nomLever and valeurTrigger == minutes then
if Jchome == JourChome or Jchome == nil then
Test(zone, valeurs, minutes)
end
end
end
 
--------------------------------------------------------------------
-- test Coucher
--------------------------------------------------------------------
function coucher(zone, valeurs, minutes, Jchome)
if nomTrigger == nomCoucher and valeurTrigger == minutes then
if Jchome == JourChome or Jchome == nil then
Test(zone, valeurs, minutes)
end
end
end
--------------------------------------------------------------------
-- test Heure
--------------------------------------------------------------------
function heure(zone, valeurs, minutes, Jchome)
if nomTrigger == Heure and valeurTrigger == minutes then
if Jchome == JourChome or Jchome == nil then
Test(zone, valeurs, minutes)
end
end
end
 
--------------------------------------------------------------------------
-- Demarrage du programme
--------------------------------------------------------------------------
local trigger = fibaro:getSourceTrigger()
 
if (trigger['type'] == 'global') then
nomTrigger = trigger['name']
valeurTrigger = tonumber(fibaro:getGlobalValue(nomTrigger))
print("Nom du déclencheur = ", nomTrigger, " - Minutes : ", valeurTrigger)
elseif (trigger['type'] == 'property') then
if JourNuit == "Nuit" then
if tonumber(fibaro:getValue(179, "value")) == 0 then
testvaleur("Baie 2", 0)
end
end
     fibaro:abort();
else
     fibaro:debug("La scéne ne peut être lancer que par une Variable Globale")    
 
     fibaro:abort();      -- cela permet de lancer la scène manuellement
  
 -- nomTrigger = "SoleilCoucher"
  
-- valeurTrigger = -5
  
end
 
-------------------------------------------------------------------------
-- Ne rien modifier au dessus de cette ligne
-------------------------------------------------------------------------
-- Commandes a écrit pour lever du soleil
-- lever (Funtion qui traite le lever du soleil
-- coucher(zone, valeur, minutes)
-- exemple pour actionné les volets de la table Rue a 80% 10 minutes avant le lever
-- lever(Rue, 80, -10)
-- exemple pour actionné le volet "Bureau" au lever du jour
-- lever("Bureau", 99, 0)
-- Pour actionner un volet au coucher du soleil
-- Il faut remplacer lever par coucher
-- ex : coucher(Rue, 0, 20)
------------------------------------------------------------------------
-- Vous pouvez entrer vos commande en dessous de cette ligne
------------------------------------------------------------------------
-- si Baie 2 fermer alors fermer volet
if tonumber(fibaro:getValue(179, "value")) == 0 then
coucher("Baie 2", 0, -5)
end -- fin test baie 2 fermer
coucher(RDC, 0, 0)
coucher(Etage, 0, 0)
 

Moi je pense que cela vient du trigger journuit mais je suis pas sure car la variable et écrite comme cela Jour_Nuit dans le panneau variable mais dans le code de la scène elle est orthographié JourNuit en plus il y a une ereure dans le debug je te le met aussi (j'ai crée une variable prédéfinie IdTel=185, 164

mais le  puhs ne fonctionne pas sur cette scene alor qu'il fonctionne sur la scene jour nuit ?

 

regard que quand tu as le temps car moi en ce moment je ne l'ai pas ou tres peu

le debug

Nettoyer
[ERROR] 23:33:48: Runtime error: /opt/fibaro/FibaroSceneAPI.lua:252: attempt to concatenate local 'deviceID' (a nil value)
[ERROR] 08:09:50: Runtime error: /opt/fibaro/FibaroSceneAPI.lua:252: attempt to concatenate local 'deviceID' (a nil value)
[ERROR] 08:09:56: Runtime error: /opt/fibaro/FibaroSceneAPI.lua:252: attempt to concatenate local 'deviceID' (a nil value)
[ERROR] 08:10:24: Runtime error: /opt/fibaro/FibaroSceneAPI.lua:252: attempt to concatenate local 'deviceID' (a nil value)
[ERROR] 08:26:22: Runtime error: /opt/fibaro/FibaroSceneAPI.lua:252: attempt to concatenate local 'deviceID' (a nil value)
[ERROR] 08:28:37: Runtime error: /opt/fibaro/FibaroSceneAPI.lua:252: attempt to concatenate local 'deviceID' (a nil value)
[ERROR] 08:28:46: Runtime error: /opt/fibaro/FibaroSceneAPI.lua:252: attempt to concatenate local 'deviceID' (a nil value)

D'avance merci de ton savoir et de ton aide

Posté(e)

Ce soir c'est pas possible j'ai eu ma livraison de sable j'ai 10t a rentrer mais je fais cela cette semaine je voudrais tester chez moi le code pour être sur que cela fonctionne

Envoyé de mon SM-G900F

Posté(e)

Pas de souci prend ton Temp les volet ce ferme quand même c'est pas grave pour le volet de la baie 2

Purée tu fais quoi avec 10t de sable ?

En attendent merci d'avance

Posté(e)

 Au dessous de 10t, les enfants trouvent qu'il n'y en a pas assez. Ou tu as fermé les quais et tu fais toi aussi Paris plage? :D

  • Upvote 1
Posté(e)

J'ai un mur a crépire des 2 côté en plus il est en pierre donc cela consomme pas mal. Tout les été je consomme entre 15 a 30t de sable ou mélange la maçonnerie c'est une passion.

Envoyé de mon SM-G900F

Posté(e)

Ok alors bon courage et si il t'en reste ( du courage) je t'invite àvenir faire mes murs de clôtures

Car je repousse depuis la construction de la maison.

Mais il faudra bien le faire quand même

Bonne soirée et bon courage.

Posté(e)

J'ai fais tout ke gros oeuvre de ma maison. La je restaure la ferme ou je stocks mon matériel je suis n'y maçon n'y paysan

Envoyé de mon SM-G900F

Posté(e)

Ok tu doit avoir une belle dépendance

Nous sur la rochelle l'immobilier est trop chez nous on a fait faire le hors d'eau hors d'air de notre maison bois et j'ai fait tout le reste

(Elec,plomb,cet..)

Il me reste les extérieures et la piscine apres c'est fini

Alors bon courage

Posté(e)

Moi j'ai presque tout fais sauf l'électricité. Les plafonds en plâtres traditionnel car je ne supporte pas les plafonds en ba13 et la plomberie. Je souhaite bon courage car les intérieurs ces du boulot

Envoyé de mon SM-G900F

Posté(e)


--[[

%% globals

SoleilLever

SoleilCoucher

%% properties

179 value

--]]

local mesvolets ={

["Volet Ch Parents"] = 117,

["Volet CH Lily"] = 108,

["Baie 1"] = 73,

["Baie 2"] = 75,

["Volet 3"] = 77,

["Volet Bureau"] = 28,

}

-- Table Zone (Groupes de modules)

local RDC = {"Volet Bureau", "Baie 1", "Volet 3"}

local Etage = {"Volet CH Lily", "Volet Ch Parents"}

--------------------------------------------------------------------------

local nomLever = "SoleilLever" --> Nom de la Variable Globale lever soleil

local nomCoucher = "SoleilCoucher" --> Nom de la Variable Globale coucher soleil

--local Heure = "Heure" --> Nom de la variable globale Heure

--local JourChome = fibaro:getGlobalValue("JourChome") --> Nom de la variable Module Virtuel Hansloo

local IdTel = fibaro:getGlobalValue("IdTel") -- Recuperation de id du tel pour le push

local JourNuit = fibaro:getGlobalValue("Jour_Nuit")

--------------------------------------------------------------------------

local Pause = 0 -- Temp de pause entre chaque commande de modules en seconde

----------------------------------------------------------------------

-- Envoi d'un Push pour avertir que le box àdémarrer ou redémarrer --

----------------------------------------------------------------------

function EnvoiPush(Message)

fibaro:debug("Envoi Push : "..Message)

if Idtel ~= nil then

fibaro:call(IdTel, "sendPush", Message)

else

fibaro:debug("Il n'y a aucun tel enregistré")

end

end

-----------------------------------------------------------------------

-- Test si la valeur a enoyer est différente de la valeur du module

-----------------------------------------------------------------------

function testvaleur(id, valeurs)

local GetValeur = tonumber(fibaro:getValue(id, "value"))

if valeurs ~= GetValeur then

fibaro:call(id, "setValue", valeurs)

--fibaro:debug(id.." - action en cours... - Valeur "..valeurs)

fibaro:sleep(Pause*1000)

end

end

----------------------------------------------------------------------------

-- Recupération de l'id par rapport au nom de la tables mesvolets

----------------------------------------------------------------------------

function volets(zone, valeurs)

if (type(zone) == "table") then

local messages = "Les "..#zone.." Volets : "

for i,v in ipairs(zone) do

messages = (messages..v..", ")

local id = mesvolets[v]

if id == nil then

fibaro:debug("ERREUR NOM DU VOLET - "..v.." - dans une table")

EnvoiPush("ERREUR NOM DU VOLET - "..v.." - dans une table")

else

testvaleur(id, valeurs)

end

end

messages = (messages.."ont été actionnés à"..valeurs.."%")

EnvoiPush(messages)

elseif (type(zone) == "string") then

local id = mesvolets[zone]

if id == nil then

fibaro:debug("ERREUR DANS LE NOM DU VOLET : "..zone)

EnvoiPush("EERREUR DANS LE NOM DU VOLET : "..zone)

else

testvaleur(id, valeurs)

EnvoiPush("Le volet : "..zone.." a été actionné à"..valeurs.."%")

end

else

fibaro:debug("Erreur......")

EnvoiPush("Erreur......")

end

end

--------------------------------------------------------------------

-- test si le déclencheur est lever ou coucher du soleil

--------------------------------------------------------------------

function Test(zone, valeurs, minutes)

if zone ~= nil then

if minutes == nil then;

minutes = 0

end

volets(zone, valeurs)

else

fibaro:debug("Erreur dans la table ou table inéxitante")

EnvoiPush("Erreur dans la table ou table inéxitante")

end

end

--------------------------------------------------------------------

-- test Lever

--------------------------------------------------------------------

function lever(zone, valeurs, minutes, Jchome)

if nomTrigger == nomLever and valeurTrigger == minutes then

if Jchome == JourChome or Jchome == nil then

Test(zone, valeurs, minutes)

end

end

end

--------------------------------------------------------------------

-- test Coucher

--------------------------------------------------------------------

function coucher(zone, valeurs, minutes, Jchome)

if nomTrigger == nomCoucher and valeurTrigger == minutes then

if Jchome == JourChome or Jchome == nil then

Test(zone, valeurs, minutes)

end

end

end

--------------------------------------------------------------------

-- test Heure

--------------------------------------------------------------------

function heure(zone, valeurs, minutes, Jchome)

if nomTrigger == Heure and valeurTrigger == minutes then

if Jchome == JourChome or Jchome == nil then

Test(zone, valeurs, minutes)

end

end

end

--------------------------------------------------------------------------

-- Demarrage du programme

--------------------------------------------------------------------------

local trigger = fibaro:getSourceTrigger()

if (trigger['type'] == 'global') then

nomTrigger = trigger['name']

valeurTrigger = tonumber(fibaro:getGlobalValue(nomTrigger))

print("Nom du déclencheur = ", nomTrigger, " - Minutes : ", valeurTrigger)

elseif (trigger['type'] == 'property') then

if JourNuit == "Nuit" then

if tonumber(fibaro:getValue(179, "value")) == 0 then

volets("Baie 2", 0)

end

end

fibaro:abort();

else

fibaro:debug("La scéne ne peut être lancer que par une Variable Globale")

fibaro:abort();

-- nomTrigger = "SoleilCoucher"

-- valeurTrigger = -5

end

-------------------------------------------------------------------------

-- Ne rien modifier au dessus de cette ligne

-------------------------------------------------------------------------

-- Commandes a écrit pour lever du soleil

-- lever (Funtion qui traite le lever du soleil

-- coucher(zone, valeur, minutes)

-- exemple pour actionné les volets de la table Rue a 80% 10 minutes avant le lever

-- lever(Rue, 80, -10)

-- exemple pour actionné le volet "Bureau" au lever du jour

-- lever("Bureau", 99, 0)

-- Pour actionner un volet au coucher du soleil

-- Il faut remplacer lever par coucher

-- ex : coucher(Rue, 0, 20)

------------------------------------------------------------------------

-- Vous pouvez entrer vos commande en dessous de cette ligne

------------------------------------------------------------------------

-- si Baie 2 fermer alors fermer volet

if tonumber(fibaro:getValue(179, "value")) == 0 then

coucher("Baie 2", 0, -5)

end -- fin test baie 2 fermer

coucher(Etage, 0, 10)

Posté(e)


--[[

%% globals

SoleilLever

SoleilCoucher

%% properties

179 value

--]]

local mesvolets ={

["Volet Ch Parents"] = 117,

["Volet CH Lily"] = 108,

["Baie 1"] = 73,

["Baie 2"] = 75,

["Volet 3"] = 77,

["Volet Bureau"] = 28,

}

-- Table Zone (Groupes de modules)

local RDC = {"Volet Bureau", "Baie 1", "Volet 3"}

local Etage = {"Volet CH Lily", "Volet Ch Parents"}

--------------------------------------------------------------------------

local nomLever = "SoleilLever" --> Nom de la Variable Globale lever soleil

local nomCoucher = "SoleilCoucher" --> Nom de la Variable Globale coucher soleil

--local Heure = "Heure" --> Nom de la variable globale Heure

--local JourChome = fibaro:getGlobalValue("JourChome") --> Nom de la variable Module Virtuel Hansloo

local IdTel = fibaro:getGlobalValue("IdTel") -- Recuperation de id du tel pour le push

local JourNuit = fibaro:getGlobalValue("Jour_Nuit")

--------------------------------------------------------------------------

local Pause = 0 -- Temp de pause entre chaque commande de modules en seconde

----------------------------------------------------------------------

-- Envoi d'un Push pour avertir que le box àdémarrer ou redémarrer --

----------------------------------------------------------------------

function EnvoiPush(Message)

fibaro:debug("Envoi Push : "..Message)

if Idtel ~= nil then

fibaro:call(IdTel, "sendPush", Message)

else

fibaro:debug("Il n'y a aucun tel enregistré")

end

end

-----------------------------------------------------------------------

-- Test si la valeur a enoyer est différente de la valeur du module

-----------------------------------------------------------------------

function testvaleur(id, valeurs)

local GetValeur = tonumber(fibaro:getValue(id, "value"))

if valeurs ~= GetValeur then

fibaro:call(id, "setValue", valeurs)

--fibaro:debug(id.." - action en cours... - Valeur "..valeurs)

fibaro:sleep(Pause*1000)

end

end

----------------------------------------------------------------------------

-- Recupération de l'id par rapport au nom de la tables mesvolets

----------------------------------------------------------------------------

function volets(zone, valeurs)

if (type(zone) == "table") then

local messages = "Les "..#zone.." Volets : "

for i,v in ipairs(zone) do

messages = (messages..v..", ")

local id = mesvolets[v]

if id == nil then

fibaro:debug("ERREUR NOM DU VOLET - "..v.." - dans une table")

EnvoiPush("ERREUR NOM DU VOLET - "..v.." - dans une table")

else

testvaleur(id, valeurs)

end

end

messages = (messages.."ont été actionnés à"..valeurs.."%")

EnvoiPush(messages)

elseif (type(zone) == "string") then

local id = mesvolets[zone]

if id == nil then

fibaro:debug("ERREUR DANS LE NOM DU VOLET : "..zone)

EnvoiPush("EERREUR DANS LE NOM DU VOLET : "..zone)

else

testvaleur(id, valeurs)

EnvoiPush("Le volet : "..zone.." a été actionné à"..valeurs.."%")

end

else

fibaro:debug("Erreur......")

EnvoiPush("Erreur......")

end

end

--------------------------------------------------------------------

-- test si le déclencheur est lever ou coucher du soleil

--------------------------------------------------------------------

function Test(zone, valeurs, minutes)

if zone ~= nil then

if minutes == nil then;

minutes = 0

end

volets(zone, valeurs)

else

fibaro:debug("Erreur dans la table ou table inéxitante")

EnvoiPush("Erreur dans la table ou table inéxitante")

end

end

--------------------------------------------------------------------

-- test Lever

--------------------------------------------------------------------

function lever(zone, valeurs, minutes, Jchome)

if nomTrigger == nomLever and valeurTrigger == minutes then

if Jchome == JourChome or Jchome == nil then

Test(zone, valeurs, minutes)

end

end

end

--------------------------------------------------------------------

-- test Coucher

--------------------------------------------------------------------

function coucher(zone, valeurs, minutes, Jchome)

if nomTrigger == nomCoucher and valeurTrigger == minutes then

if Jchome == JourChome or Jchome == nil then

Test(zone, valeurs, minutes)

end

end

end

--------------------------------------------------------------------

-- test Heure

--------------------------------------------------------------------

function heure(zone, valeurs, minutes, Jchome)

if nomTrigger == Heure and valeurTrigger == minutes then

if Jchome == JourChome or Jchome == nil then

Test(zone, valeurs, minutes)

end

end

end

--------------------------------------------------------------------------

-- Demarrage du programme

--------------------------------------------------------------------------

local trigger = fibaro:getSourceTrigger()

if (trigger['type'] == 'global') then

nomTrigger = trigger['name']

valeurTrigger = tonumber(fibaro:getGlobalValue(nomTrigger))

print("Nom du déclencheur = ", nomTrigger, " - Minutes : ", valeurTrigger)

elseif (trigger['type'] == 'property') then

if JourNuit == "Nuit" then

if tonumber(fibaro:getValue(179, "value")) == 0 then

volets("Baie 2", 0)

end

end

fibaro:abort();

else

fibaro:debug("La scéne ne peut être lancer que par une Variable Globale")

fibaro:abort();

-- nomTrigger = "SoleilCoucher"

-- valeurTrigger = -5

end

-------------------------------------------------------------------------

-- Ne rien modifier au dessus de cette ligne

-------------------------------------------------------------------------

-- Commandes a écrit pour lever du soleil

-- lever (Funtion qui traite le lever du soleil

-- coucher(zone, valeur, minutes)

-- exemple pour actionné les volets de la table Rue a 80% 10 minutes avant le lever

-- lever(Rue, 80, -10)

-- exemple pour actionné le volet "Bureau" au lever du jour

-- lever("Bureau", 99, 0)

-- Pour actionner un volet au coucher du soleil

-- Il faut remplacer lever par coucher

-- ex : coucher(Rue, 0, 20)

------------------------------------------------------------------------

-- Vous pouvez entrer vos commande en dessous de cette ligne

------------------------------------------------------------------------

-- si Baie 2 fermer alors fermer volet

if tonumber(fibaro:getValue(179, "value")) == 0 then

coucher("Baie 2", 0, -5)

end -- fin test baie 2 fermer

coucher(Etage, 0, 10)

Posté(e)

Ok je modifie la scene et je te dit si cela fonctionne demain soi

J'ai regarder ton MV de telecommande mais je n'ai pas eu le temps de le mettre en place

J'espère que je pourrai cette semaine

En attendent merci àtoi pour le temps passer sur cette scene

Posté(e)

A toi aussi moi je suis deja coucher car la journée a était dur j'ai labouré 500m2 de terrain pour faire la pelouse en plus un bon coup de soleil sur la nuque je suis mort

Je te tient au courant demain soir bey et bonne soirée...

Posté(e)

Chez nous il peut et j'avais ma fille ce week. Tu aurais du le dire je serai venu avec mon nicro tracteur kubota j'ai un rotovator de 1.20m ik n'y en avait pas pour ling lol

Envoyé de mon SM-G900F

Posté(e)

C'est claire qu'avec du matériel comme ça on aurais passer le reste de la journée a l'apéro

Je te raconte pas

Allez bey

  • Upvote 1
×
×
  • Créer...