Polling script < 1mn

Discussion et échanges de scripts pour la box eedomus

Polling script < 1mn

Messagepar rover820i » 20 Juil 2018 17:17

Hello

J'ai besoin de faire un polling sur un script PHP toutes les 5s au maximum. Le polling de script sur eedomus est toutes les minutes ce qui est bien trop long (actualisation de l'état d'un périphérique réseau qui ne peut pas faire de push)

Une idée ?

Merci :)
rover820i
 
Messages : 3363
Inscription : 23 Juil 2016

Re: Polling script < 1mn

Messagepar influman » 20 Juil 2018 17:35

toutes les 5s ? ce n'est plus de la domotique, c'est de l'industrie temps-réel :D
influman
 
Messages : 2324
Inscription : 30 Oct 2013

Re: Polling script < 1mn

Messagepar technoman63 » 20 Juil 2018 17:43

ta quoi qui peut te demander autant de pooling ? :o
Mes Scripts eedomus : windDirection, rainTrend

Blog: https://devotics.fr
technoman63
 
Messages : 648
Inscription : 09 Avr 2015

Re: Polling script < 1mn

Messagepar rover820i » 21 Juil 2018 09:33

technoman63 a écrit:ta quoi qui peut te demander autant de pooling ? :o

Contact sec de thermostat de gainable. Je dois pouvoir gérer en quasi-temps réel la demande du thermostat et autoriser, ou non, l'ouverture des registres motorisés (qui ne se fera que par l'eedomus, et non en direct)

En fait le script doit mettre à jour régulièrement les valeurs d'entrées de mon périphérique réseau sur l'eedomus :)
rover820i
 
Messages : 3363
Inscription : 23 Juil 2016

Re: Polling script < 1mn

Messagepar influman » 21 Juil 2018 11:09

Pose toujours la question a la team eedomus..

En attendant, je ne vois pas d’autres solutions qu’un serveur php dedié, genre raspberry, qui ferait la lecture du thermostat et la maj eedomus.
influman
 
Messages : 2324
Inscription : 30 Oct 2013

Re: Polling script < 1mn

Messagepar rover820i » 21 Juil 2018 11:13

C'est bien ce que je n'ai pas envie de faire car le but est que tout soit centralisé :/

J'ai testé en mettant 0,5 dans le polling du périphérique HTTP mais forcément ça ne fonctionne pas :mrgreen: Pareil en mettant un HTTP EQUIV REFRESH dans mon script mais le périphérique ne peut pas interpréter le code retourné et n'affiche pas la valeur.

Je vais ouvrir un ticket, même si je doute d'obtenir une réponse, car c'est loin d'être une priorité...

Merci pour ta réponse :)
rover820i
 
Messages : 3363
Inscription : 23 Juil 2016

Re: Polling script < 1mn

Messagepar merguez07 » 22 Juil 2018 18:50

bonsoir,

il y a bien une solution avec un script php qui inclus une boucle infinie.
J'en utilise une pour surveiller mes appels téléphonique Free et ça ne sature pas la box
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: Polling script < 1mn

Messagepar rover820i » 23 Juil 2018 19:53

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 :)
rover820i
 
Messages : 3363
Inscription : 23 Juil 2016


Retour vers Scripts & Périphériques du store

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 45 invité(s)