J'avais recherché ta solution sur le forum mais je ne l'avais pas trouvée. Et le coup de la boucle infinie me tentait moyen ; si je dois arrêter le script ça va être plus compliqué. Et une boucle infinie avec une limitation de temps d'exécution à 30 secondes pour les scripts PHP ?
J'ai finalement creusé une piste que m'a donnée la team en réponse à mon ticket demandant la possibilité de réduire le polling.
Finalement je m'en sors comme ça :
- un actionneur HTTP qui appelle le script via une macro renouvelée au bout de 30 secondes
- ce même script appelé via l'actionneur qui met à jour les différents états via l'API locale et la fonction setValue(), par une boucle while() répétée 5 fois avec une pause de 5 secondes à chaque fois
- une règle exécutée toutes les minutes qui appelle la macro de l'actionneur
Ca me permet d'arrêter le script en désactivant la règle.
C'est en cours de test sur ma box