FlyingDomotic / domoticz-airsend-plugin

AirSend (https://devmel.com/) Domoticz plug-in/Plug-in Domoticz pour Airsend
GNU General Public License v3.0
2 stars 0 forks source link

Faillure on plug in installation #1

Closed rezzalex closed 1 year ago

rezzalex commented 1 year ago

Bonjour et merci pour ce plug in.

voici mon message d'erreur à l'activation du plugin (quand je clique sur "Add" dans la liste des hardware) :

2023-01-04 11:52:41.991 Error: AirSend: (AirSend) failed to load 'plugin.py', Python Path used was '/opt/domoticz/userdata/plugins/AirSend/:/usr/lib/python37.zip:/usr/lib/python3.7:/usr/lib/python3.7/lib-dynload:/usr/local/lib/python3.7/dist-packages:/usr/lib/python3/dist-packages:/usr/lib/python3.7/dist-packages'. 2023-01-04 11:52:41.996 Error: AirSend: Traceback (most recent call last): 2023-01-04 11:52:41.996 Error: AirSend: File "/opt/domoticz/userdata/plugins/AirSend/plugin.py", line 24, in <module> 2023-01-04 11:52:41.996 Error: AirSend: import yaml 2023-01-04 11:52:41.996 Error: AirSend: ModuleNotFoundError: No module named 'yaml'

j'avais bien copier avant le fichier configuration.yaml dans le répertoire du plugin (mais par l'explorateur windows, pas par une commande linux depuis mon container Domoticz.

Par ailleurs, doit-on créer soi-même le ficher de configuration .json ou bien le plugin le créé automatiquement et ensuite une modification manuelle serait requise ?

Voici ma configuration DZ :

Version: 2022.2 (build 14895) Build Hash: fbac95755 Compile Date: 2022-12-25 14:31:07 dzVents Version: 3.1.8 Python Version: 3.7.3 (default, Oct 31 2022, 14:04:00) [GCC 8.3.0]

FlyingDomotic commented 1 year ago

Il semble que le parser Python YAML ne soit pas présent sur la machine.

On peut l'installer par la commande pip3 install pyyaml (remplacer pip3 par pip pour les versions 2.x de Python).

rezzalex commented 1 year ago

Fait, je suppose que le fichier .json doit être créer manuellement avant ?

2023-01-04 12:24:07.293 Error: AirSend: Call to function 'onStart' failed, exception details: 2023-01-04 12:24:07.294 Error: AirSend: Traceback (most recent call last): 2023-01-04 12:24:07.294 Error: AirSend: File "/opt/domoticz/userdata/plugins/AirSend/plugin.py", line 541, in onStart 2023-01-04 12:24:07.294 Error: AirSend: _plugin.onStart() 2023-01-04 12:24:07.294 Error: AirSend: File "/opt/domoticz/userdata/plugins/AirSend/plugin.py", line 150, in onStart 2023-01-04 12:24:07.294 Error: AirSend: with open(jsonFile, encoding = 'UTF-8') as configStream: 2023-01-04 12:24:07.294 Error: AirSend: FileNotFoundError: [Errno 2] No such file or directory: '/opt/domoticz/userdata/plugins/AirSend/AirSend.json' 2023-01-04 12:24:16.079 Error: AirSend: Init not ok, onHeartbeat ignored 2023-01-04 12:24:26.068 Error: AirSend: Init not ok, onHeartbeat ignored 2023-01-04 12:24:36.053 Error: AirSend: Init not ok, onHeartbeat ignored

FlyingDomotic commented 1 year ago

Effectivement ...

rezzalex commented 1 year ago

J'ai tenté de supprimer les lignes du fichier .json qui ne m'intéressent pas (pour le moment) : les parties sur le webserver, l'écoute et le callback :

{ "parameters": { "domoticzRootUrl": "http://127.0.0.1:9200/", "yamlConfigurationFile": "configuration.yaml", "webServiceUrl": "http://127.0.0.1:33863/", "authorization" : "sp://78k6kVCRUVtDP28k@[fe80::dcf6:e5ff:fe8d:2e9a]?gw=0" }, ] }

mais j'ai toujours des erreurs :

2023-01-04 12:35:22.193 Error: AirSend: Call to function 'onStart' failed, exception details: 2023-01-04 12:35:22.194 Error: AirSend: Traceback (most recent call last): 2023-01-04 12:35:22.195 Error: AirSend: File "/opt/domoticz/userdata/plugins/AirSend/plugin.py", line 541, in onStart 2023-01-04 12:35:22.195 Error: AirSend: _plugin.onStart() 2023-01-04 12:35:22.195 Error: AirSend: File "/opt/domoticz/userdata/plugins/AirSend/plugin.py", line 151, in onStart 2023-01-04 12:35:22.195 Error: AirSend: jsonData = json.load(configStream) 2023-01-04 12:35:22.195 Error: AirSend: File "/usr/lib/python3.7/json/__init__.py", line 296, in load 2023-01-04 12:35:22.195 Error: AirSend: parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw) 2023-01-04 12:35:22.195 Error: AirSend: File "/usr/lib/python3.7/json/__init__.py", line 348, in loads 2023-01-04 12:35:22.195 Error: AirSend: return _default_decoder.decode(s) 2023-01-04 12:35:22.195 Error: AirSend: File "/usr/lib/python3.7/json/decoder.py", line 337, in decode 2023-01-04 12:35:22.195 Error: AirSend: obj, end = self.raw_decode(s, idx=_w(s, 0).end()) 2023-01-04 12:35:22.195 Error: AirSend: File "/usr/lib/python3.7/json/decoder.py", line 353, in raw_decode 2023-01-04 12:35:22.195 Error: AirSend: obj, end = self.scan_once(s, idx) 2023-01-04 12:35:22.195 Error: AirSend: File "/usr/lib/python3.7/json/decoder.py", line 35, in __init__ 2023-01-04 12:35:22.195 Error: AirSend: ValueError.__init__(self, errmsg) 2023-01-04 12:35:22.195 Error: AirSend: NameError: name 'ValueError' is not defined

rezzalex commented 1 year ago

ok, j'ai finalement réussi a avoir un fichier .json correct et un plugin qui démarre correctement sous DZ

je vais tester le plugin. Merci