New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Xiaomi module #506
Xiaomi module #506
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello!
Merci pour ta PR :)
Je t'ai fais une série de feedbacks pour que tu puisses corriger cette PR.
Quelques remarques:
- Attention aux variables en français, on code en anglais, pas en français.
- Il y a quelques soucis de flow de donnée, je les ai mis en feedbacks.
- Tu as coché la case "j'ai bien écris les tests", mais tu n'as pas écris de tests...
Rien de négatif, juste des trucs à corriger :)
front/src/routes/integration/all/xiaomi/XiaomiCapteurTemperature.jsx
Outdated
Show resolved
Hide resolved
front/src/routes/integration/all/xiaomi/XiaomiCapteurTemperature.jsx
Outdated
Show resolved
Hide resolved
front/src/routes/integration/all/xiaomi/XiaomiCapteurTemperature.jsx
Outdated
Show resolved
Hide resolved
Codecov Report
@@ Coverage Diff @@
## master #506 +/- ##
==========================================
- Coverage 91.14% 90.93% -0.22%
==========================================
Files 334 339 +5
Lines 3794 3837 +43
==========================================
+ Hits 3458 3489 +31
- Misses 336 348 +12
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## master #506 +/- ##
=========================================
Coverage ? 91.55%
=========================================
Files ? 356
Lines ? 4013
Branches ? 0
=========================================
Hits ? 3674
Misses ? 339
Partials ? 0
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello!
Top pour les changements :)
J'ai noté quelques feedbacks sur cette PR.
Je t'ajoute des commentaires plus généraux ici:
L'image du service Xiaomi n'est pas au bon format:
Le format est 800x534. ça fait pas propre là sur la vue!
Je ne suis pas fan de la select box en haut à droite, ma question: pourquoi as tu voulu séparer les capteurs (autant côté client que côté serveur)? Tu t'es compliqué la vie!
Je pense que tu n'as besoin (comme pour le Z-Wave) que d'une variable en RAM, que d'une route d'API, et ensuite côté client tu peux éventuellement rajouter du filtering si nécessaire, mais selon moi là l'UX est alourdit pour pas grand chose. Surtout que des capteurs Xiaomi il n'y en a pas que 2, il y en a des tonnes, donc ça va vite devenir très lourd d'adapter le service pour les autres types de capteurs.
front/src/routes/integration/all/xiaomi/sensorMagnet/actions.js
Outdated
Show resolved
Hide resolved
Je vois pour l'UI du coup je vais revenir à une seule card qui permet de lister tous les devices. Par contre je vois pas comment tu veux que je rajouter les device en fait ... J'ai pas trop d'idée. |
Pour ce qui est des changements, j'ai fait:
Les choses à améliorer:
Les problèmes:
|
Actuellement en cours de changement du code pour pouvoir récupérer plus de device et être compatible avec toutes les gateways. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello!
Super boulot général, je t'ai fais une review avec tous les feedbacks que j'ai en lisant ton code. Pour l'instant c'est juste une analyse du code, je n'ai pas exécuté le code vu que pour l'instant les tests n'ont pas l'air de passer.
Petites remarques sur l'UI, en lançant la démo de ton frontend je vois ça:
Petite comparaison avec le service Z-Wave, il faut que ce soit plus user-friendly à mon avis et moins "tech".
J'ai noté le problème de nommage des devices et je pense que c'est une réflexion à avoir au niveau de Gladys, j'y réfléchis de mon côté :)
server/services/xiaomi/lib/event/xiaomi.addTemperatureSensor.js
Outdated
Show resolved
Hide resolved
Super ! Pour ma part j'ai fais pas mal de changement ! Le code est entièrement testé, coverage 100%. Deux menus sont présent:
Il permet de visualiser les capteurs déjà ajouté. Le service recherche automatiquement les device disponibles sur le réseau et les ajoute dans cette partie. On peut ensuite créer le device avec le bouton create. |
Le module ne fonctionne pas sur windows, il y a un soucis avec le broadcast constaté sur d'autres sites: |
Hello @damalgos ! Je suis de retour de congés, je regarde une par une les PR. Où en es-tu sur cette PR ? |
Salut, Au niveau de cette PR, il me reste à ajouter pour chaque capteur la valeur du SID pour pouvoir l'associer à la bonne pièce. Ensuite je pense corriger les éventuelles bugs et problème qui sont présent. Après je pense que cela sera bon pour pousser la PR. A voir avec toi :) |
@damalgos Top, tiens moi au courant dès que je peux faire une review du code ! |
Merged in #537 |
Pull Request check-list
To ensure your Pull Request can be accepted as fast as possible, make sure to review and check all of these items:
npm test
on both front/server)npm run eslint
on both front/server)npm run prettier
on both front/server)NOTE: these things are not required to open a PR and can be done afterwards / while the PR is open.
Description of change
Premier module xiaomi qui permet d'ajouter les capteurs de température et d'humidité.
Lister parmis les modules:
Vue du module:
Rendu final sur la partie pièce: