[LUA HC2 – Leçon 1] – Allumer/Éteindre – module binary_ligh

Bonjour à tous,
Je me suis aperçu que il n’existe pas beaucoup de tutoriel sur le langage LUA pour HC2 de Fibaro.
Je reçois régulièrement les demande de mes clients pour une configuration un peu plus complexe de scènes pour leurs installation domotique.
J’ai décidé donc de partager le peu de connaissances que je possède ;)

Aujourd’hui je vais vous expliquer comment allumer et éteindre la lumière (binary_light)

on considère que le module possède ID=100

Rappel le code LUA doit TOUJOURS commencer par:

Code:

1
2
3
4
--[[
%% properties
%% globals
--]]
--[[
%% properties
%% globals
--]]


On va utiliser les API de Fibaro suivants:
fibaro:debug = Affiche un commentaire
fibaro:call = Fonction qui envoie une requête pour exécuter une action.
fibaro:getValue = Fonction qui récupère la valeur.

Voilà le code commenté:

Code:

1
2
3
4
5
6
7
8
9
10
11
12
13
    --[[
    %% properties
    %% globals
    --]]-- État actuel de la variable light
    local light = fibaro:getValue(100, 'value')-- si égal à 0 (lumière éteint) alors on allume
    if (light == '0') then
      fibaro:debug('On Allume!')
      fibaro:call(100, 'turnOn')
    else
    -- dans le cas contraire (lumière allumée) on éteint
      fibaro:debug('On Éteint')
      fibaro:call(100, 'turnOff')
    end
    --[[
    %% properties
    %% globals
    --]]-- État actuel de la variable light
    local light = fibaro:getValue(100, 'value')-- si égal à 0 (lumière éteint) alors on allume
    if (light == '0') then
      fibaro:debug('On Allume!')
      fibaro:call(100, 'turnOn')
    else
    -- dans le cas contraire (lumière allumée) on éteint
      fibaro:debug('On Éteint')
      fibaro:call(100, 'turnOff')
    end

Explication des API utilisées:

fibaro:debug(text)

Affiche le message ‘text’ dans la console debug associée avec le script.

Paramètre:
text: texte a afficher

Exemple: fibaro:debug(‘Votre texte ici’);

fibaro:call(deviceID, actionName, …)

Envoie une requête pour exécuter une action.

Paramètre:
deviceID : numéro ID de module
actionName : nom de l’argument a exécuter (ici turnOff ‘mise à 0’ et turnOn ‘mise à 1’)

Exemple: fibaro:call(100, ‘turnOff’); –mise à 0 du module

fibaro:getValue(deviceID, propertyName)

Fonction qui récupère la valeur.

Paramètre:
deviceID : numéro ID de module
propertyName : nom de propriété

Exemple: local light = fibaro:getValue(100, ‘value’) — récupère l’état de la variable light (soit 0, soit 1)

Si vous avez des question n’hésitez pas a me contacter.
Merci et à bientôt ;)

 

Une réflexion au sujet de « [LUA HC2 – Leçon 1] – Allumer/Éteindre – module binary_ligh »

  1. Ping : [LUA HC2 - Leçon 2] – Association de modules | Domotiques Home

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *