Aller au contenu

Messages recommandés

Posté(e)

Merci, c'est la v3.3, j'avais la 3.2, je look

Une question : les variables en majuscules, ou minuscule ? sur ton descriptifs sait en "DAY_PHASE" mais ton script en "Day_Phase"

Posté(e)

Très bonne question, on s'est déjàposé la question...

me rappelle plus de la conclusion (ce doit être quelque part au début du post), mais je crois que cela n'a pas d'importance

Posté(e)

un petit bout de code pour créer les VGs automatiquement ... (merci àLazer)

--Creation des VGs
if not VG then
	VG = {
		['Day_Phase_Nuit']   = {['default']='2300'         , ['enum']={}},
		['Day_Phase_Num']    = {['default']=''             , ['enum']={}},
		['Day_Phase']        = {['default']='0 - Erreur'   , ['enum']={"0 - Erreur","1 - Aube","2 - Aurore","3 - Matin","4 - Apres-Midi","5 - Crepuscule","6 - Soir","7 - Nuit"}},
	}
	function CreateVG(varName, varValue, varEnum)
		local isEnum = (#varEnum > 0) and 1 or 0
		local HC2 = Net.FHttp("127.0.0.1", 11111)
		local payload = '{"name":"'..varName..'","isEnum":'..isEnum..',"value":"'..(varValue or "")..'"}'
		local response, status, errorCode = HC2:POST("/api/globalVariables/"..varName, payload)
		if tonumber(errorCode) == 0 and (tonumber(status) == 200 or tonumber(status) == 201) and response ~= nil and response ~= "" then
			fibaro:debug('Global variable "'..varName..'" created')
			if isEnum > 0 then
				local payload = '{"name":"'..varName..'","isEnum":true,"enumValues":'..json.encode(varEnum)..'}'
				local response, status, errorCode = HC2:PUT("/api/globalVariables/"..varName, payload)
				if tonumber(errorCode) == 0 and (tonumber(status) == 200 or tonumber(status) == 201) and response ~= nil and response ~= "" then
					fibaro:debug('Global variable "'..varName..'" modified with enum values')
				else
					fibaro:debug('<span style="display:inline;color:red;">Error : Can not modify enum global variable, errorCode='..errorCode..', status='..status..', payload='..payload..', response='..(response or "")..'</span>')
				end
			end
		else
			fibaro:debug('<span style="display:inline;color:red;">Error : Can not create global variable, errorCode='..errorCode..', status='..status..', payload='..payload..', response='..(response or "")..'</span>')
		end
		HC2 = nil
	end
	local HC2 = Net.FHttp("127.0.0.1", 11111)
	for vg, param in pairs(VG) do
		fibaro:debug("Check if global variable '"..vg.."' exists")
		local response, status, errorCode = HC2:GET("/api/globalVariables/"..vg)
		if tonumber(errorCode) == 0 and tonumber(status) == 200 and response ~= nil and response ~= "" then
			local jsonTable = json.decode(response)
			if not jsonTable.name or jsonTable.name ~= vg then
				fibaro:debug('Response OK but global variable "'..vg..'" does not exist...')
				CreateVG(vg, param['default'], param['enum'])
			end
		else
			fibaro:debug('Global variable "'..vg..'" does not exist...')
			CreateVG(vg, param['default'], param['enum'])
		end
	end
end -- if not VG

Posté(e)

merci du partage.

Qu'est ce qui serait le mieux, faire un code pour la création de toutes nos variables globales ou l'intégrer uniquement dans le VD pour les variables concernées?

Posté(e)

perso ce que j'ai fait

- j'ai mis à  jour tous les VD que j'utilise qui demande des VGs avec ce code - comme ca ils sont autonomes.

- j'ai une autre VDs qui creera tous les VGs que j'utilise dans ma HC2 en cas de recovery 

Posté(e)

petit retour donc,,,,, truc bizarre, ca marcher toujours pas,,,,en etudiant le script, j'ai trouvé un truc,(mais surement perso je sais pas)

 

sur la ligne 159 (ou proche, puisque j'ai rajouter %% events (v4.062b),donc qqes ligne en plus) : if ((heure_courante >= 1200) and (Heure_Courante >= Soir) IL etait attacher : (Heure_Soir>=Soir)  et du coup ca marche, plus d'erreur,,,,,,vraiment bizarre puisque j'ai integré ton module hier. (et que je pense que vous n'avez pas d'erreur) ????

Posté(e)

oui, d'autant plus bizarre modifié comme toi ou non, je n'ai pas d'erreur.

J'aime bien connaitre les causes des non fonctionnement, mais le principal est que cela fonctionne àprésent pour toi

  • 3 mois après...
Posté(e)

Salut Nvince

Merci pour ton module que j'utilise tres bien !

Une information : cet hiver le module passer de 4 à6 ( sans passer par 5)

Depuis avril ( printemps ) le module passé de 4 à5 (20h30 environ) et 6 vers 21h30 .

Je trouve que 6 se déclenche tard (fait déjànuit).

Aurais tu une info !

  • 2 semaines après...
Posté(e)

Bonjour Philippe, 

 

Le passage à  '6 - Soir' est fixé en dur dans le code (ligne 76) comme étant Heure de Crépuscule + 1 Heure (d'où le fonctionnement depuis avril) 

local Soir = Crepuscule + 0100 ;

Le passage à  5 est basé sur le trigger  Heure du Crepuscule fourni par Fibaro.

Le module contient une option de détection automatique de la phase '6 - Soir' à  paramétrer selon le besoin et ton installation (ligne 59 à  61)

-- Start Manual Input 
    local Luminosite_ID = 340
    local Luminosite_Trip = 400
    local Luminosite_Option = 0
    local First_Icon_ID = 229		        -- Icone d'erreur
    local Loop_Timer = 0			-- en seconde
-- End Manual Input  
 
Luminosite_ID        :   L'ID du/des capteur de luminosité 
Luminosite_Trip      :   La valeur de la luminosité detectant un passage automatique NUIT>AUBE et CREPUSCULE>SOIR
Luminosite_Option :   La valeur d'activation de la prise en compte ou non de la luminosité (0 = Non, 1 = Oui)
 
 
Le fonctionnement que tu as observé cet Hiver peut être dà» à  un mauvais paramétrage de cette option ou un mauvais fonctionnement de ton capteur de luminosité.
Si la luminosité mesurée par ton detecteur  passe sous le seuil défini avant l'heure officielle du Crépuscule avancée par la box Fibaro, tu passeras directement de 4 à  6
  • 8 mois après...
Posté(e)

Bonjour, 

J'ai installé cet VD (de Nvince76 , grand merci du partage) mais j'arrive pas a mettre les icônes pour chaque phase de VD .

Un petit idée ...

 

Bien a vous 

IMG_5226.PNG

Capture d’écran 2017-01-22 à 15.49.42.png

Posté(e)

Je suis de l'avis de pepite, le format de tes icones ne doit pas être bon (en taille ou en extension)

Il y a longtemps que j'ai travaillé sur le sujet, mais normalement quand tu importes le VD, les icones associées sont dans le package.

Posté(e)

 Il faut d'abord cliquer dessus (bouton gauche), et ensuite bouton droit enregistrer l'image sous et elles devraient être en 128x128.

 

 

Posté(e)

Bonsoir , 

 

Aaa , désolé ,

Je voulais dire de mettre la bonne icône par rapport de le phase de la journée , car j'arrive pas a le faire ...

Posté(e)

 Je pense qu'il faut que tu adaptes les numéros des icônes une fois que tu les as intégrés dans la bibliothèque d'icône de ta HC2.

 

×
×
  • Créer...