bibliothèque de fonctions pour scripts LUA

Vous avez crée un script lua dont vous êtes fier, un .sh génial, un programme python hors du commun, un tuto , c'est ici que vous pouvez les partager.
Soyez précis quant aux prérequis, les manips à faire pour que votre bijou fonctionne (des chmod ?, un apt-get à faire ...)
Décrivez précisément son fonctionnement
Placez votre code entre [Quote] et {/Quote]
Répondre
vil1driver
Messages : 4984
Enregistré le : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: bibliothèque de fonctions pour scripts LUA

Message par vil1driver » 15 avr. 2019, 10:20

A tester

Code : Tout sélectionner

-- script_device_remote.lua


-- chargement des modules (http://easydomoticz.com/forum/viewtopic.php?f=17&t=3940)
dofile('/home/pi/domoticz/scripts/lua/modules.lua')

local debug = false  -- true pour voir les logs dans la console log Dz ou false pour ne pas les voir

function groupToggle(group) 
   if otherdevices_scenesgroups[group] ~= 'Off' then
      groupOff(group) 
   else
      groupOn(group) 
   end           
end

commandArray = {} 
--------------------------------
------ Tableau à éditer ------
--------------------------------

   local bt={}
   
	--bt['switch name'] = { 'action On' , 'action Off' }
      bt['test']={'switch("Lumiere Garage")'}
      bt['test 2']={'groupToggle("Lumiere Salon Blanc")'}
	  
    -- etc.. 

--------------------------------
-- Fin du tableau à éditer --
--------------------------------



   for bouton, action in pairs(bt) do
		if (devicechanged[bouton] == 'On') then
			log('REMOTE: '..bouton..' switched On > '..action[1],debug)
			load(action[1])()
			break
		elseif (devicechanged[bouton] == 'Off') then
			log('REMOTE: '..bouton..' switched Off > '..action[2],debug)
			load(action[2])()
			break
		end
   end

return commandArray

MAJ = VIDER LE CACHE(<-Clicable)


Domoticz v4.10078 (ubuntu server) OpenZwave v1.4-3229 (zwave+ sigma designs) rfxtrx433 fw1015T1

433mhz : thgn800, ms13e2, phenix, Di.O, zk1pa, creasol sender
868mhz : fgms-001, fgfs-101, dsd37-zweu, ZW098


modules.lua

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


vulbas
Messages : 351
Enregistré le : 24 janv. 2017, 18:45

Re: bibliothèque de fonctions pour scripts LUA

Message par vulbas » 15 avr. 2019, 13:44

Merci vil1driver, t'es au top, ça marche nickel.

vil1driver
Messages : 4984
Enregistré le : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: bibliothèque de fonctions pour scripts LUA

Message par vil1driver » 15 avr. 2019, 18:45

;)
MAJ = VIDER LE CACHE(<-Clicable)


Domoticz v4.10078 (ubuntu server) OpenZwave v1.4-3229 (zwave+ sigma designs) rfxtrx433 fw1015T1

433mhz : thgn800, ms13e2, phenix, Di.O, zk1pa, creasol sender
868mhz : fgms-001, fgfs-101, dsd37-zweu, ZW098


modules.lua

denis_brasseur
Messages : 148
Enregistré le : 24 déc. 2018, 17:05
Localisation : (26)

Re: bibliothèque de fonctions pour scripts LUA

Message par denis_brasseur » 24 mai 2019, 07:57

J'utilise la bibliothèque de fonctions pour script LUA, personnalisé avec mes propres fonctions.
La fonction creaVar me pose problème depuis quelques jours :

Code : Tout sélectionner

-- création de variable utilisateur
-- usage
-- creaVar('toto','10') -- pour créer une variable nommée toto comprenant la valeur 10
function creaVar(name,value)
	local api = '/json.htm?type=command&param=saveuservariable'
	local name = '&vname='..url_encode(name)
	local vtype = '&vtype=2'
	local value = '&vvalue='..url_encode(value)
	api = api..name..vtype..value
	os.execute(curl..'-u '..domoticzUSER..':'..domoticzPSWD..' "'..domoticzURL..api..'" &')
end
En regardant dans la console et en créant une variable depuis l'interface, la commande envoyé est celle ci :

Code : Tout sélectionner

http://192.168.1.6:8060/json.htm?type=command&param=adduservariable&vname=test&vtype=2&vvalue=essai
Retour si envoi depuis le navigateur :
{
"status" : "OK",
"title" : "AddUserVariable"
}
et non pas

Code : Tout sélectionner

http://192.168.1.6:8060/json.htm?type=command&param=saveuservariable&vname=test&vtype=2&vvalue=essai
Retour si envoi depuis le navigateur :
{
"status" : "ERR"
}
Cela fonctionne ensuite en remplaçant saveuservariable par adduservariable dans la fonction.

Error Updating Variable with version 4.10298 (solved in 4.10299)
Domoticz + Raspberry Pi3 + Disque Dur PiDrive + RFXtrx433
10 Getdio 54755 (gestion chauffage)
2 CHACON 34131 (détecteur fumées)
5 Bresser Capteur thermo/hygro RC 5CH
2 CHACON DiO 54781 (contacteur porte)
1 Compteur de consommation OWL Micro+ CM180

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


vil1driver
Messages : 4984
Enregistré le : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: bibliothèque de fonctions pour scripts LUA

Message par vil1driver » 24 mai 2019, 09:26

Ahh les mises à jour.. :?

Merci de ton retour.
MAJ = VIDER LE CACHE(<-Clicable)


Domoticz v4.10078 (ubuntu server) OpenZwave v1.4-3229 (zwave+ sigma designs) rfxtrx433 fw1015T1

433mhz : thgn800, ms13e2, phenix, Di.O, zk1pa, creasol sender
868mhz : fgms-001, fgfs-101, dsd37-zweu, ZW098


modules.lua

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Répondre