OBone-git / Cozytouch-domoticz

Python script for read/write data between the cozytouch server and domoticz on rpi
MIT License
17 stars 15 forks source link

Création de doublon (Probleme avec module fil pilote) #45

Closed Flavien06 closed 8 months ago

Flavien06 commented 1 year ago

Bonjour, J'ai ajouter une module fil pilote à mon installation. 1) Pour qu'il puisse apparaitre j'ai été obliger de supprimer tous mes Dispositif "Cozytouch_V5.34". 2) Depuis à chaque exécution le script tous mes Dispositif sont à nouveaux crée

A la fin du log j'ai cette erreur

Traceback (most recent call last):
  File "cozytouch.py", line 1920, in <module>
    decouverte_devices()
  File "cozytouch.py", line 665, in decouverte_devices
    liste= ajout_module_fil_pilote (save_idx,liste,url,x,read_label_from_cozytouch(data,x,oid))
  File "cozytouch.py", line 845, in ajout_module_fil_pilote
    myurl=u'http://'+domoticz_ip+u":"+domoticz_port+u'/json.htm?addjvalue=0&addjvalue2=0&customimage=15&description=&idx='+radiateur[u'idx_switch']+u'&name='+nom_switch+u'+&options='+option
NameError: global name 'radiateur' is not defined

Les différence de log. A gauche 1ere exécution et à droite la 3eme : diflog

OBone-git commented 1 year ago

Bonjour, petite correction avec le #46 à tester.

Flavien06 commented 1 year ago

Merci c'est parfait, ça fonctionne.

Flavien06 commented 8 months ago

Bonjour,

Je viens de passer à la dernière version (5.37) le problème est de nouveaux la.

Mon module fixe pilote existe déjà en idx=139 mais il m'en crée un nouveaux, à chaque exécution de script.

1ere exécution :

GET->   http://192.168.1.33:8080/json.htm?type=command&param=getdevices&rid=139   :   200
Fonction comparaison switch selecteur : Module fil pilote Salle de bain idx:139
Etat actuel du switch Domoticz: 10
Etat actuel du mode dans Domoticz: frostprotection
Etat ancien du mode dans Domoticz: comfort
Etat actuel du mode dans Cozytouch: eco
Cas 1 : changement vient de domoticz, envoie du mode à cozytouch
 POST-> https://ha110-1.overkiz.com/enduser-mobile-web/externalAPI/json/../../enduserAPI/exec/apply | {"actions": [{ "deviceURL": "io://0806-0062-6844/4383745" ,
"commands": [{ "name": "setHeatingLevel",
"parameters":["frostprotection"]}]}]} : 200
GET->   http://192.168.1.33:8080/json.htm?type=command&param=addlogmessage&message=Cozytouch - Module fil pilote Salle de bain : nouveau mode transmis: frostprotection&level=2   :   200

2eme exécution :

GET->   http://192.168.1.33:8080/json.htm?type=command&param=createvirtualsensor&idx=14&sensorname=Module fil pilote Salle de bain+&sensortype=1002   :   200
data : {u'status': u'OK', u'idx': u'213', u'title': u'CreateVirtualSensor'}
    **** domoticz virtual sensor index : 213
GET->   http://192.168.1.33:8080/json.htm?addjvalue=0&addjvalue2=0&customimage=15&description=&idx=213&name=Mode Module fil pilote Salle de bain+&options=TGV2ZWxOYW1lczpPZmZ8SG9ycyBnZWx8RWNvfENvbmZvcnQgLTJ8Q29uZm9ydCAtMXxDb25mb3J0O0xldmVsQWN0aW9uczp8fHx8fDtTZWxlY3RvclN0eWxlOjE7TGV2ZWxPZmZIaWRkZW46ZmFsc2U%3D&protected=false&strparam1=&strparam2=&switchtype=18&type=setused&used=true   :   200
GET->   http://192.168.1.33:8080/json.htm?type=command&param=addlogmessage&message=Cozytouch : creation Module fil pilote Salle de bain ,url: io://0806-0062-6844/4383745&level=2   :   200
Ajout: Module fil pilote Salle de bain

EDIT: En fait il m'a crée des nouveaux IDX pour tous mes appareil. Après plusieurs lancement j'ai pas l'impression qu'il m'en crée de nouveaux.

Flavien06 commented 8 months ago

J'ai supprimer de domoticz tous les matériel du script et ça semble ok...