[Plugin] Xiaomi Air Purifier 3H & 3C

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
Tntteam
Messages : 5
Inscription : 25 août 2021, 08:34

Re: [Plugin] Xiaomi Air Purifier 3H & 3C

Message par Tntteam »

Arf, me voila bien avec une nouvelle erreur, il refuse de charger 2 purificateurs car visiblement il ne veut pas charger deux fois le module python ??

Code : Tout sélectionner

2023-12-12 10:47:12.733 Error: Xiaomi purifier Chb: (Xiaomi-Miio-AirPurifier-Miot) failed to load 'plugin.py', Python Path used was '/home/pi/domoticz/plugins/MiioAirPurifierMiot/:/usr/lib/python39.zip:/usr/lib/python3.9:/usr/lib/python3.9/lib-dynload:/usr/local/lib/python3.9/dist-packages:/usr/lib/python3/dist-packages:/usr/lib/python3.9/dist-packages'.
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: Traceback (most recent call last):
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: File "/home/pi/domoticz/plugins/MiioAirPurifierMiot/plugin.py", line 45, in <module>
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: import miio
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: File "/usr/local/lib/python3.9/dist-packages/miio/__init__.py", line 74, in <module>
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: from miio.discovery import Discovery
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: File "/usr/local/lib/python3.9/dist-packages/miio/discovery.py", line 9, in <module>
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: import zeroconf
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: File "/usr/local/lib/python3.9/dist-packages/zeroconf/__init__.py", line 25, in <module>
2023-12-12 10:47:12.742 Error: Xiaomi purifier Chb: from ._cache import DNSCache # noqa # import needed for backwards compat
2023-12-12 10:47:12.743 Error: Xiaomi purifier Chb: ImportError: Interpreter change detected - this module can only be loaded into one interpreter per process.
Je suis tombé sur ce lien qui indique


This is related to the fact that you are using a recent cryptography module. you can solve this issue by downgrading the cryptography module

sudo python3 -m pip install cryptography==40.0.2 --upgrade`
Bon mon pip est tout cassé à cause de mes bidouillages du coup je n'arrive pas à voir ma version de cryptography mais de mémoire j'avais downgrade en version 38.0.4 déjà. Et puis le message d'erreur n'est pas exactement le même, ça semble plus lié au module DNSCache.

Si vous avez des idées ... :D
Deufo
Messages : 280
Inscription : 26 févr. 2019, 16:25

Re: [Plugin] Xiaomi Air Purifier 3H & 3C

Message par Deufo »

Il existe une méthode pour régler ce problème côté code, j'essaie de pousser une version corrective dans la semaine. J'étais parti pour corriger la compatibilité avec la dernière version de la librairie en premier lieu, cela ajoutera la compatibilité avec les derniers modèles.
Tntteam
Messages : 5
Inscription : 25 août 2021, 08:34

Re: [Plugin] Xiaomi Air Purifier 3H & 3C

Message par Tntteam »

Ah ?
Et ben super ! Un grand merci d'avance et bon courage !
Deufo
Messages : 280
Inscription : 26 févr. 2019, 16:25

Re: [Plugin] Xiaomi Air Purifier 3H & 3C

Message par Deufo »

Bon, finalement, pour le moment, je n'arrive pas à grand chose pour cette histoire de double instance, rien que relancer le plugin plante.

La seule solution que j'ai trouvé, c'est revenir à une vieille version de cryptography :

Code : Tout sélectionner

sudo python3 -m pip install cryptography==3.4.8 --upgrade
Pas de souci pour la lib python-miio qui a ce besoin par défaut.
Deufo
Messages : 280
Inscription : 26 févr. 2019, 16:25

Re: [Plugin] Xiaomi Air Purifier 3H & 3C

Message par Deufo »

J'ai poussé une mise à jour du plugin vers le framework extended, ça semble régler le problème de plusieurs instances.

Le fichier est dispo ici pour test : https://github.com/SylvainPer/DomoticzX ... /plugin.py

Je regarderai la dernière version de la librairie après les fêtes.
Tntteam
Messages : 5
Inscription : 25 août 2021, 08:34

Re: [Plugin] Xiaomi Air Purifier 3H & 3C

Message par Tntteam »

Salut !
Désolé pour le retour tardif :(

ça ne fonctionne pas pour moi, peut-être qu'une des librairies que j'ai est dans une version qui ne va pas ?
Quelles sont vos versions de librairies python utilisées actuelles pour vous ?

Code : Tout sélectionner

2024-01-15 09:41:34.647 Error: Xiaomi purifier Chb: (Xiaomi-Miio-AirPurifier-Miot) failed to load 'plugin.py', Python Path used was '/home/pi/domoticz/plugins/MiioAirPurifierMiot/:/usr/lib/python39.zip:/usr/lib/python3.9:/usr/lib/python3.9/lib-dynload:/usr/local/lib/python3.9/dist-packages:/usr/lib/python3/dist-packages:/usr/lib/python3.9/dist-packages'.
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: Traceback (most recent call last):
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: File "/home/pi/domoticz/plugins/MiioAirPurifierMiot/plugin.py", line 45, in <module>
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: import miio
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: File "/usr/local/lib/python3.9/dist-packages/miio/__init__.py", line 74, in <module>
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: from miio.discovery import Discovery
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: File "/usr/local/lib/python3.9/dist-packages/miio/discovery.py", line 9, in <module>
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: import zeroconf
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: File "/usr/local/lib/python3.9/dist-packages/zeroconf/__init__.py", line 25, in <module>
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: from ._cache import DNSCache # noqa # import needed for backwards compat
2024-01-15 09:41:34.654 Error: Xiaomi purifier Chb: ImportError: Interpreter change detected - this module can only be loaded into one interpreter per process.
Merci
Répondre