Avant toute chose merci de (re)prendre connaissance de la charte et de la respecter.
Pour résumer :
- Avant de poser une question, je cherche si la réponse existe
- Je suis poli, courtois et je respecte tout un chacun sur le forum
- Si un post m'agace : je m'en éloigne plutôt que de répondre d'une façon qui pourrait être mal interprétée


Il n'est jamais du luxe que de rappeler des choses simples :
Courtoisie, amabilité, politesse et bonne humeur sont les maîtres mots pour un forum sympathique, bienveillant et accueillant :)

Toute la communauté vous remercie

Mi Desklamp Xiaomi Remontées d'information aléatoires.

Répondre
Avatar de l’utilisateur
blusy38
Timide
Messages : 458
Inscription : 31 mars 2016, 21:10
Localisation : Lyon
Contact :

Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par blusy38 » 15 nov. 2017, 22:41

Je commence un nouveau sujet pour épargner le sujet principal.

Message d'origine :
Bonsoir,
Est-ce que quelqu'un a la lampe de bureau Xiaomi ?
Si oui est ce que vous pouvez regarder dans les logs en DEBUG si vous avez cette erreur :

Code : Tout sélectionner

[2017-11-06 01:01:39][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
  • Les actions fonctionnent correctement mais les infos remontent aléatoirement.

Code : Tout sélectionner

[2017-11-06 01:17:04][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2017-11-06 01:17:06][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': 0, u'result': [u'off', u'1', u'2700', u'', u'', u'', u'2', u'0', u'0', u'0,0,800,2,2700,50,800,2,2700,30,1200,2,2700,80,800,2,2700,60,1200,2,2700,90,2400,2,2700,50,1200,2,2700,80,800,2,2700,60,400,2,2700,70', u'', u'']}
[2017-11-06 01:17:13][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2017-11-06 01:17:17][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2017-11-06 01:17:19][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2017-11-06 01:18:29][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2017-11-06 01:19:06][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2017-11-06 01:19:56][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2017-11-06 01:19:58][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
  • Les ampoules Yeelight que je possède n'ont pas le même message d’erreur.
  • J'ai recrée les commandes, relancé Jeedom, débranché la lampe.
Est ce que vous avez une idée ?
Merci d'avance.
Guillaume.
lunarok a écrit :Quelle lampe bureau ? Conf de l'équipement ?
Décidément il n'y a jamais assez d'info.:)
Le modèle : https://www.gearbest.com/table-lamps/pp_363779.html

Pour l'équipement la configuration est celle par défaut j'ai fait une fresh install pour être sûr avec seulement le plugin Xiaomi.
Si tu veux une information particulière n'hésite pas.
Information complémentaire avec la nouvelle version le log sont sous une autre forme mais les valeurs sont les mêmes.
lunarok a écrit :Cette lampe marche, mais la notion de "conf par défaut" n'existe pas, il faut le token
Que donne les commandes infos ?
Un screen de la conf ?
Tu tiens peux être quelque chose car j'ai pas de token dans la conf juste l'IP.
Ce qui est étrange c'est que les infos remontent aléatoirement. ( Je sais que aléatoire c'est pas bien :))ImageImage

Si j’éteins la lampe j'ai ca :

Code : Tout sélectionner

