OUARZA
Novembre 11, 2023, 8:46
1
Bonjour à tous,
Je suis passé de Deconz au plugin JeeZigbee (z2m).
Sous Deconz j’utilisai un bloc code pour gérer mes lumières avec un effet de transition.
Bonjour,
J’aimerai basculer du plugin Deconz vers le plugin Zigbee.
Cependant, j’utilise des blocs codes pour gérer la couleur, la luminosité en même temps que la durée (transition).
$url_Deconz = 'http://127.0.0.1:8484';
$cle_API_deCONZ = 'F4XXXXXXX';
$group = 8; // Maison
$url = $url_Deconz."/api/".$cle_API_deCONZ."/groups/".$group."/action";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_PO…
J’aimerai faire la même chose avec le plugin JeeZigbee.
Pouvez-vous m’aider ?
Merci par avance.
Mathieu
OUARZA
Novembre 11, 2023, 9:35
2
J’ai tenté quelque chose, mais je ne suis pas doué pour ça.
$url_zigbee2mqtt = 'http://localhost:8080/';
$equipement = '0x0017880103e00138';
$url = $url_zigbee2mqtt . "zigbee2mqtt/" . $equipement . "/set";
$scenario->setLog("URL : ".$url);
$ch = curl_init($url);
$scenario->setLog("ch : ".$ch);
// Configuration de la requête cURL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array(
"state" => "OFF", // Ou "OFF", "TOGGLE"
"brightness" => 255, // Valeur entre 0 et 255
"color" => array("x" => 0.123, "y" => 0.123), // Couleur en XY
"transition" => 15 // en secondes
)));
$scenario->setLog("ch : ".$ch);
$response = curl_exec($ch);
$scenario->setLog("Response : ".$response);
curl_close($ch);
Il faut mettre un payload, mais je ne sais pas faire.
Mathieu
OUARZA
Novembre 12, 2023, 10:48
3
Hello,
Sinon il n’y a pas moyen d’utiliser une commande Titre/Message pour envoyer une commande groupée à un équipement sous Jeezigbee du genre « state::ON transition::15 » ?
Un truc comme ça, mais avec d’autres informations dans le LOGICAL ID.
$commande = '#[Salle à manger][Extended color light Buffet][Test message]#';
$info = 'state::OFF';
cmd::byString($commande)->setLogicalId($info)->save();
$cmd = cmd::byString($commande);
$cmd->execCmd();
Merci
OUARZA
Novembre 12, 2023, 5:04
4
Et voilà, j’ai trouvé
//$equipement = '0x00178801102bbf55';//boule
//$equipement = '0x00178801102e455a';//buffet
//$equipement = '0x00178801102e4559';//abat jour
//$equipement = '0x0017880103e00138';//cuisine
$equipement = 'Pièces de vie';//pièce de vie
//$equipement = 'Salon';//salon
//$equipement = 'Repas';//repas
//$equipement = 'Dressing';//dressing
//$equipement = '0x00178801029df4dd';//chambre
//$equipement = 'Maison';//maison
//$equipement = '0x90fd9ffffe17157a';//dressing Mathieu
//$equipement = '0x90fd9ffffe03d410';//dressing Cedric
//$equipement = '0xf0d1b800001a17c0';//jardin rue
//$equipement = '0xf0d1b800001a1e26';//jardin terrasse
$ident = 'jeedom';
$password = 'm35COt3uGTanueApDsXXXXXXXXXXXXXXXXXXXXXXXJigO2G1F';
$valeur = '
{"state": "ON",
"color":{"x":"0.675","y":"0.322"},
"brightness": 255,
"effect": "breathe"}
';
// brightness 0 à 254
// color_temp 153 (froid) à 500 (chaud) "color_temp": 500,
// transition en seconde
$scenario->setLog("Valeur 1 : ".$valeur);
$valeur = addcslashes($valeur, '"');
$scenario->setLog("Valeur 2 : ".$valeur);
$valeur = str_replace(["\n", "\r"], "", $valeur);
$scenario->setLog("Valeur 3 : ".$valeur);
$command = 'mosquitto_pub -h localhost -p 1883 -u ' . $ident . ' -P '. $password .' -t "zigbee2mqtt/' . $equipement . '/set" -m "'. $valeur .'"';
$output = exec($command);
$scenario->setLog("Commande : ".$command);
$scenario->setLog("Output : ".$output);
1 « J'aime »
system
A fermé ce sujet ()
Novembre 13, 2023, 5:04
5
Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.