Air Purifier 3H

Vous devriez faire :
sudo npm install -g miio

Je viens de voir qu’il m’arrive aussi d’avoir cette erreur, néanmoins je récupère quand même les données.

Edit : Voici un article de blog pour vous aider : [Connecter le Purifier 3H Xiaomi à Jeedom]

J’ai bien fait
sudo npm install -g miio

Mais j’ai ce message d’erreur

J’ai l’erreur en rouge et je n’arrive pas à rajouter
les autres commandes

Ah effectivement, il vous manque la commande jq.

Un sudo apt-get install jq et normalement c’est good :wink:

Edit : Voici un article de blog pour vous aider : [Connecter le Purifier 3H Xiaomi à Jeedom]

Merci j’ai plus d’erreur.
Par contre je n’ai pas de remontée d’info. Rien .

Et quand vous lancez la commande miiocli --output json airpurifiermiot --ip 192.168.0.xxx --token c6fdxxxxxxxxxxxxxxxx2e990 status en SSH ca donne quoi ?

Edit : Voici un article de blog pour vous aider : [Connecter le Purifier 3H Xiaomi à Jeedom]

1 « J'aime »

Ca me dit : commande introuvable

1 « J'aime »

@temium62 @lionell @labraude @djgrati, J’ai réalisé un article sur mon blog pour vous aider, ca sera plus claire. https://benjamintestart.fr/connecter-le-purifier-3h-xiaomi-a-jeedom/

3 « J'aime »

salut
hé ben dis donc, quel travail de réalisé ! chapeau !!!
et merci
je vais de nouveau relire tout ça, c est très bien détaillé et expliqué !
juste un peu peur de tout foutre en l air LOL !

1 « J'aime »

Merci :slight_smile:
Pour valider le tuto j’ai réinstallé un Jeedom (Core v4) sur une machine virtuelle pour être sur de ne pas me tromper.

Bonsoir Privas,

Super tuto et super boulot, tu es un vrais chef tout fonctionne à merveille.
Merci infiniment.

Pour préciser à tous, installation faite sur mon Raspberry 3B+ avec jeedom Core V4 en utilisation pour ma domotique tout fonctionne parfaitement.
Encore merci beaucoup pour l’excellent travail.

1 « J'aime »

Merci pour le tuto, fonctionnel ! Ca fera parfaitement l’affaire sans attendre une mise à jour du plugin Mihome :slight_smile:

Perso, installé sur ma debian en VM sur proxmox.
Pour taper sur le json j’ai utilisé directement localhost dans l’url.

EDIT : bon après quelques jours, le pb c’est que le script balance de nombreuses erreurs chaque jour à chaque fois que l’appareil n’est pas trouvé sur le réseau, allez savoir pquoi mais ca arrive une 40aine de fois par jour. Je vais déjà baisser la fréquence de rafraichissement mais à voir pour intégrer un truc plus malin. En tout cas ça dépanne en attendant l’ajout sur le plugin xiaomi (ou un plugin miio ? :slight_smile:

2 « J'aime »

Très intéressant !
J’essaie de mon coté mais au moment où j’écris la commande
« sudo pip3 install python-miio »
J’ai comme réponse :" python-miio requires Python ‹ >=3.6 › but the running Python is 3.5.3"

Je dois installer une version supérieur de Python ? Je ne risque pas de rendre incompatible d’autres plugins ?

Bonjour Thor,

Tu peux essayer mais lance une sauvegarde avant ! :wink:

Hello Privas,
Merci pour ton tuto, il mérite un post à part : tout semble marcher au poil ici !

Thor, j’avais le même soucis que toi, je m’en suis sorti en installant python3.9 en altinstall dans le usr/bin.
Voici les commandes qui différaient des tuto d’install python que j’ai trouvé sur le net, peut être que ca aidera quelqu’un !

> Pour installer python dans usr/bin plutot que usr/local/bin
./configure --enable-optimizations --with-ensurepip=install --prefix=/usr

> Pour ne pas écraser ton python de base
sudo make altinstall

> Une fois l'alternative installé
python -m pip install --upgrade pip
python -m pip install python-miio

1 « J'aime »

Bonjour @privas
Il m’arrive très souvent d’avoir ce genre d’erreur. Aurais tu une petite idée
Ps: tout fonctionne très bien pourtant

Merveilleux @privas ! Ok pour moi sur v3.3.54 :slight_smile:

Bonjour,
Je découvre avec plaisir que le fil que j’ai initié a trouvé une bonne âme pour partager une solution. Merci beaucoup à elle, j’étais personnellement loin de pouvoir bâtir une telle solution.
Je suis presque au bout, mais bute sur le problème suivant : la commande sudo miiocli --output json airpurifiermiot --ip xxxxx --token xxxxxx status > /var/www/html/purifier.json
tombe en erreur
-bash: /var/www/html/purifier.json: Permission non accordée
Je l’ai testée sans la redirection de l’output, ça marche.
Je l’ai testée en dirigeant l’output vers un fichier chez moi, mais j’obtiens toujours l’erreur.
Quelqu’un a-t-il une idée de l’origine du problème ?

J’ai trouvé tout de même un fichier purifier.json dans le dossier html dont voici le contenu :

Traceback (most recent call last):
File « /usr/local/bin/miiocli », line 11, in
sys.exit(create_cli())
File « /usr/local/lib/python3.6/site-packages/miio/cli.py », line 45, in create_cli
return cli(auto_envvar_prefix=« MIIO »)
File « /usr/local/lib/python3.6/site-packages/miio/click_common.py », line 59, in call
return self.main(*args, **kwargs)
File « /usr/local/lib/python3.6/site-packages/click/core.py », line 760, in main
_verify_python3_env()
File « /usr/local/lib/python3.6/site-packages/click/_unicodefun.py », line 130, in _verify_python3_env
" mitigation steps.{}".format(extra)
RuntimeError: Click will abort further execution because Python 3 was configured to use ASCII as encoding for the environment. Consult https://click.palletsprojects.com/python3/ for mitigation steps.

This system supports the C.UTF-8 locale which is recommended. You might be able to resolve your issue by exporting the following environment variables:

export LC_ALL=C.UTF-8
export LANG=C.UTF-8

Je ne sais pas où et comment pratiquer les exports préconisés ci-dessus. En attendant, j’ai créé moi-même le fichier json en copiant/collant la sortie de la commande.

J’ai trouvé une solution d’attente pour ceux qui sont concernés :
Pour la commande « Refresh » et toutes les commandes de type « Action », faire précéder l’appel à miiocli des deux commandes préconisées dans la trace de l’erreur à savoir

export LC_ALL=C.UTF-8
export LANG=C.UTF-8

Me voilà enfin avec un Air Purifier 3H opérationnel sous Jeedom.

Mille mercis, Benjamin, pour ton travail et ton partage. :slight_smile: :+1:

Hello,
J’avais le même soucis que toi.
Etrangement je n’ai plus le message d’erreur après avoir migré OS vers debian 10 qui vient avec python 3.7 en utilisant la même sauvegarde de Jeedom.
En espérant que ca règle ton problème aussi.

1 « J'aime »

Bonsoir et merci de ta réponse.
Je suis également sous buster et les erreurs sont récurrentes.