Aller au contenu

Suggestions / Boîte à idées


Yohan

Messages recommandés

Un exemple :

-- ===============================================
-- Snippets : Variables Globales
-- ===============================================
-- Description :
--    Fonctions permettant la manipulation des 
--    variables globales
-- ===============================================
-- Version du firmeware : 4.x
-- Destination : Scénarios
-- ===============================================

-- -----------------------------------------------
-- Retourne la valeur stockée dans une variable
-- -----------------------------------------------
-- Paramètres :
--    nom : le nom de la variable àinterroger
-- Retour :
--    la valeur de la varibale
-- Exemple :
--    getValue("Test")
-- -----------------------------------------------
function getValue(nom)
	return fibaro:getGlobalValue(nom)
end

-- -----------------------------------------------
-- Stocke la valeur dans une variable
-- -----------------------------------------------
-- Paramètres :
--    nom : le nom de la variable àinterroger
--    valeur : la valeur àstocker
-- Exemple :
--    setValue("Test", 100)
-- -----------------------------------------------
function setValue(nom, valeur)
	fibaro:setGlobal(nom, valeur)
end

-- -----------------------------------------------
-- Retourne la date/heure de modification de la 
-- variable
-- -----------------------------------------------
-- Paramètres :
--   nom : le nom de la variable àinterroger
-- Retour :
--    date/heure de la dernière modification
--    c.f : http://www.lua.org/pil/22.1.html
-- Exemple :
--    local modif = getDateModification("Test")
--    modif.year, modif.hour, modif.min, ...
-- -----------------------------------------------
function getDateModification(nom)
	return os.date("*t", fibaro:getGlobalModificationTime(nom))
end

-- -----------------------------------------------
-- Supprime une variable
-- -----------------------------------------------
-- Paramètres :
--    nom : le nom de la variable àsupprimer
-- Exemple :
--    supprimer("Test")
-- -----------------------------------------------
function supprimer(nom)
  	api.delete("/globalVariables/" .. nom)
end

-- -----------------------------------------------
-- Modifie une variable
-- -----------------------------------------------
-- Paramètres :
--    nom : le nom de la variable àmodifier
--    valeur : nouvelle valeur de la variable
--    choix : un tableau des choix possible
-- Exemples :
--    modifier("Endroit", "Maison", {"Maison", "Travail"})
--    modifier("NombreJours", 100)
-- -----------------------------------------------
function modifier(nom, valeur, choix)
	local variable = {}
	variable.value = tostring(valeur)
	variable.isEnum = false
	if (type(choix) ~= "nil") then
		variable.isEnum = true
		variable.enumValues = choix
	end
  	api.put("/globalVariables/" .. nom, variable)
end

-- -----------------------------------------------
-- Ajoute une variable
-- -----------------------------------------------
-- Paramètres :
--    nom : le nom de la variable àajouter
--    valeur : la valeur de la variable
--    choix : un tableau des choix possible
-- Exemples :
--    ajouter("Endroit", "Maison", {"Maison", "Travail"})
--    ajouter("NombreJours", 100)
-- -----------------------------------------------
function ajouter(nom, valeur, choix)
	local enum = 0
	if (type(choix) ~= "nil") then
		enum = 1
	end
	api.post("/globalVariables", {name=nom, isEnum=enum}) 
  	modifier(nom, valeur, choix)
end

-- -----------------------------------------------
-- Voir si une variable existe ou non
-- et la modifier ou créer
-- -----------------------------------------------
-- Paramètres :
--    nom : le nom de la variable àtraiter
--    valeur : la valeur de la variable
--    choix : un tableau des choix possible
-- Exemples :
--    traiter("Endroit", "Maison", {"Maison", "Travail"})
--    traiter("NombreJours", 100)
-- -----------------------------------------------
function traiter(nom, valeur, choix)
	if (fibaro:getGlobalValue(nom) == nil) then
		ajouter(nom, valeur, choix)
	elseif (type(choix) == "nil") then
		setValue(nom, valeur)
	else
		modifier(nom, valeur, choix)
	end
end
	
-- -----------------------------------------------
-- Retourne toutes les informations d'une variables
-- -----------------------------------------------
-- Paramètres :
--    nom : le nom de la variable àtraiter
-- Exemples :
--    local info = getInfo("Test")
--    info.value, info.name, info.readOnly,
--    info.isEnum, info.enumValues, ...
-- -----------------------------------------------
function getInfo(nom)
  return api.get("/globalVariables/" .. nom)
end
  • Upvote 3
Lien vers le commentaire
Partager sur d’autres sites

Punaise il me pique mes idées je verrai cela sous forme de fiches et biensur utiliser function end et voir return

Dans home center pour les nuls on aurrai pu aussi appelé aide mémoire pour les vieux des sous repertoire

Materiel

Recovery

Pannes possible

Api

Module virtuel

Slider

Etiquettes

Etc

Scenes

Lua

Tutos sur le language lua

Scripts indispensable

Function pret a l'emploi

Plugin

Etc.....

Avec le titre en couleur

Bleu = Facile

Noir = debutant avancé

Rouge = Expert

Envoyé avec mon SmartPhone

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

@mprinfo

C'est rassurant de voir qu'à  ton âge, on a encore des idées .. mon lointain avenir est donc encore prometteur.

 

OK  :98:

 

@Moicphil

Pépé est entrain de réflechir .. tu auras une réponse la semaine prochaine.

 

Plus sérieusement, pour une fois qu'un gars est plus vieux que moi sur le forum, j'ai le droit de le chambrer, non ? allez s'il vous plaît  :14:

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

×
×
  • Créer...