[Présentation] F$B33
Re: [Présentation] F$B33
Un petit up?
- Antoinekl1
- Actif
- Messages : 3927
- Inscription : 23 mai 2015, 08:14
Re: [Présentation] F$B33
Bonjour à tous
savez vous si il est possible, dans un même design, de faire des affichages conditionnels, par exemple, je n'affiche un cadre et/ou une commande que si telle commande jeedom = 1, ...
savez vous si il est possible, dans un même design, de faire des affichages conditionnels, par exemple, je n'affiche un cadre et/ou une commande que si telle commande jeedom = 1, ...
JEEDOM Smart Ultimate + 40 modules zwave
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6
Re: [Présentation] F$B33
saluttrane51100 a écrit : ↑19 mars 2019, 13:57Si cela peut aider pour les personnes qui utilisent le design en responsive, en allant sur theme.js et en changeant la ligne
var imgBackground = $(".container-fluid img[src*='core/img/plan/']");
par le nouveau dossier de stockage de l'arrière plan, cela résoudra les problèmes d'affichage et de message d'erreur, cela donne donc:
var imgBackground = $(".container-fluid img[src*='data/plan/']");
N'oubliez pas de redémarrer jeedom pour la prise en compte de la modif
Au risque de passer pour une chèvre on le trouve où ce fichier à modifier car j ai recherché avec "l outils de développement" de jeedom le fichier theme.js mais je ne trouve pas ..quelqu un peux m aiguiller ?? Merci d avance
Re: [Présentation] F$B33
si une âme charitable passe...faycal39 a écrit : ↑10 mai 2019, 16:00bonjour à tous,
suite à cette galère avec le wallpaper qui change avec la météo ( avec script ou scenario ), beaucoup de personne sont perdu et c'est pas facile de suivre les changements à travers ces 56 pages.
Est ce que quelqu'un peut expliquer la méthode clairement ( script ou scenario comme vous voulez) pour avoir ce wallpaper magnifique que tout le monde veut SVP SVP SVP
Re: [Présentation] F$B33
il vous faut le plugin weather parametré suivant votre ville
il vous faut le plugin outil de developpement, plus facile pour copier les images
(dans cet exemple il faut créer les dossiers core/img/Plan/Images/Meteo/jour et core/img/Plan/Images/Meteo/nuit) -> bien respecter les majuscules et minuscules et y coller les images
creer un scénario avec un cron de 5mn (lecture du scénario tous les 5mn) -> */5 * * * * (mode de scénario = programmé)
dans ce scenario, ajouter un bloc code et y coller ce code
(en rouge ce que vous avez a modifier suivant votre jeedom)
il vous faut le plugin outil de developpement, plus facile pour copier les images
(dans cet exemple il faut créer les dossiers core/img/Plan/Images/Meteo/jour et core/img/Plan/Images/Meteo/nuit) -> bien respecter les majuscules et minuscules et y coller les images
creer un scénario avec un cron de 5mn (lecture du scénario tous les 5mn) -> */5 * * * * (mode de scénario = programmé)
dans ce scenario, ajouter un bloc code et y coller ce code
(en rouge ce que vous avez a modifier suivant votre jeedom)
$plans = array(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12); //les ID des designs à modifier
$chemin = 'http://mettre votre ip interne de votre jeedom/core/img/Plan/Images/Meteo/'; //chemin vers les dossier jour & nuit
$id_condition = 17; //ID de la commande "Numéro condition" du plugin Weather
$id_lever = 13; //ID de la commande "Lever du soleil" du plugin Weather
$id_coucher = 12; //ID de la commande "Coucher du soleil" du plugin Weather
$wall_changed = 0; //Changement de wall paper
$prev_wall = ''; //wall précédent
$prev_wall = $scenario->getData("prevWall"); // Récupère le wall précédent
$scenario->setLog("Wall précédent : ".$prev_wall); //Log
$cmd_condition = cmd::byId($id_condition);
$condition = $cmd_condition->execCmd();
$cmd_lever = cmd::byId($id_lever);
$lever = $cmd_lever->execCmd();
$cmd_coucher = cmd::byId($id_coucher);
$coucher = $cmd_coucher->execCmd();
// On compare l'heure actuelle avec $coucher et $lever
$heure = round(date('Hi'));
if (($heure >= $lever) && ($heure <= $coucher)){
$moment = "jour";
}
elseif (($heure <= $lever) || ($heure >= $coucher)){
$moment = "nuit";
}
// on compare l'id condition aux valeurs d'openWeather
$numGroup = substr($condition, 0,1);
switch ($numGroup) {
case '2':
$valeur_condition = "Orage";
break;
case '7':
$valeur_condition = "Brume";
break;
case '5':
$valeur_condition = "Pluie";
break;
case '6':
$valeur_condition = "Neige";
break;
case '8':
case '3':
$valeur_condition = "Nuage";
break;
default:
$valeur_condition = "defaut";
break;
}
//Condiftions particulières
if(in_array($condition, array('905', '902', '900', '952', '953', '954', '955', '956', '957', '960', '961'))){
$valeur_condition = "Vent";
} else if(in_array($condition, array('800', '951'))){
$valeur_condition = "Soleil";
} else if($condition == '909'){
$valeur_condition = "Pluie";
}
$file = $chemin.$moment.'/'.$valeur_condition.'.jpg';
$scenario->setLog("Nouveau Wall : ".$file); //Log
$wall_changed = 1;
$scenario->setData("prevWall",$file); // Sauvegarde le nouveau wall
$img_size = getimagesize($file);
$data = base64_encode(file_get_contents($file));
$sha512 = sha512($data);
$type = 'jpg';
foreach ($plans as $planId){
$planHeader = planHeader::byId($planId);
$planHeader->setImage('type', $type);
$planHeader->setImage('size', $img_size);
$planHeader->setImage('sha512', $sha512);
$planfilename = 'planHeader'.$planId.'-'.$sha512.'.'.$type;
$planfilepath = __DIR__ . '/../../data/plan/' . $planfilename;
file_put_contents($planfilepath,file_get_contents($file));
$planHeader->save();
}
//stockage changement dans la variable
$scenario->setData("wallChanged",$wall_changed) ;
Re: [Présentation] F$B33
ENORME MERCI DB2P !!!!!!!!!!!!!
Fait ça en 5 min et ça marche niquel.
Je suis sure que ça va servir à d'autre.
Fait ça en 5 min et ça marche niquel.
Je suis sure que ça va servir à d'autre.
Re: [Présentation] F$B33
Question bête: si c’est exécuté par un Cron, à quoi sert l’ip interne? Pourquoi pas 127.0.0.1?
Re: [Présentation] F$B33
Pourquoi mettre un cron qui va inutilement surcharger jeedom alors qu'il suffit de mettre les commandes "numéro condition", "lever du soleil" et "coucher du soleil" en déclencheurs !?
- Pièces jointes
-
- progWall.jpg (65.63 Kio) Consulté 2067 fois
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Re: [Présentation] F$B33
Ben non...
C’est pas au changement de l’heure de lever / coucher qu’il faut le déclencher, faut le comparer à #time# dans les 2 condition non?
Dernière édition par Poumi le 31 mai 2019, 22:08, édité 2 fois.
Re: [Présentation] F$B33
Bah si... le scénario doit aussi se déclencher au lever et au coucher du soleil pour passer en mode jour ou nuit. La comparaison avec l'heure courante se fait dans le code.
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Re: [Présentation] F$B33
Mais ton déclencheur se lance pas au lever du soleil là, il se lance au changement de valeur de lever du soleil non?Salvialf a écrit : ↑31 mai 2019, 22:06Bah si... le scénario doit aussi se déclencher au lever et au coucher du soleil pour passer en mode jour ou nuit. La comparaison avec l'heure courante se fait dans le code.
Ou alors il y a un truc que j’ai pas compris sur les déclencheurs...
Autre question bête : en le faisant par scénario comme ça, si le design est ouvert c’est rafraîchit tout seul?
Re: [Présentation] F$B33
Avec les commandes lever et coucher du soleil du plugin weather ça fonctionne nickel en tout cas... J'ai utilisé cette méthode pendant très longtemps et ça se déclenche uniquement à l'heure du lever ou coucher et pas aux heures de MAJ des données.
Je viens de changer de méthode et de code car je n'utilise plus le plugin weather mais j'ai revérifié les logs au passage et jamais un problème. J'avoues c'est pas complètement logique.
Je viens de changer de méthode et de code car je n'utilise plus le plugin weather mais j'ai revérifié les logs au passage et jamais un problème. J'avoues c'est pas complètement logique.
Oui c'est rafraichit à condition que tu ai bien mis un bloc action "gotodesign" à la fin de ton scénario.
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Re: [Présentation] F$B33
Pour le déclencheur je comprends pas la logique du coup...Salvialf a écrit : ↑31 mai 2019, 22:19Avec les commandes lever et coucher du soleil du plugin weather ça fonctionne nickel en tout cas... J'ai utilisé cette méthode pendant très longtemps et ça se déclenche uniquement à l'heure du lever ou coucher et pas aux heures de MAJ des données.
Je viens de changer de méthode et de code car je n'utilise plus le plugin weather mais j'ai revérifié les logs au passage et jamais un problème. J'avoues c'est pas complètement logique.
Oui c'est rafraichit à condition que tu ai bien mis un bloc action "gotodesign" à la fin de ton scénario.
Le gotodesign n’est pas dans le script. Mais si il y était je ne comprendrais pas la logique non plus... (si c’etait en php ok mais le scénario est déclenché côté serveur pas client...)
Re: [Présentation] F$B33
J'ai pourtant bien précisé "ajouté un bloc action" donc non ce n'est pas dans le bloc code forcément... donc en-dessous du bloc code contenant le script php tu ajoutes un bloc action: faire gotodesign.
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Re: [Présentation] F$B33
db2p a écrit : ↑23 mai 2019, 15:41il vous faut le plugin weather parametré suivant votre ville
il vous faut le plugin outil de developpement, plus facile pour copier les images
(dans cet exemple il faut créer les dossiers core/img/Plan/Images/Meteo/jour et core/img/Plan/Images/Meteo/nuit) -> bien respecter les majuscules et minuscules et y coller les images
creer un scénario avec un cron de 5mn (lecture du scénario tous les 5mn) -> */5 * * * * (mode de scénario = programmé)
dans ce scenario, ajouter un bloc code et y coller ce code
(en rouge ce que vous avez a modifier suivant votre jeedom)$plans = array(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12); //les ID des designs à modifier
$chemin = 'http://mettre votre ip interne de votre jeedom/core/img/Plan/Images/Meteo/'; //chemin vers les dossier jour & nuit
$id_condition = 17; //ID de la commande "Numéro condition" du plugin Weather
$id_lever = 13; //ID de la commande "Lever du soleil" du plugin Weather
$id_coucher = 12; //ID de la commande "Coucher du soleil" du plugin Weather
$wall_changed = 0; //Changement de wall paper
$prev_wall = ''; //wall précédent
$prev_wall = $scenario->getData("prevWall"); // Récupère le wall précédent
$scenario->setLog("Wall précédent : ".$prev_wall); //Log
$cmd_condition = cmd::byId($id_condition);
$condition = $cmd_condition->execCmd();
$cmd_lever = cmd::byId($id_lever);
$lever = $cmd_lever->execCmd();
$cmd_coucher = cmd::byId($id_coucher);
$coucher = $cmd_coucher->execCmd();
// On compare l'heure actuelle avec $coucher et $lever
$heure = round(date('Hi'));
if (($heure >= $lever) && ($heure <= $coucher)){
$moment = "jour";
}
elseif (($heure <= $lever) || ($heure >= $coucher)){
$moment = "nuit";
}
// on compare l'id condition aux valeurs d'openWeather
$numGroup = substr($condition, 0,1);
switch ($numGroup) {
case '2':
$valeur_condition = "Orage";
break;
case '7':
$valeur_condition = "Brume";
break;
case '5':
$valeur_condition = "Pluie";
break;
case '6':
$valeur_condition = "Neige";
break;
case '8':
case '3':
$valeur_condition = "Nuage";
break;
default:
$valeur_condition = "defaut";
break;
}
//Condiftions particulières
if(in_array($condition, array('905', '902', '900', '952', '953', '954', '955', '956', '957', '960', '961'))){
$valeur_condition = "Vent";
} else if(in_array($condition, array('800', '951'))){
$valeur_condition = "Soleil";
} else if($condition == '909'){
$valeur_condition = "Pluie";
}
$file = $chemin.$moment.'/'.$valeur_condition.'.jpg';
$scenario->setLog("Nouveau Wall : ".$file); //Log
$wall_changed = 1;
$scenario->setData("prevWall",$file); // Sauvegarde le nouveau wall
$img_size = getimagesize($file);
$data = base64_encode(file_get_contents($file));
$sha512 = sha512($data);
$type = 'jpg';
foreach ($plans as $planId){
$planHeader = planHeader::byId($planId);
$planHeader->setImage('type', $type);
$planHeader->setImage('size', $img_size);
$planHeader->setImage('sha512', $sha512);
$planfilename = 'planHeader'.$planId.'-'.$sha512.'.'.$type;
$planfilepath = __DIR__ . '/../../data/plan/' . $planfilename;
file_put_contents($planfilepath,file_get_contents($file));
$planHeader->save();
}
//stockage changement dans la variable
$scenario->setData("wallChanged",$wall_changed) ;
Merci beaucoup de ton aide
Re: [Présentation] F$B33
Autant pour moi, j’etais pas remonté assez haut dans la discution pour voir cette partie (page 44)
Je vais tous relire voir si j’ai pas loupé autre chose
Re: [Présentation] F$B33
si je peux me permettre un conseil évite le cron à 5 minutes et mets les déclencheurs comme sur ma capture plus haut (commandes numéro condition, lever soleil et coucher soleil issues du plugin weather).
Ça a fonctionné comme ça pendant des mois chez moi et c'est bien plus léger surtout que je crois que le plugin ne se met à jour que toutes les 30 minutes... Après chacun fait comme il veut.
Ça a fonctionné comme ça pendant des mois chez moi et c'est bien plus léger surtout que je crois que le plugin ne se met à jour que toutes les 30 minutes... Après chacun fait comme il veut.
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Re: [Présentation] F$B33
J’ai mis des déclencheurs, c’est plus propre.
J’ai juste mis la comparaison avec #time# dans les déclencheurs (même si ça marche sans, là au moins je comprends la logique)
De toute façon je ne fais que des tests, j’hesite a me créer des design maintenant parceque je n’en ai pas encore et je ne sais pas si la v4 m’obligera a tout casser...
J’ai juste mis la comparaison avec #time# dans les déclencheurs (même si ça marche sans, là au moins je comprends la logique)
De toute façon je ne fais que des tests, j’hesite a me créer des design maintenant parceque je n’en ai pas encore et je ne sais pas si la v4 m’obligera a tout casser...
Re: [Présentation] F$B33
Salvialf a écrit : ↑31 mai 2019, 23:32si je peux me permettre un conseil évite le cron à 5 minutes et mets les déclencheurs comme sur ma capture plus haut (commandes numéro condition, lever soleil et coucher soleil issues du plugin weather).
Ça a fonctionné comme ça pendant des mois chez moi et c'est bien plus léger surtout que je crois que le plugin ne se met à jour que toutes les 30 minutes... Après chacun fait comme il veut.
Du coup j’ai regardé pourquoi au passage en nuit mon wall ne s’etait pas changé avec tes déclencheurs, j’ai du faire une petite modif de script:
Code : Tout sélectionner
if (($heure >= $lever) && ($heure < $coucher)){
$moment = "jour";
}
elseif (($heure < $lever) || ($heure >= $coucher)){
$moment = "nuit";
}
A l’heure du coucher on passait dans le cas jour avec le <=
on restait donc en jour jusqu’au prochain déclenchement
Pour être propre j’ai fait pareil pour le lever en nuit. Comme c’est dans le else on n’y passerait pas de toute façon, c’est juste pour être propre.
Re: [Présentation] F$B33
Oui j'avais fait ces modifs aussi à l'époque
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 4 invités