Forum Lifedomus

Version complète : Ampoules yeelight
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Pages : 1 2
Salut a tous 

les lampes compatible 
Ampoules RVB e27
ampoules white e27
Ruban led yeelight strip rvb
(normalement toutes les lampes yeelight pilotable sont compaible )

après plusieurs jour de test je viens enfin de réussir a transmettre les ordres via lifedomus direct via connecteur universelle ip sans passé par jeedom ou autre  !!!!

je travail encore sur les différentes commandes, ci des personnes sont intéressés par les yeelights .

commandes opérationnelles:
On
Off
Commuter
Variation Luminosité
blanc froid 6500K
blanc chaud 2700K
Blanc neutre 4000K
Choix de la couleur 
Monter la luminosité 
Baisser la luminosité
Variation de couleur température de blanc
Scène couché du jour
Scène levé du jour
Luminosité 25%
Luminosité 50%
Luminosité 75%
Veilleuse
Scène alarme 
Scène flash

Tout d'abord vous devez autoriser le controle de vos yeelight par le reseaux local via l app mobile yeelight
ensuite penser a attribuer une ip fixe a vos yeelights sinon elles risquent de changer d'ip .

puis dans CS créer un connecteur TCP/IP Universel mettez l'IP de votre yeelight a commander 
port 55443
protocole ip : TCP
caractère d'échapement à la fin d'une trame : 0d0a
Temps d'attente entre les commandes envoyées : 1
Trame : ne rien mettre
Type de données de la trame : rien
Type de caractère d'échapement a la fin d'une trame reçue : 0D0A, <CR><LF>
type d'encodage des caractères : UTF-8
Persistances des retours d'etats : vrai

uploader le fichier yeelight RGB V1.ldc dans votre connecteur 
uploader le fichier yeelight salon.js dans votre connecteur 

puis créer un équipement LED RVB et y uploader le fichier yeelight RGB V1. ldp
et voila votre yeelight est opérationnel et commandable via Lifedomus !!!!!!!

Mise jour du 28/09/2018 Modification du JS pour retour d'info sur LD quand la yeelight est commandée autrement que par la LD
Yahoo-1ea1 Yahoo-1ea1 Yahoo-1ea1 Yahoo-1ea1
Merci de ta proposition qui contribue à faire vivre le forum
salut a tous 

je bloque sur le retour d'info 
 
j'arrive pas a récupérer l'info power de retour {"method":"props","params":{"power":on}}

j'ai utilisé ce code // récupération du fichier et encodage en Json pour traitement

try {
    var obj = JSON.parse(trame);
} catch (e) {
    ldprint("Error parse JSON: " + e.message);
};

// Etat de la lampe
// récupération de la valeur (power) qui indique l'état de la lampe  dans le fichier Json  
Power = obj.properties.power;

mais ça me met une erreur :

TypeError: Impossible de lire la propriété "power" de undefined (js#9)

j ai reussi avec ce code la :
Code :
try {
   var obj = JSON.parse(trame);
} catch (e) {
   ldprint("Error parse JSON: " + e.message);
};

// Etat de la lampe
// récupération de la valeur (value) qui indique l'état de la lampe  dans le fichier Json  

// Retour Infos
Power = obj["params"].power;
HexaYe = obj["params"].rgb;
Color_mode = obj["params"].color_mode;
Ct = obj["params"].ct;
Bright = obj["params"].bright;
Flowing = obj["params"].flowing;
// Transformation de la vleur (value) du Json en 0 ou 1 car d attend un boolean

if (Power == "on") {Etat = "1";}
else if (Power == "off") {Etat = "0";}
l'intégration avance

commandes opérationnelles:
On
Off
Commuter
Variation Luminosité
blanc froid 6500K
blanc chaud 2700K
Blanc neutre 4000K
Choix de la couleur 
Monter la luminosité 
Baisser la luminosité

commandes non opérationnelles:
Variation Température de blanc
Bonjour,

Excellent, merci beaucoup.
Vivement le tuto ;-)
Eek-1e6fb
Bonjour,

Beau travail, j'ai hâte de tester.
toutes les commandes fonctionnent par contre je bloque sur le retour d'info 

je reçois cette trame 

{"id":1, "result":["off","4440","16579473","1","54"]}

off = Etat lampe
4400 = temperature de blanc
16579473 = couleur en decimale (il faut que je convertisse en rgb apres )
1 = color mode
54 = pourcentage de luminosité 

je n'arrive pas a les interpréter en retour sur ld du coup mes commandes fonctionnent mais pas de retour sur les widget
tu dois faire cela via du code dans le connecteur. Regarde ce que j'ai fait pour Surveillance Station dans ma signature (j'y récupère également un json que je peu traiter ensuite)
solution trouvé !!!

Code :
try {
   var obj = JSON.parse(trame);
} catch (e) {
   ldprint("Error parse JSON: " + e.message);
};

// Etat de la lampe
// récupération de la valeur (value) qui indique l'état de la lampe  dans le fichier Json  

// Retour Infos

Power = obj.result[0];
hexaYe = obj.result[2];
color_mode = obj.result[3];
color = obj.result[1];
percentage = obj.result[4];


// Transformation de la valeur (value) du Json en 0 ou 1 car d attend un boolean

if (obj.result[0] == "on") {Etat = "1";}
else if (obj.result[0] == "off") {Etat = "0";}
Felicitations ;-)

allez Hop un tutoriel ;-) Eek-1e6fb
Pages : 1 2