Page 2 sur 2
Re: Domoticz/ESP8266/ESPEASY
Publié : 23 mars 2021, 21:07
par Keros
Tant mieux
Vas-y petit à petit, tu vas y arriver !
Pour vérifier après un certain délai, c'est pas très évident. Je pense que le plus facile serait de déclencher un autre device virtuel après le fameux délai ; device virtuel qui lancerait le script de vérification.
Il y a peut-être d'autres solutions plus simples...
Re: Domoticz/ESP8266/ESPEASY
Publié : 23 mars 2021, 21:28
par david86
OK, en effet petit à petit...
J'ai réussi à récupérer ma valeur de pression selon mon capteur dummy.
Je vais voir ce que je vais arriver à en faire par la suite.
Finalement, entre le lua et le DZEVENT, ok la rédaction n'est pas la même, mais l'intéret de l'un par rapport à l'autre c'est quoi ?
Re: Domoticz/ESP8266/ESPEASY
Publié : 23 mars 2021, 22:02
par Keros
Le DZvent est du LUA mais appliquer à DomoticZ. C'est ce qu'on appelle une programmation orientée objet.
Niveau fonctionnement, je ne pense pas qu'il y est une différence. Niveau syntaxe : l'un dit "active ceci", l'autre dit "passe ceci à On".
Re: Domoticz/ESP8266/ESPEASY
Publié : 23 mars 2021, 22:16
par david86
Ok !
Pour la quête sur le temps, je me demande si je vais pas chercher avec l’argument os.date() et peut être %S pour jouer avec les secondes...
Je ne vois pas comment créer une boucle du genre :
Si interrupteur == on then
For i=os.date(%S),i<30,i++
CommandArray(sendNotification...)
En gros qu’il prenne i à la seconde et qu’il rajoute 30 secondes et envoi à partir de ce moment la notification.
Jouable ? Perplexe la...
Re: Domoticz/ESP8266/ESPEASY
Publié : 23 mars 2021, 22:20
par Keros
Non, ça tu ne peux pas le faire.
Re: Domoticz/ESP8266/ESPEASY
Publié : 23 mars 2021, 22:42
par david86
Ça aurait été trop facile hein sinon...

Re: Domoticz/ESP8266/ESPEASY
Publié : 24 mars 2021, 21:09
par david86
Bonsoir Keros,
Pour le moment je n'ai pas cherché avec la fonction os.date() à faire quoi que ce soit, je suis resté sur ton idée d'interrupteur virtuel sur lesquels je met une tempo d'allumage et lorsqu'il s'enclenche, ça déclenche ma contrainte de temps et la vérification est alors faite.
J'ai voulu réduire mes conditions, plutôt que faire des if then if then if then, j'ai voulu faire faire un if then else mais ça n'a pas fonctionné, j'ai du faire un if then else if
Si dans ce code je remplace le else if (condition) par un simple else, je reçoit des notifications toutes les 2 secondes.... Je comprend pas trop pourquoi.
Et bien écoute, je te remercie encore, moi qui y'a 2 jours je me demandais comment je m'en serai sorti... Ce n'est rien de folichon, mais bien content d'y être arrivé. Merci
Code : Tout sélectionner
Heure_Actuelle=os.date("%X")
commandArray = {}
if (devicechanged['Interrupteur salon'] == 'On') then
commandArray['Timer-Virtuel-5s'] = 'On'
commandArray['Timer-Virtuel-120s'] = 'On'
end
if (devicechanged['Timer-Virtuel-120s'] == 'On'and (otherdevices_temperature['Temp-virtuel'] < 100)) then
pression = (otherdevices['Temp-virtuel'])
pression=tonumber(pression)
commandArray['SendNotification']='DANGER POMPE#Désamorçage POMPE à : '..(Heure_Actuelle)..' @ '..(pression)..' bars#2'
commandArray['Interrupteur salon'] = 'Off'
elseif(devicechanged['Timer-Virtuel-120s'] == 'On'and (otherdevices_temperature['Temp-virtuel'] > 100)) then
commandArray['SendNotification']='POMPE OK#@bars#0'
end
return commandArray
Re: Domoticz/ESP8266/ESPEASY
Publié : 24 mars 2021, 21:49
par Keros
Très content que tu sois arrivé à te lancer
Tu ne peux pas utiliser de Else car ta première condition est sur un devicechanged. La condition else est donc rempli pour tous les autres devicechanged. Ce qui explique pourquoi t'en as autant.
C'est ta condition and ... qu'il faut que tu places dans autre if en dessous. Et là tu pourras utiliser le Else.