Page 2 sur 3

Re: Déclenchement sur une date et une heure définie

Publié : 30 déc. 2020, 10:32
par Dreamer
Merci, c'est sympa 👍

Re: Déclenchement sur une date et une heure définie

Publié : 31 déc. 2020, 16:47
par Dreamer
En regardant de plus près la fonction planning, je me suis rendu compte celle-ci me permettait de changer l'état de mon switch sélecteur mais ce changement d'état n'est pas pris en compte de la même manière que si je le faisais par un clic.
Par exemple mon sélecteur de chauffage passe bien sur "On'" en utilisant la fonction planning mais mes scripts (if sélecteur == "On") ne se déclenchent pas, qu'ils soient en Device ou Time?

Avez vous une explication?

Re: Déclenchement sur une date et une heure définie

Publié : 31 déc. 2020, 17:14
par Keros
Donne nous un exemple de script afin que l'on puisse analyser le problème que tu rencontres.

Re: Déclenchement sur une date et une heure définie

Publié : 31 déc. 2020, 17:31
par Dreamer
Keros a écrit : 31 déc. 2020, 17:14 Donne nous un exemple de script afin que l'on puisse analyser le problème que tu rencontres.
Par exemple, si j'utilise la fonction Planning du sélecteur de mon poêle pour le mettre sur Off à une date précise
sélecteur.JPG
sélecteur.JPG (15.91 Kio) Consulté 3646 fois
et bien le script blocky suivant ne s'execute pas (qu'il soit en Device ou Time) et donc les variables ne s'actualisent pas :
Blocky.JPG
Blocky.JPG (104.95 Kio) Consulté 3646 fois
.

C'est bizarre et dommage car je trouvais la fonction planning très utile pour programmer mon poele lorsque je m'absente de ma maison et reviens deux jours plus tard.

Qu en pensez vous?

Re: Déclenchement sur une date et une heure définie

Publié : 01 janv. 2021, 08:01
par denis_brasseur
Dreamer a écrit : 31 déc. 2020, 17:31 Qu en pensez vous?
Peut etre est il temps de passer à LUA si tu n'as jamais testé.
Il y a plusieurs facon de l'écrire, c'est celle que je trouve la plus lisible pour commencer et comprendre :

Code : Tout sélectionner

commandArray = {}
if devicechanged['Selecteur_Poele'] then
    print(otherdevices['Selecteur_Poele'])
    if otherdevices['Selecteur_Poele'] == 'Off' then
        print('Passage de Selecteur_Poele à Off')
        commandArray['Variable:Chauffage-Poele-Deb-Cal1'] = '00:01'
        commandArray['Variable:Chauffage-Poele-Fin-Cal1'] = '00:00'
        --ici le reste de tes variables
    elseif otherdevices['Selecteur_Poele'] == 'On' then
        print('Passage de Selecteur_Poele à On')
        commandArray['Variable:Chauffage-Poele-Deb-Cal1'] = '00:00'
        commandArray['Variable:Chauffage-Poele-Fin-Cal1'] = '23:59'
        --ici le reste de tes variables
    elseif otherdevices['Selecteur_Poele'] == '7h30/21h30' then
        print('Passage de Selecteur_Poele à 7h30/21h30')
        commandArray['Variable:Chauffage-Poele-Deb-Cal1'] = '07:30'
        commandArray['Variable:Chauffage-Poele-Fin-Cal1'] = '21:30'
    end
end
return commandArray
Le script doit être de type device, les variables de type Chaîne ou Heure et tu dois voir dans les logs chaque changement d'état de Selecteur_Poele.
A voir ensuite si le changement d'état du device via le planning retourne bien les logs

Re: Déclenchement sur une date et une heure définie

Publié : 02 janv. 2021, 12:23
par Dreamer
denis_brasseur a écrit : 01 janv. 2021, 08:01 Peut etre est il temps de passer à LUA si tu n'as jamais testé.
Je viens de tester ton script et ça fonctionne :) . De fait, la fonction planning des switchs s'accorde mieux avec les scripts Lua que Blocky.
C'est super, je te remercie d'avoir pris le temps de me répondre et d'avoir ajouté la trame du script.
J'avoue avoir 32 scripts et les premiers (une dizaine) que j'avais faits sont restés en Blocky, je vais les passer en Lua.

Re: Déclenchement sur une date et une heure définie

Publié : 02 janv. 2021, 13:30
par Keros
J'ai résumé des petites infos sur la programmation dans ma signature. Ca pourra peut-être d'aider ;)

Re: Déclenchement sur une date et une heure définie

Publié : 11 janv. 2021, 09:39
par Dreamer
Bonjour,

J'étais absent de chez moi ce we et suis rentré vers 8h30 ce jour. J'avais donc utilisé la fonction "planning" de mon sélecteur poêle
selecteur.JPG
selecteur.JPG (35.27 Kio) Consulté 3536 fois
en indiquant que celui-ci devait passer sur On ce matin à 5h00. En arrivant chez moi à 8h30, il caillait :lol: , je me suis rendu compte que le sélecteur était bien passé sur "On" mais que le script "Device" associé à ce sélecteur ne s'était pas exécuté et que les variables ne s'étaient pas mises à jour :
script.JPG
script.JPG (95.4 Kio) Consulté 3536 fois
comme si la fonction lua "devicechanged['Selecteur_Poele']" n'avait pas considérée le changement d'état du sélecteur.

C'est presque avec des moufles que je vous écris :D mais j'aimerai bien que cette fonction "planning" soit pérenne 😊.

Auriez vous des suggestions pour que cela fonctionne?

Re: Déclenchement sur une date et une heure définie

Publié : 11 janv. 2021, 21:10
par Keros
Mets un print en dessous du premier devicechanged['Selecteur_Poele'] de ton script : fais un essai et tu verras s'il le détecte ou pas (il est possible que ce soit la valeur On qu'il n'a pas trouvée).

Re: Déclenchement sur une date et une heure définie

Publié : 12 janv. 2021, 12:01
par Dreamer
Oui je vais tester ainsi mais sur un ou plusieurs sélecteur/script que je vais créer en dummy car il faut que mon poêle fonctionne en ce moment à coup sur :lol:
Je soupçonne que la fonction planning gère mal le process "mettre sur ON" la "commande On" du sélecteur.
Je vous tiens au courant de mes tests ;)