[2017-11-15 17:42:26][DEBUG] : execute : action yeelight off
[2017-11-15 16:42:26][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
Si j'allume :

Code : Tout sélectionner

[2017-11-15 17:44:15][DEBUG] : execute : action yeelight on
[2017-11-15 16:44:15][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
Lors des refresh :

Code : Tout sélectionner

[2017-11-15 17:45:03][DEBUG] : execute : action yeelight refresh
[2017-11-15 16:45:04][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
Au niveau des commandes infos je n'ai pas de mise à jour, par exemple la derniere fois que les infos sont remontées j'etais à luminosité = 1 et temp blanc = 4000, si je les changes l'action fonctionne mais pas de mise à jour des commandes info.

Code : Tout sélectionner

[2017-11-15 17:49:03][DEBUG] : execute : action yeelight refresh
[2017-11-15 16:49:03][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
[2017-11-15 17:49:13][DEBUG] : execute : action yeelight brightnessAct
[2017-11-15 17:49:13][DEBUG] : Slider : 50
[2017-11-15 16:49:13][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
[2017-11-15 17:49:14][DEBUG] : execute : action yeelight temperatureAct
[2017-11-15 17:49:15][DEBUG] : Slider : 5838
[2017-11-15 16:49:15][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
[2017-11-15 17:50:02][DEBUG] : execute : action yeelight refresh
[2017-11-15 16:50:03][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
lunarok a écrit :
15 nov. 2017, 18:13
Pi 3 installé comment ?
Depuis RASPBIAN STRETCH LITE du site : https://www.raspberrypi.org/downloads/raspbian/

Installation de jeedom en ssh.
connecté en ethernet

J'ai fait un RESET usine de la DeskLamp puis supprimé dans Jeedom, puis re-scanné et retour à la case départ.

Code : Tout sélectionner

[2017-11-15 22:36:45][DEBUG] : execute : action yeelight on
[2017-11-15 21:36:46][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
[2017-11-15 22:37:05][DEBUG] : execute : action yeelight refresh
[2017-11-15 21:37:05][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
Dernière édition par blusy38 le 16 nov. 2017, 20:21, édité 2 fois.

Avatar de l’utilisateur
blusy38
Timide
Messages : 458
Inscription : 31 mars 2016, 21:10
Localisation : Lyon
Contact :

Re: Mi Desklamp Xiaomi

Message par blusy38 » 16 nov. 2017, 00:14

Supprimé pour la clarté
Dernière édition par blusy38 le 16 nov. 2017, 20:22, édité 1 fois.

Avatar de l’utilisateur
blusy38
Timide
Messages : 458
Inscription : 31 mars 2016, 21:10
Localisation : Lyon
Contact :

Re: Mi Desklamp Xiaomi

Message par blusy38 » 16 nov. 2017, 10:06

Bonjour,
Je continu mon monologue :)

Pour les remontés d'info aléatoire voilà les logs que je reçois la plupart du temps :

Code : Tout sélectionner

[2017-11-16 09:50:03][DEBUG] : Message read from socket: {"apikey":"Clef API Xiaomi Home","type":"yeelight","cmd":"refresh","model":"desklamp","dest":"192.168.1.42","token":"","devtype":"52","serial":"0x00000000032cb0f5","id":"192.168.1.42"}
[2017-11-16 09:50:03][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> > {'params': ['power', 'bright', 'ct', 'rgb', 'hue', 'sat', 'color_mode', 'flowing', 'delayoff', 'flow_params', 'music_on', 'name'], 'id': 0, 'method': 'get_prop'}

[2017-11-16 09:50:03][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
Donc pas de remonté d'information.

Et puis de temps en temps :

Code : Tout sélectionner

[2017-11-16 09:51:02][DEBUG] : Message read from socket: {"apikey":"Clef API Xiaomi Home","type":"yeelight","cmd":"refresh","model":"desklamp","dest":"192.168.1.42","token":"","devtype":"52","serial":"0x00000000032cb0f5","id":"192.168.1.42"}
[2017-11-16 09:51:02][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> > {'params': ['power', 'bright', 'ct', 'rgb', 'hue', 'sat', 'color_mode', 'flowing', 'delayoff', 'flow_params', 'music_on', 'name'], 'id': 0, 'method': 'get_prop'}

[2017-11-16 09:51:02][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': 0, u'result': [u'off', u'28', u'2700', u'', u'', u'', u'2', u'0', u'0', u'', u'', u'']}

[2017-11-16 09:51:02][DEBUG] : Send to jeedom : {u'devices': {u'yeelight_192.168.1.42': {'ip': u'192.168.1.42', 'capabilities': {'hue': None, 'color_mode': u'2', 'name': None, 'power': u'off', 'music_on': None, 'delayoff': u'0', 'bright': u'28', 'rgb': None, 'flowing': u'0', 'flow_params': None, 'sat': None, 'id': u'192.168.1.42', 'ct': u'2700'}}}}
Remonté d'information sans problèmes.
La seule différence que je vois c'est :

Code : Tout sélectionner

< {u'id': None, u'error':
vs

Code : Tout sélectionner

 < {u'id': 0, u'result': 
Si vous avez besoin d'infos supplémentaire n’hésitez pas.
Dernière édition par blusy38 le 16 nov. 2017, 20:24, édité 1 fois.

Avatar de l’utilisateur
blusy38
Timide
Messages : 458
Inscription : 31 mars 2016, 21:10
Localisation : Lyon
Contact :

Re: Mi Desklamp Xiaomi

Message par blusy38 » 16 nov. 2017, 10:18

Le même phénomène avec la lampe allumé :

Code : Tout sélectionner

[2017-11-16 10:11:02][DEBUG] : Message read from socket: {"apikey":"Clef API Xiaomi Home","type":"yeelight","cmd":"refresh","model":"desklamp","dest":"192.168.1.42","token":"","devtype":"52","serial":"0x00000000032cb0f5","id":"192.168.1.42"}
[2017-11-16 10:11:03][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> > {'params': ['power', 'bright', 'ct', 'rgb', 'hue', 'sat', 'color_mode', 'flowing', 'delayoff', 'flow_params', 'music_on', 'name'], 'id': 0, 'method': 'get_prop'}
[2017-11-16 10:11:03][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}

[2017-11-16 10:12:03][DEBUG] : Message read from socket: {"apikey":"Clef API Xiaomi Home","type":"yeelight","cmd":"refresh","model":"desklamp","dest":"192.168.1.42","token":"","devtype":"52","serial":"0x00000000032cb0f5","id":"192.168.1.42"}
[2017-11-16 10:12:03][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> > {'params': ['power', 'bright', 'ct', 'rgb', 'hue', 'sat', 'color_mode', 'flowing', 'delayoff', 'flow_params', 'music_on', 'name'], 'id': 0, 'method': 'get_prop'}
[2017-11-16 10:12:03][DEBUG] : Bulb<192.168.1.42:55443, type=BulbType.Unknown> < {u'id': 0, u'result': [u'on', u'28', u'3731', u'', u'', u'', u'2', u'0', u'0', u'', u'', u'']}

[2017-11-16 10:12:03][DEBUG] : Send to jeedom : {u'devices': {u'yeelight_192.168.1.42': {'ip': u'192.168.1.42', 'capabilities': {'hue': None, 'color_mode': u'2', 'name': None, 'power': u'on', 'music_on': None, 'delayoff': u'0', 'bright': u'28', 'rgb': None, 'flowing': u'0', 'flow_params': None, 'sat': None, 'id': u'192.168.1.42', 'ct': u'3731'}}}}


beber49
Timide
Messages : 156
Inscription : 26 janv. 2017, 20:11

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par beber49 » 29 nov. 2017, 21:52

Salut,

Toi t'as un problème d'identifiant court de gateway ou lampe à 0 non ?

Avatar de l’utilisateur
blusy38
Timide
Messages : 458
Inscription : 31 mars 2016, 21:10
Localisation : Lyon
Contact :

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par blusy38 » 29 nov. 2017, 22:04

beber49 a écrit :Salut,

Toi t'as un problème d'identifiant court de gateway ou lampe à 0 non ?
Comment ? Ma gateway marche bien j'ai juste les remontées d'info de la lampe qui remontent une fois sur dix.

beber49
Timide
Messages : 156
Inscription : 26 janv. 2017, 20:11

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par beber49 » 30 nov. 2017, 09:23

C'était une hypothèse, tu as des identifiants courts à 0 pour ta ou tes gateway ?

loops33
Timide
Messages : 13
Inscription : 04 nov. 2017, 15:58

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par loops33 » 21 févr. 2018, 12:37

Salut blusy38,

J'ai exactement le même problème :(

J'ai installé hier soir 2 Desklamp fraichement reçu, et j'ai le même défaut de remonté d'information.
Les commandes par contre sont bien envoyées, et la lampe est très réactive.

J'utilise le plugin Xiaomi Home (dernière maj) sur un Jeedom dernier version dans une VM sous Debian 9.
J'ai également depuis quelques mois 2 Yeelight (1 blanche + 1 couleur) qui elles fonctionnent parfaitement bien avec les remontés d'état sous 1 à 2 secondes.

J'ai bien activé le mode network pour mes 2 Desklamp dans l'appli Android Yeelight, et j'ai bien les remontés d'infos en 1 à 2 secondes, autant dans l'appli Yeelight que dans l'appli Mi Home.
Mes Desklamp ont le dernier firmware proposé par l'appli : 1.3.0_52

J'ai retesté ce matin dans Jeedom, et je n'ai plus aucune remonté d'infos sur l'état de ces Desklamp, même après 5 minutes ! :twisted:

J'ai supprimé les Desklamp, redémarré le Démon, redétecté les Desklamp, rien y fait, toujours aucune remonté !
Je sais plus trop quoi faire, et si tu as testé une réinstallation du plugin, c'est pas la peine que je test cette option (pas envie de tout reconfigurer).

Si tu as du nouveau depuis que tu as rencontré ce problème, je suis preneur de toutes pistes à explorer.

++
loops
Dernière édition par loops33 le 21 févr. 2018, 14:26, édité 2 fois.
Jeedom 3.2.11 VM Debian 9 (ESXi 6.5 up1) Intel NUC7I5BNH / Jeedom 3.1.7 Rpi3 Rasbian 9
Clé Aeon Labs Gen5, RFXCom, Xiaomi Gateway, RM Pro Mini et clé Bluetooth ud100-g03

loops33
Timide
Messages : 13
Inscription : 04 nov. 2017, 15:58

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par loops33 » 21 févr. 2018, 13:54

Voilà mon log du refresh avec la dernier maj du plugin Xiaomi Home :

Code : Tout sélectionner

[2018-02-21 13:36:03][DEBUG] : Refreshing : desklamp
[2018-02-21 13:36:03][DEBUG] : Bulb<192.168.0.47:55443, type=BulbType.Unknown> > {'params': ['power', 'bright', 'ct', 'rgb', 'hue', 'sat', 'color_mode', 'flowing', 'delayoff', 'flow_params', 'music_on', 'name'], 'id': 0, 'method': 'get_prop'}
[2018-02-21 13:36:03][DEBUG] : Bulb<192.168.0.47:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2018-02-21 13:36:03][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
++
loops
Jeedom 3.2.11 VM Debian 9 (ESXi 6.5 up1) Intel NUC7I5BNH / Jeedom 3.1.7 Rpi3 Rasbian 9
Clé Aeon Labs Gen5, RFXCom, Xiaomi Gateway, RM Pro Mini et clé Bluetooth ud100-g03

Avatar de l’utilisateur
blusy38
Timide
Messages : 458
Inscription : 31 mars 2016, 21:10
Localisation : Lyon
Contact :

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par blusy38 » 21 févr. 2018, 15:25

loops33 a écrit :Voilà mon log du refresh avec la dernier maj du plugin Xiaomi Home :

Code : Tout sélectionner

[2018-02-21 13:36:03][DEBUG] : Refreshing : desklamp
[2018-02-21 13:36:03][DEBUG] : Bulb<192.168.0.47:55443, type=BulbType.Unknown> > {'params': ['power', 'bright', 'ct', 'rgb', 'hue', 'sat', 'color_mode', 'flowing', 'delayoff', 'flow_params', 'music_on', 'name'], 'id': 0, 'method': 'get_prop'}
[2018-02-21 13:36:03][DEBUG] : Bulb<192.168.0.47:55443, type=BulbType.Unknown> < {u'id': None, u'error': {u'message': u'invalid command', u'code': -1}}
[2018-02-21 13:36:03][ERROR] : Exception on socket : {u'message': u'invalid command', u'code': -1}
++
loops
Bonjour
Je ne suis pas chez moi mais je crois que je n'ai plus le problème depuis que je n'utilise plus le routeur de la livebox mais un routeur Asus.
Je vérifierai à mon retour.
N'hésite pas à me relancer si j'oublie.

loops33
Timide
Messages : 13
Inscription : 04 nov. 2017, 15:58

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par loops33 » 21 févr. 2018, 18:18

Bonjour et merci pour ce retour,

Je dois justement changer de point d'accès Wifi, mais ça fait pas mal de chose à modifier et je repousse ce changement.
Ca pourrait bien être la nouvelle raison de le changer.

Après si elle fonctionne comme les Yeelight (qui chez moi fonctionnent parfaitement bien), j'aurais jamais pensé que le point d'accès Wifi pouvait être la cause.

++
loops
Jeedom 3.2.11 VM Debian 9 (ESXi 6.5 up1) Intel NUC7I5BNH / Jeedom 3.1.7 Rpi3 Rasbian 9
Clé Aeon Labs Gen5, RFXCom, Xiaomi Gateway, RM Pro Mini et clé Bluetooth ud100-g03

loops33
Timide
Messages : 13
Inscription : 04 nov. 2017, 15:58

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par loops33 » 22 févr. 2018, 19:21

J'utilise un point d'accès Ubiquiti Nano station 2 actuellement.
J'ai testé hier soir de passer mes 2 Desk lamp sur le PA Wifi de ma Freebox V6, mais le problème est le même.
Si tu pouvais te rappeler comment tu as pu régler ce problème, car là je sèche un peu.

++
loops
Jeedom 3.2.11 VM Debian 9 (ESXi 6.5 up1) Intel NUC7I5BNH / Jeedom 3.1.7 Rpi3 Rasbian 9
Clé Aeon Labs Gen5, RFXCom, Xiaomi Gateway, RM Pro Mini et clé Bluetooth ud100-g03

Avatar de l’utilisateur
blusy38
Timide
Messages : 458
Inscription : 31 mars 2016, 21:10
Localisation : Lyon
Contact :

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par blusy38 » 22 févr. 2018, 21:26

sarakha63 a écrit :On pourra pas faire mieux. Il ya un bug dans l'implémentation de l'API de cette lampe. On contourné déjà certaines choses mais là on peut rien faire de plus sans pénaliser le reste. Il y a un soucis dans la manière dont cette lampe maintient ou plutôt ne maintient pas le socket.

C'est ce qui explique les latences de retour d'état.

Après en toute logique il t'a quand même un retour d'état plus que cohérent logiquement
Ok merci pour le retour.

loops33
Timide
Messages : 13
Inscription : 04 nov. 2017, 15:58

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par loops33 » 23 févr. 2018, 11:01

sarakha63 a écrit :
22 févr. 2018, 20:14
...
Après en toute logique il t'a quand même un retour d'état plus que cohérent logiquement
Salut Ludo et merci (encore ;) ) pour ces précisions,

Justement non, vu que dans le meilleur des cas, l'état de la lampe peut prendre 5 à 6 minutes, et bien plus pour le niveau de luminosité et pour la teinte de blanc.

Après, je n'ai peut être pas utilisé la meilleur méthode pour l'inscrire dans Jeedom :
- détection via l'appli Yeelight Android (serveur Mainland China)
- activation du mode de contrôle sur le réseau local dans l'appli Yeelight Android
- détection de la Desk lamp dans Jeedom dans le plugin Xiaomi Home via un scan Yeelight

Bref, ça ne m’empêche pas d'être très content de cette lampe que je recommande vivement. J'adore son design épuré, ça fonctionnalité et sa luminosité variable. Dommage que Xiaomi ait merdé la partie soft :?

++
loops
Jeedom 3.2.11 VM Debian 9 (ESXi 6.5 up1) Intel NUC7I5BNH / Jeedom 3.1.7 Rpi3 Rasbian 9
Clé Aeon Labs Gen5, RFXCom, Xiaomi Gateway, RM Pro Mini et clé Bluetooth ud100-g03

t0urista
Timide
Messages : 94
Inscription : 09 janv. 2016, 21:20

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par t0urista » 22 oct. 2018, 23:21

blusy38 a écrit :
22 févr. 2018, 21:26
sarakha63 a écrit :On pourra pas faire mieux. Il ya un bug dans l'implémentation de l'API de cette lampe. On contourné déjà certaines choses mais là on peut rien faire de plus sans pénaliser le reste. Il y a un soucis dans la manière dont cette lampe maintient ou plutôt ne maintient pas le socket.

C'est ce qui explique les latences de retour d'état.

Après en toute logique il t'a quand même un retour d'état plus que cohérent logiquement
J'ai le meme probleme de remontee d'info aléatoire et retardée de la Desklamp Xiamoi, exactement les memes symptomes et messages d'erreur que ceux décrits. l'envoi de commandes marche nickel, comme chez les autres.

J'ai aussi une Yeelight E27 Color, qui fonctionne parfaitement

J'ai charge les specs de l'API (voir en attachment) et quand je me connecte en telnet port 55443 avec PUTTY sur la Yeelight ou la Xiaomi, j'ai exactement les memes comportements sur l'une et sur l'autre, pourquoi l'une fonctionne moins bien que l'autre sur Jeedom ?

Plus particulierement, quand j'envoie une commande sur la Xiaomi, la reponse est immédiate :

Code : Tout sélectionner

{"id":1,"method":"set_bright","params":[40, "smooth", 400]}
{"id":1, "result":["ok"]}
{"method":"props","params":{"bright":40}}
et quand je modifie un parametre à la lampe meme, la temperature du blanc comme dans l'exemple ci-dessous (en poussant et tournant le bouton), la remontee d'info sur ma session telnet 55443 est immediate, la aussi pourquoi sur Jeedom cela ne marche pas immédiatement ?

Code : Tout sélectionner

{"method":"props","params":{"ct":5931}}
J'obtiens aussi dans ma session telnet le message d'erreur que celui rapporté par Jeedom quand j'envoie une commande vide (j'appuie sur return sans rien ecrire avant).

Code : Tout sélectionner

 {"id":null, "error":{"code":-1, "message":"invalid command"}}
Quel est ce bug dans l'API ?

Merci
Yeelight_Inter-Operation_Spec.pdf
(331.03 Kio) Téléchargé 2 fois

t0urista
Timide
Messages : 94
Inscription : 09 janv. 2016, 21:20

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par t0urista » 25 oct. 2018, 00:10

Bon j'ai trouvé et implémenté quelque chose d'intéressant... Je réduis la latence des remontées d'info après lancement d'une commande à 4 secondes.

Le message d'erreur observé dans le log apparait typiquement quand une commande invalide ou vide est envoyée.

Code : Tout sélectionner

({"id":null, "error":{"code":-1, "message":"invalid command"}}) 

Et justement dans le fichier /var/www/html/plugins/xiaomihome/resources/xiaomihomed/devices/yeelight/main.py, dans la routine send_command une exception est prévue pour la lampe desklamp, après avoir envoyé la commande utile, une commande vide ("\r\n") est envoyée à la ligne 271 , et c'est elle qui génère le retour de message d'erreur ci dessus

Code : Tout sélectionner

            if self.type in ['desklamp']:
                self._socket.send("\r\n").encode("utf8"))
J'imagine qu'elle a été rajoutée pour résoudre le problème de maintien de session évoqué plus haut par sarakha63

Je l'ai alors remplacée par une commande valide mais sans effet sur la lampe, (attention certains doubles guillemets sont à remplacer par des simples guillemets, attention aussi à l'indentation de python...)

Code : Tout sélectionner

          if self.type in ['desklamp']:
                self._socket.send(('{"id":1,"method":"get_prop","params":["bright"]}' + '\r\n').encode("utf8"))
et bingo, le message d’erreur n'apparait plus et la remontée des infos est beaucoup plus rapide, en max 4 seconde les infos sont à jour apres le lancement d'une commande. Cela reste long mais c'est déjà nettement meilleur que la minute qu'il fallait attendre auparavant...

Quelqu'un peut tester et confirmer ? Piste à creuser ?

Txs

sanste
Timide
Messages : 6
Inscription : 18 juin 2018, 23:25
Localisation : Paris
Contact :

Re: Mi Desklamp Xiaomi Remontées d'information aléatoires.

Message par sanste » 09 déc. 2018, 20:34

Bonjour,

J'ai fait le test, cela n’est pas concluant. Le temps de rafraîchissement est vraiment aléatoire, il oscille entre 2 sec. et 4 min.

Répondre

Revenir vers « [Plugin Tiers] Xiaomi Home »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité