Page 10 sur 34

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 18:24
par thier
On y arrivera pas si tu ne test pas les scripts que je post. Essaie le dernier et on verra ensuite pour le reste. on ferra un autre script mais en time pour fermer.

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 18:31
par vr6man
non ton script ouvre bien le store

Code : Tout sélectionner

commandArray={}

--pour connaitre les valeurs on met des print. Tu les commentes avec -- quand tu n'en as plus besoin.
        
        print('otherdevices[\'Store Terrasse\'] '..otherdevices['Store Terrasse'])
        print('otherdevices[uservariables["store exterieur"]] '..uservariables["store exterieur"])
-- Ouverture Store Terrasse
if (devicechanged['Store Terrasse'])
    if uservariables["store exterieur"] == 'ferme' and otherdevices['Absence']=='Off') then
        commandArray['Ouverture Store Terrasse']='On'
        print('Ouverture Store Terrasse')
        commandArray ['Variable:store exterieur']='ouvert'
        commandArray['SendNotification']='Store Terrasse#Ouverture Store Terrasse'

-- Fermeture du Store Terrasse
    elseif (uservariables["store exterieur"] == 'ouvert' and otherdevices['Absence']=='Off') then
        commandArray['Fermeture Store Terrasse']='On'
        print('Fermeture Store Terrasse')
        commandArray ['Variable:store exterieur']='ferme'
        commandArray['SendNotification']='Store Terrasse#Fermeture Store Terrasse'
    end
end
return commandArray
mais la variable reste a ferme alors que le store est ouvert

et du coup le store ne se ferme pas si je passe nuit a ON

par contre le script marche avec mes dernière motifs

Code : Tout sélectionner

commandArray={}

--pour connaitre les valeurs on met des print. Tu les commentes avec -- quand tu n'en as plus besoin.
        print('otherdevices[\'UV\'] '..otherdevices['UV'])
        print('otherdevices[\'Pluie\'] '..otherdevices['Pluie'])
       -- print('otherdevices[\'Nuit\'] '..otherdevices['Nuit'])
        print('otherdevices[\'Vent\'] '..otherdevices['Vent'])
       -- print('otherdevices[\'Absence\'] '..otherdevices['Absence'])
        print('otherdevices[\'Store Terrasse\'] '..otherdevices['Store Terrasse'])
        print('otherdevices[uservariables["store exterieur"]] '..uservariables["store exterieur"])
-- Ouverture Store Terrasse
if (devicechanged['Store Terrasse']=='On' and otherdevices['Absence']=='Off') then
        commandArray['Ouverture Store Terrasse']='On'
        print('Ouverture Store Terrasse')
        commandArray ['Variable:store exterieur']='ouvert'
        commandArray['SendNotification']='Store Terrasse#Ouverture Store Terrasse'

-- Fermeture du Store Terrasse
elseif (devicechanged['Nuit']=='On' and uservariables["store exterieur"] == 'ouvert'and otherdevices['Absence']=='Off' and otherdevices['Store Terrasse']=='16.0') then
        commandArray['Fermeture Store Terrasse']='On'
        print('Fermeture Store Terrasse')
        commandArray ['Variable:store exterieur']='ferme'
        commandArray['SendNotification']='Store Terrasse#Fermeture Store Terrasse'
end

return commandArray

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 18:35
par thier
et du coup le store ne se ferme pas si je passe nuit a ON ne sert à rien il n'est pas dans le script.
Avec mon dernier script peux-tu ouvrir et fermer le store seulement en cliquent sur store terrasse?
nuit à On tu l'oublie pour le moment.
Verifie et dis moi avant de lancer la première action si la variable correspond bien à l'état de ton store. store ouvert = variable ouvert. Store fermé = variable fermé.

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 18:38
par thier
Va lire la valeur de la variable dans l'interface domoticz
avec ce script

Code : Tout sélectionner

commandArray={}

-- Ouverture Store Terrasse
if (devicechanged['Store Terrasse'])
    if uservariables["store exterieur"] == 'ferme' and otherdevices['Absence']=='Off') then
        commandArray['Ouverture Store Terrasse']='On'
        print('Ouverture Store Terrasse')
        commandArray ['Variable:store exterieur']='ouvert'
        commandArray['SendNotification']='Store Terrasse#Ouverture Store Terrasse'

-- Fermeture du Store Terrasse
    elseif (uservariables["store exterieur"] == 'ouvert' and otherdevices['Absence']=='Off') then
        commandArray['Fermeture Store Terrasse']='On'
        print('Fermeture Store Terrasse')
        commandArray ['Variable:store exterieur']='ferme'
        commandArray['SendNotification']='Store Terrasse#Fermeture Store Terrasse'
    end
end
return commandArray

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 18:39
par vr6man
elle reste a ferme même quand j'ouvre le store

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 18:43
par thier
je suis bête le elseif doit s’exécuter puisque qu'avant on met la variable à ouvert.
pour confirmer test

Code : Tout sélectionner

-- Ouverture Store Terrasse
if (devicechanged['Store Terrasse'])
    if uservariables["store exterieur"] == 'ferme' and otherdevices['Absence']=='Off') then
        commandArray['Ouverture Store Terrasse']='On'
        print('Ouverture Store Terrasse')
        commandArray ['Variable:store exterieur']='ouvert'
        commandArray['SendNotification']='Store Terrasse#Ouverture Store Terrasse'
	end
end
le store doit s'ouvrir et la variable passé à ouvert.

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 18:58
par vr6man
toujours pas le store s'ouvre et reste a fermé donc ne peux pas se fermer avec nuit qui passe à On


Sinon celui la marche bien avec les Maj de la variable

Code : Tout sélectionner

commandArray={}

--pour connaitre les valeurs on met des print. Tu les commentes avec -- quand tu n'en as plus besoin.
        print('otherdevices[\'UV\'] '..otherdevices['UV'])
        print('otherdevices[\'Pluie\'] '..otherdevices['Pluie'])
       -- print('otherdevices[\'Nuit\'] '..otherdevices['Nuit'])
        print('otherdevices[\'Vent\'] '..otherdevices['Vent'])
       -- print('otherdevices[\'Absence\'] '..otherdevices['Absence'])
        print('otherdevices[\'Store Terrasse\'] '..otherdevices['Store Terrasse'])
        print('otherdevices[uservariables["store exterieur"]] '..uservariables["store exterieur"])
-- Ouverture Store Terrasse
if (devicechanged['Store Terrasse']=='On' and otherdevices['Absence']=='Off') then
        commandArray['Ouverture Store Terrasse']='On'
        print('Ouverture Store Terrasse')
        commandArray ['Variable:store exterieur']='ouvert'
        commandArray['SendNotification']='Store Terrasse#Ouverture Store Terrasse'

-- Fermeture du Store Terrasse
elseif (devicechanged['Nuit']=='On' and uservariables["store exterieur"] == 'ouvert'and otherdevices['Absence']=='Off' and otherdevices['Store Terrasse']=='16.0') then
        commandArray['Fermeture Store Terrasse']='On'
        print('Fermeture Store Terrasse')
        commandArray ['Variable:store exterieur']='ferme'
        commandArray['SendNotification']='Store Terrasse#Fermeture Store Terrasse'
end

return commandArray
On peu peu être garder celui la et passer a la partie météo

en tout cas merci du temps que tu prends pour moi

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 19:08
par thier
ok mais enlève ton devicechanged['Nuit']=='On' il n'a rien à faire là et il va mettre la misère. tu le remplace par otherdevices['Nuit']~='On'

On s'occupe dans le script suivant de le fermer à la nuit. Tu créés un nouveau script de type time que tu nommes script_time_store.lua

commandArray={}
-- Fermeture du Store Terrasse
if (devicechanged['Nuit']=='On') then
commandArray['Fermeture Store Terrasse']='On'
print('Fermeture Store Terrasse')
commandArray ['Variable:store exterieur']='ferme'
commandArray['SendNotification']='Store Terrasse#Fermeture Store Terrasse'
end
return commandArray

pour tester:
1- tu met Nuit à Off
2- tu ouvres le store
3-tu attends qu'il soit ouvert
4-tu mets Nuit à On, le store doit se fermer au changement de minute suivant (script time s'exécute toutes les minutes).

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 19:20
par vr6man
c'est bon avec les 2 scripts cela fonctionne et les variables sont bien mis a jour

Par contre le device store terrasse ne se met pas a jour quand le store se ferme a cause de nuit

Je comprends pourquoi tu voulais que je retire les commandes json ce que je vais faire

Par contre faut que je rajoute quoi pour mettre a jour l'état du device store terrasse

Re: aide pour réalisation script en lua

Publié : 10 mai 2020, 19:27
par thier
vil1driver a écrit : 10 mai 2020, 16:19 Pour récupérer les uv seuls tu peux tester ceci

Code : Tout sélectionner

otherdevices_uv['UV'] 
essai la même manip dans le même ordre avec le script en dessous et au passage donne moi la valeur de log de UV

Code : Tout sélectionner

commandArray={}
print('uv'..otherdevices_uv['UV'])
-- Fermeture du Store Terrasse
if (devicechanged['Nuit']=='On') then
commandArray['Fermeture Store Terrasse']='On'
commandArray['Store Terrasse']='Off'
print('Fermeture Store Terrasse')
commandArray ['Variable:store exterieur']='ferme'
commandArray['SendNotification']='Store Terrasse#Fermeture Store Terrasse'
end
return commandArray