J'ai déjà fait quelques scripts Lua pour tester.
A priori, dans un script_time_* le plus simple pour mettre à jour la valeur d'un capteur virtuel était
Code : Tout sélectionner
commandArray['UpdateDevice'] = idx .. '|0|' .. valDu coup, je suis passé par
Code : Tout sélectionner
commandArray[1] = {['OpenURL']=url..'/json.htm?type=command¶m=udevice&idx=' .. idx .. '&nvalue=0&svalue=' .. val}Et je tente maintenant avec Python
Les exemples fournis passent par un module DomoticzEvents qui proposent une fonction Command. Impossible à faire marcher sur mon exemple
Du coup, j'ai tenté d'accéder directement à l'url de mise à jour (module urllib.request ou requests). Mais cela déclenche un plantage silencieux du serveur Domoticz
Code : Tout sélectionner
import requests
url = 'http://{0}/json.htm?type=command¶m=udevice&idx={1}&nvalue=0&svalue={2};{3};{4}'
req = url.format(domoticzserver, idx, temperature, humidity,humS)
res = requests.get(req)Code : Tout sélectionner
import paho.mqtt.publish as publish
msg = '{ "idx" : {0}, "nvalue" : 0, "svalue" : "{1};{2};{3}" }'
publish.single(topic='domoticz/in',payload=msg.format(idx,temperature, humidity,humS),hostname=domoticzserver)Pour le moment, je suis obligé de faire un script indépendant lancé via cron toutes les X minutes, alors le script_time semble plus intégré à la solution.
Auriez-vous une idée pour réussir à intégrer cela dans un script_time_* ?