Je dispose d'un script qui me permet de compter l'énergie produite par les panneaux photovoltaïque.
Mon script fonctionne correctement cependant je désire un peu protéger mon système contre les intrusion.
Actuellement, je n'ai pas de sécurité sur domoticz

Lorsque j'entre un identifiant et mdp dans les paramètres, mon script ne fonctionne plus, je n'ai plus aucun comptage.
Code : Tout sélectionner
#!/usr/bin/env python
#imports
import time
import RPi.GPIO as GPIO
import json
import urllib2
import threading
#Config serveur domoticz
domoticzserver="192.168.14.110:8080"
domoticzusername="monusername"
domoticzpassword="mon mdp"
domoticzpasscode="mon mdp"
#vars
GET_URL = 'http://localhost:8080/json.htm?type=devices&rid=%d'
SET_URL = 'http://localhost:8080/json.htm?type=command¶m=udevice&idx=%d&svalue=%d'
ELEC_DELTA = 0
ELEC_IDX = 6
ELEC_GPIO = 22
ELEC_COUNTER_LOCK = threading.Lock()
def gpio_intr(pin):
if pin == ELEC_GPIO:
global ELEC_DELTA
with ELEC_COUNTER_LOCK:
ELEC_DELTA += 1
print 'Electricity counter tick: %d' % ELEC_DELTA
print time.strftime('%d/%m/%y %H:%M:%S',time.localtime())
def main():
global ELEC_DELTA
GPIO.setmode(GPIO.BCM)
GPIO.setup(ELEC_GPIO, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.add_event_detect(ELEC_GPIO, GPIO.RISING, callback=gpio_intr, bouncetime=100)
while True:
time.sleep(5)
ELEC_DELTA_POST = ELEC_DELTA
if ELEC_DELTA_POST != 0:
try:
res = json.load(urllib2.urlopen(SET_URL % (ELEC_IDX, ELEC_DELTA_POST)))
if res['status'] != 'OK':
raise Exception('Domoticz json error')
with ELEC_COUNTER_LOCK:
ELEC_DELTA -= ELEC_DELTA_POST
except Exception as e:
print e
# print 'Elec delta %d' % (ELEC_DELTA_POST)
if __name__=="__main__":
main()domoticzserver="localhost:8080"
domoticzserver="http://192.168.14.110:8080"
domoticzserver="http://localhost:8080"
Pouvez-vous m'aiguiller pour résoudre mon problème?
Merci d'avance
