Comme annoncé, ce forum est passé en lecture seule au 1er janvier 2020. Désormais nous vous invitons à vous rendre sur notre nouvelle page communauté :
Image

A très bientôt !

[Présentation] F$B33

JEEDOM et vous! Venez vous présenter et préseter votre installation domotique JEEDOM
Avatar de l’utilisateur
hansc
Timide
Messages : 133
Inscription : 16 févr. 2017, 20:14
Localisation : Belgique

Re: [Présentation] F$B33

Message par hansc » 16 mars 2019, 15:32

Mips2648 a écrit :
15 mars 2019, 08:24
Hello,
Concernant le plugin météo j'ai le même soucis et pourtant aucun problème sur d'autres, j'y regarderai à l'occas ou alors faut soumettre un ticket mais ce n'est pas très grave parce que les ids n'ont pas changés (j'ai vérifié) (sauf si vous avez supprimé / recréé votre équipement).

Concernant les fonds, même soucis chez moi, c'est parce que maintenant les fond d'écran sont sauvés sur le filesystem et plus en DB

A priori à la fin de votre script (ou bloc code) vous avez ce type de code

Code : Tout sélectionner

foreach ($plans as $planId){
  $planHeader = planHeader::byId($planId);
  $planHeader->setImage('type', $type);
  $planHeader->setImage('size', $img_size);
  $planHeader->setImage('data', $data);
  $planHeader->setImage('sha512', $sha512);
  
  $planHeader->save();
}
vous rajoutez les 3 lignes suivantes pour avoir ceci, cela va sauver le fichier sur le filesystem:

Code : Tout sélectionner

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();
}
Il n'est plus utile de sauver l'image dans le plan donc la ligne " $planHeader->setImage('data', $data);" peut être supprimée
Merci pour la correction du script sa marche o poils de mon côter :)
PC Debian Stretch / Raspberry PI 3
SIGMA DESIGNS Contrôleur Z-Wave Plus USB
Fibaro Wall Plug FGWPF-102 ZW5
philips hue | netatmo weather | netatmo Welcome
Google Home | Xiaomi | SONOS | Awtrix | Shelly

sim2000
Timide
Messages : 65
Inscription : 08 avr. 2018, 23:19

Re: [Présentation] F$B33

Message par sim2000 » 18 mars 2019, 19:19

remyg83 a écrit :
15 mars 2019, 11:00
Mips2648 a écrit :
15 mars 2019, 08:24
Hello,
Concernant le plugin météo j'ai le même soucis et pourtant aucun problème sur d'autres, j'y regarderai à l'occas ou alors faut soumettre un ticket mais ce n'est pas très grave parce que les ids n'ont pas changés (j'ai vérifié) (sauf si vous avez supprimé / recréé votre équipement).

Concernant les fonds, même soucis chez moi, c'est parce que maintenant les fond d'écran sont sauvés sur le filesystem et plus en DB

A priori à la fin de votre script (ou bloc code) vous avez ce type de code

Code : Tout sélectionner

foreach ($plans as $planId){
  $planHeader = planHeader::byId($planId);
  $planHeader->setImage('type', $type);
  $planHeader->setImage('size', $img_size);
  $planHeader->setImage('data', $data);
  $planHeader->setImage('sha512', $sha512);
  
  $planHeader->save();
}
vous rajouter les 3 lignes suivantes pour avoir ceci, cela va sauver le fichier sur le filesystem:

Code : Tout sélectionner

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();
}
Il n'est plus utile de sauver l'image dans le plan donc la ligne " $planHeader->setImage('data', $data);" peut être supprimée
J'ai modifié le bloc code, les images de fond changent bien, par contre toujours ce message d'erreur, "commencer par envoyer une image".
Concernant les numéros id des commandes du plugin météo, cliquez sur "URL Directe sur la droite", ça va ouvrir une nouvelle fenêtre avec une adresse http, le numéro ID est indiqué à la fin de l'adresse...
Salut à tous.

On parle bien ici du wall_change.php?
Parce que moi j'ai pas du tout ça, j'ai loupé quelque chose moi... :shock:

Voila mon code à moi:

Code : Tout sélectionner

<!--	

Script a copier dans /core/img/plan/

Dans /core/img/plan/ >> Créer un dossier Images (avec un i Maj)

Dans /core/img/plan/Images >> Copier le dossier Meteo (avec un M Maj) avec les images 

Ne pas modifier le nom des images.

Si vous voulez remplacer une image, attention au nom et l’extension !

Extension : .jpg

Si la condition météo n’est pas référencée ci dessous, le fichier defaut.jpg prendra place en fond d’écran


-->

<?php

// A compléter : 

//Paramètres JEEDOM
$url_jeedom = "monip"; //IP du JEEDOM
$API_jeedom = "maclé"; // Clef API du JEEDOM
$id_Condition = 444; //ID de la commande "Numéro condition" du plugin Weather
$id_Lever = 440;
$id_Coucher = 439;
$nom_fichier_fond_ecran = "plan/4e0e89ab19f3633bda55b26964500d9d75a78a81255f32627f930fc79050672f3c30d2e9c5331988b84f0092036b593a02e2e8925b552903f534767a9a51e28d.jpg"; //Récupérer le nom du fichier du fond d'écran actuel dans /core/img/plan/

// // On récupère les heures de lever et coucher du soleil
$adresse = "http://".$url_jeedom."/core/api/jeeApi.php?apikey=".$API_jeedom."&type=cmd&id=".$id_Lever;
$lever = file_get_contents($adresse);

$adresse = "http://".$url_jeedom."/core/api/jeeApi.php?apikey=".$API_jeedom."&type=cmd&id=".$id_Coucher;
$coucher = file_get_contents($adresse);

// 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 récupère les conditions météo via Weather

$adresse = "http://".$url_jeedom."/core/api/jeeApi.php?apikey=".$API_jeedom."&type=cmd&id=".$id_Condition;
$condition = file_get_contents($adresse);

// on compare l'id condition aux valeurs d'openWeather

$numGroup = substr($condition, 0,1);


switch ($numGroup) {
	case '2':
		$valeur_condition = "Orage";
		break;
	
	case '3':
		$valeur_condition = "Brume";
		break;

	case '5':
		$valeur_condition = "Pluie";
		break;		

	case '6':
		$valeur_condition = "Neige";
		break;

	case '8':
		$valeur_condition = "Nuage";
		break;

	case '3':
		$valeur_condition = "Nuage";
		break;

	default:
		$valeur_condition = "defaut";
		break;
}


//Condiftions particulières

switch ($condition) {
	case '800':
		$valeur_condition = "Soleil";
		break;

	case '905':
		$valeur_condition = "Vent";
		break;

	case '905':
		$valeur_condition = "Vent";
		break;

	case '900':
		$valeur_condition = "Vent";
		break;

	case '902':
		$valeur_condition = "Vent";
		break;

	case '905':
		$valeur_condition = "Vent";
		break;

	case '909':
		$valeur_condition = "Pluie";
		break;

	case '951':
		$valeur_condition = "Soleil";
		break;

	case '951':
		$valeur_condition = "Soleil";
		break;

	case '952':
		$valeur_condition = "Vent";
		break;

	case '953':
		$valeur_condition = "Vent";
		break;

	case '954':
		$valeur_condition = "Vent";
		break;

	case '955':
		$valeur_condition = "Vent";
		break;

	case '956':
		$valeur_condition = "Vent";
		break;

	case '957':
		$valeur_condition = "Vent";
		break;

	case '960':
		$valeur_condition = "Vent";
		break;

	case '961':
		$valeur_condition = "Vent";
		break;
	
}

//On compare avec les conditions du plugin Weather
/*switch ($condition) {
	case "Avec Bruine le matin":
			$valeur_condition = "Brume";
		break;

		case "Avec Bruine":
			$valeur_condition = "Brume";
		break;

		case "Peu nuageux":
			$valeur_condition = "Nuage";
		break;

		case "Ensoleillé l'après-midi":
			$valeur_condition = "Soleil";
		break;

		case "Pluvieux le matin":
			$valeur_condition = "Pluie";
		break;

		case "Pluvieux l'après-midi":
			$valeur_condition = "Pluie";
		break;

		case "Nuageux l'après-midi":
			$valeur_condition = "Nuage";
		break;

		case "Pluvieux l'après-midi":
			$valeur_condition = "Pluie";
		break;

		case "Legèrement pluvieux l'après-midi":
			$valeur_condition = "Pluie";
		break;

		case "Orageux l'aprés-midi":
			$valeur_condition = "Orage";
		break;

		case "Orageux le matin":
			$valeur_condition = "Orage";
		break;

		case "Orageux et venteux l'aprés-midi":
			$valeur_condition = "Orage";
		break;

		case "Orageux et venteux le matin":
			$valeur_condition = "Orage";
		break;

		case "Orageux et venteux":
			$valeur_condition = "Orage";
		break;

		case "Ensoleillé le matin":
			$valeur_condition = "Soleil";
		break;

		case "Nuageux le matin":
			$valeur_condition = "Nuage";
		break;

		case "Nuageux le matin/Ensoleillé l'après-midi":
			$valeur_condition = "Nuage";
		break;

		case "Brumeux le matin/Ensoleillé l'après-midi":
			$valeur_condition = "Brume";
		break;

		case "Pluvieux et venteux":
			$valeur_condition = "Pluie";
		break;

		case "Ensoleillé le matin/Nuageux l'après-midi":
			$valeur_condition = "Soleil";
		break;

		case "Nuageux tôt et eclaircie tardive":
			$valeur_condition = "Nuage";
		break;

		case "Partiellement nuageux":
			$valeur_condition = "Nuage";
		break;
		
		case "Nuageux":
			$valeur_condition = "Nuage";
		break;
		
		case "Venteux et pluvieux le matin":
			$valeur_condition = "Pluie";
		break;
		
		case "Venteux et pluvieux l'après-midi":
			$valeur_condition = "Pluie";
		break;
		
		case "Partiellement nuageux et venteux":
			$valeur_condition = "Nuage";
		break;
		
		case "Venteux":
			$valeur_condition = "Vent";
		break;
		
		case "Ensoleillé":
			$valeur_condition = "Soleil";
		break;
		
		case "Plutôt ensoleillé":
			$valeur_condition = "Soleil";
		break;
		
		case "Beau":
			$valeur_condition = "Soleil";
		break;
		
		case "Dégagé":
			$valeur_condition = "Soleil";
		break;
		
		case "Avec des Averses":
			$valeur_condition = "Pluie";
		break;
		
		case "Avec quelques averses":
			$valeur_condition = "Pluie";
		break;
		
		case "Averses et vent":
			$valeur_condition = "Pluie";
		break;
		
		case "Faiblement pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Brumeux":
			$valeur_condition = "Brume";
		break;
		
		case "Partiellement brumeux":
			$valeur_condition = "Brume";
		break;
		
		case "Brumeux le matin et nuageux l'après-midi":
			$valeur_condition = "Brume";
		break;
		
		case "Peu nuageux":
			$valeur_condition = "Nuage";
		break;
		
		case "Pluvieux l'après-midi":
			$valeur_condition = "Pluie";
		break;
		
		case "Orageux l'après-midi":
			$valeur_condition = "Orage";
		break;
		
		case "Légèrement pluvieux avec orage":
			$valeur_condition = "Orage";
		break;
		
		case "Orageux":
			$valeur_condition = "Orage";
		break;
		
		case "Fortement pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Avec Averses tardive":
			$valeur_condition = "Pluie";
		break;
		
		case "Avec Averses localisées":
			$valeur_condition = "Pluie";
		break;
		
		case "légèrement pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Brumeux":
			$valeur_condition = "Brume";
		break;
		
		case "Orageux localement":
			$valeur_condition = "Orage";
		break;
		
		case "Légèrement pluvieux le matin":
			$valeur_condition = "Pluie";
		break;
		
		case "Légèrement pluvieux le matin":
			$valeur_condition = "Pluie";
		break;
		
		case "Orageux":
			$valeur_condition = "Orage";
		break;
		
		case "Averses orageuses":
			$valeur_condition = "Orage";
		break;
		
		case "Pluvieux/Orageux":
			$valeur_condition = "Orage";
		break;
		
		case "Orageux localement":
			$valeur_condition = "Orage";
		break;
		
		case "Avec Orage dispersé et venteux":
			$valeur_condition = "Orage";
		break;
		
		case "Légèrement pluvieux et venteux":
			$valeur_condition = "Pluie";
		break;
		
		case "Orageux":
			$valeur_condition = "Orage";
		break;
		
		case "Nuageux et venteux":
			$valeur_condition = "Nuage";
		break;
		
		case "Pluvieux tardivement":
			$valeur_condition = "Pluie";
		break;
		
		case "Légèrement pluvieux et vent":
			$valeur_condition = "Pluie";
		break;
		
		case "Tardivement pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Dégagé et venteux":
			$valeur_condition = "Vent";
		break;
		
		case "Ensoleillé et venteux":
			$valeur_condition = "Soleil";
		break;
		
		case "Pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Faiblement pluvieux et brumeux":
			$valeur_condition = "Pluie";
		break;
		
		case "Pluvieux le matin":
			$valeur_condition = "Pluie";
		break;
		
		case "Ensoleillé avec du vent":
			$valeur_condition = "Soleil";
		break;
		
		case "Brumeux":
			$valeur_condition = "Brume";
		break;
		
		case "Pluvieux et venteux":
			$valeur_condition = "Pluie";
		break;
		
		case "Faiblement pluvieux et venteux":
			$valeur_condition = "Pluie";
		break;
		
		case "Nuageux avec du vent":
			$valeur_condition = "Nuage";
		break;
		
		case "Nuageux et venteux":
			$valeur_condition = "Nuage";
		break;
		
		case "Faiblement neigeux":
			$valeur_condition = "Neige";
		break;
		
		case "Partiellement nuageux et venteux":
			$valeur_condition = "Nuage";
		break;
		
		case "Brumeux":
			$valeur_condition = "Brume";
		break;
		
		case "Légèrement pluvieux dans la soirée":
			$valeur_condition = "Pluie";
		break;
		
		case "Pluvieux et neigeux le matin":
			$valeur_condition = "Neige";
		break;
		
		case "Pluvieux et neigeux":
			$valeur_condition = "Neige";
		break;
		
		case "Pluvieux et venteux l'après midi":
			$valeur_condition = "Pluie";
		break;
		
		case "Pluvieux et neigeux plus tard":
			$valeur_condition = "Neige";
		break;
		
		case "Pluvieux et neigeux":
			$valeur_condition = "Neige";
		break;
		
		case "Faiblement pluvieux":
			$valeur_condition = "Pluie";
		break;
		
		case "Pluvieux et neigeux":
			$valeur_condition = "Neige";
		break;
		
		case "Légèrement brumeux et venteux":
			$valeur_condition = "Vent";
		break;
		
		case "Neigeux":
			$valeur_condition = "Neige";
		break;
		
		case "Neigeux":
			$valeur_condition = "Neige";
		break;
		
		case "Pluvieux dans la soirée":
			$valeur_condition = "Pluie";
		break;
		
		case "Neigeux l'après midi":
			$valeur_condition = "Neige";
		break;
		
		case "Légèrement pluvieux et venteux":
			$valeur_condition = "Pluie";
		break;
		
		case "Brumeux":
			$valeur_condition = "Brume";
		break;
		
		case "Fortement pluvieux et venteux":
			$valeur_condition = "Pluie";
		break;
		
		case "Pluvieux et venteux le matin":
			$valeur_condition = "Pluie";
		break;
		
		case "Legèrement brumeux":
			$valeur_condition = "Brume";
		break;
		
		case "Neigeux le matin":
			$valeur_condition = "Neige";
		break;
		
		case "Snow Showers":
			$valeur_condition = "Neige";
		break;

		case "Light Snow Shower":
			$valeur_condition = "Neige";
		break;
		
	default:
			$valeur_condition = "defaut";
		break;

}*/


$Chemin_source = "Images/Meteo/".$moment."/".$valeur_condition.".jpg";

$Chemin_dest = $nom_fichier_fond_ecran;


copy($Chemin_source,$Chemin_dest);

echo  $heure." > ".$lever." > ".$coucher." > ".$moment." > ".$condition.' > '.$valeur_condition.' > '.$Chemin_source.' > '.$nom_fichier_fond_ecran;



?>

Là je comprends plus...

faycal39
Timide
Messages : 122
Inscription : 02 avr. 2018, 06:43

Re: [Présentation] F$B33

Message par faycal39 » 19 mars 2019, 11:55

Si ça peut te rassurer sim2000, je suis dans le même cas que et ça me rassure de voir ton post car je comprends plus moi non plus, on a dû louper un truc...

fishes
Timide
Messages : 68
Inscription : 10 nov. 2017, 09:45
Localisation : Brumath (67)

Re: [Présentation] F$B33

Message par fishes » 19 mars 2019, 12:04

salut,

la correction de code annoncée plus haut me semble être celle utilisée par le wallchange en mode scénario avec un bloc code.

pour le script .php j'ai pas encore vu de solution car moi aussi je suis dans le même cas que vous...

Reste pour nous à passer en mode scénario...

trane51100
Timide
Messages : 5
Inscription : 31 déc. 2018, 08:45

Re: [Présentation] F$B33

Message par trane51100 » 19 mars 2019, 13:57

Si 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 :)

sim2000
Timide
Messages : 65
Inscription : 08 avr. 2018, 23:19

Re: [Présentation] F$B33

Message par sim2000 » 19 mars 2019, 18:58

fishes a écrit :
19 mars 2019, 12:04
salut,

la correction de code annoncée plus haut me semble être celle utilisée par le wallchange en mode scénario avec un bloc code.

pour le script .php j'ai pas encore vu de solution car moi aussi je suis dans le même cas que vous...

Reste pour nous à passer en mode scénario...
Ha d'accord, bon pour ma part je vais attendre patiemment. Sinon tant pis.
faycal39 a écrit :
19 mars 2019, 11:55
Si ça peut te rassurer sim2000, je suis dans le même cas que et ça me rassure de voir ton post car je comprends plus moi non plus, on a dû louper un truc...
Mdr je me sens moins seul, je cherchais partout sans comprendre!!

alexp
Timide
Messages : 25
Inscription : 07 janv. 2019, 12:24

Re: [Présentation] F$B33

Message par alexp » 19 mars 2019, 19:46

trane51100 a écrit :
19 mars 2019, 13:57
Si 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 :)
Merci ça a fonctionné. J'ai juste vidé l'historique du navigateur sans redémarrer Jeedom.

Xistof
Timide
Messages : 118
Inscription : 13 janv. 2018, 19:59

Re: [Présentation] F$B33

Message par Xistof » 20 mars 2019, 09:35

merci trane51100 !
modifié comme indiqué, j'ai décommenté l'alerte et c'est tout bon :)

Avatar de l’utilisateur
db2p
Timide
Messages : 185
Inscription : 08 nov. 2017, 13:25
Contact :

Re: [Présentation] F$B33

Message par db2p » 20 mars 2019, 13:38

idem pour moi
plus d'images de fond suiivant meteo
j'ai modifie le script du scenario comme mis
mais pas d'images du tout

Thrall
Timide
Messages : 25
Inscription : 18 oct. 2018, 19:23

Re: [Présentation] F$B33

Message par Thrall » 20 mars 2019, 14:26

@Mips2648: Merci beaucoup, j'ai fait tes modifs et supprimé le test (déclenchement désormais sur changement numéro de condition)

Ca refonctionne nickel et moins lourd en cpu, j'imagine… ;)

OUARZA
Timide
Messages : 298
Inscription : 13 févr. 2019, 08:10

Re: [Présentation] F$B33

Message par OUARZA » 26 mars 2019, 08:40

Bonjour à tous,
Merci pour ton travail F$B33, je m'en suis largement inspiré pour faire mon interface tablette.

J'ai une petite question, j'espère que je suis dans la bonne section.
Je cherche à faire un panneau de notification, qui reprend les 5 dernières notifications (activation du réveil, fenêtre ouverte,...).
Avez-vous une idée.
Mat

Avatar de l’utilisateur
Salvialf
Helper
Messages : 1334
Inscription : 24 févr. 2018, 09:37
Contact :

Re: [Présentation] F$B33

Message par Salvialf » 26 mars 2019, 08:43

@ouarza,

As-tu regardé le plugin jeelog? Je crois qu'il fait ça....
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)

OUARZA
Timide
Messages : 298
Inscription : 13 févr. 2019, 08:10

Re: [Présentation] F$B33

Message par OUARZA » 26 mars 2019, 09:26

Bonjour @Salvialf,
Oups, j'ai pourtant cherché, mais je ne suis jamais tombé sur ce plugin.
Je regarde cela de suite, merci pour le coup de pouce :)
Mat

OUARZA
Timide
Messages : 298
Inscription : 13 févr. 2019, 08:10

Re: [Présentation] F$B33

Message par OUARZA » 26 mars 2019, 09:47

Super c'est ce qu'il me faut !

J'ai une autre petite question, si je peux abuser de vos connaissances.
Comment modifier la couleur du widget sur le design sans que cela modifie le même widget sur le dashboard ou la vue ?
Jeedom1.PNG
Jeedom1.PNG (473.38 Kio) Consulté 1981 fois
Jeedom2.PNG
Jeedom2.PNG (3.78 Kio) Consulté 1981 fois
Mat

Avatar de l’utilisateur
Salvialf
Helper
Messages : 1334
Inscription : 24 févr. 2018, 09:37
Contact :

Re: [Présentation] F$B33

Message par Salvialf » 26 mars 2019, 10:10

OUARZA a écrit :
26 mars 2019, 09:47
Super c'est ce qu'il me faut !

J'ai une autre petite question, si je peux abuser de vos connaissances.
Comment modifier la couleur du widget sur le design sans que cela modifie le même widget sur le dashboard ou la vue ?

Mat
Pour ça tu peux modifier le code du widget uniquement concernant le design dans la configuration de la commande, onglet "code" -> case "activer la personnalisation" cochée et modifier le code dans la partie design.

Autre possibilité: Tu créé des virtuels à afficher uniquement sur le design.
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)

OUARZA
Timide
Messages : 298
Inscription : 13 févr. 2019, 08:10

Re: [Présentation] F$B33

Message par OUARZA » 26 mars 2019, 11:03

Salvialf a écrit :
26 mars 2019, 10:10
Autre possibilité: Tu créé des virtuels à afficher uniquement sur le design.
Effectivement, j'avais pensé à faire ça.
Je vais opter pour la 1ère solution.
Merci beaucoup :)

Avatar de l’utilisateur
db2p
Timide
Messages : 185
Inscription : 08 nov. 2017, 13:25
Contact :

Re: [Présentation] F$B33

Message par db2p » 26 mars 2019, 11:53

je reviens un peu vers vous pour l'affichage de l'image de fond des design suivant la météo
ça ne fonctionne toujours pas m$eme si j'ai modifié suivant le code ci-cessous
merci de votre aide car au niveau design c'est vraiment super sympa ce truc
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();
}

Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: [Présentation] F$B33

Message par Mips2648 » 26 mars 2019, 12:28

Va falloir plus de détails que "ca ne fonctionne pas" ;)
code complet, log du scénario, plus de description de l'erreur, etc
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

Avatar de l’utilisateur
db2p
Timide
Messages : 185
Inscription : 08 nov. 2017, 13:25
Contact :

Re: [Présentation] F$B33

Message par db2p » 27 mars 2019, 13:27

ok voila mon code entier
$plans = array(2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12); //les ID des designs à modifier
$chemin = 'http://192.168.0.21/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) ;
j'ai donc fait le changement comme indiqué par rapport a l'ancien code soit de mettre :
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();
}
extrait du log du scenario :
[2019-03-27 13:26:02][SCENARIO] Start : Scenario execute automatiquement sur programmation.
[2019-03-27 13:26:02][SCENARIO] Exécution du sous-élément de type [action] : code
[2019-03-27 13:26:02][SCENARIO] Exécution d'un bloc code
[2019-03-27 13:26:02][SCENARIO] Wall précédent : http://192.168.0.21/core/img/plan/Image ... Soleil.jpg
[2019-03-27 13:26:02][SCENARIO] Nouveau Wall : http://192.168.0.21/core/img/plan/Image ... Soleil.jpg
[2019-03-27 13:26:03][SCENARIO] Fin correcte du scénario
simplement aucune image ne s'affiche dans le design ???????
ne serait ce pas une histoire de chemin ?
merci pour l'aide

Avatar de l’utilisateur
db2p
Timide
Messages : 185
Inscription : 08 nov. 2017, 13:25
Contact :

Re: [Présentation] F$B33

Message par db2p » 28 mars 2019, 10:50

je me reponds et je viens de trouver la solution

lors de la maj en 3.3.19, ça m'a supprimé le dossier ou j'avais les images
donc je l'ai recréé , remis les images et ça fonctionne....

Répondre

Revenir vers « Présentation et Vitrine d'installations »

Qui est en ligne ?

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