Scenario Solaire: mon premier bloc code.

Scenario Solaire: mon premier bloc code.

Scenario Solaire: mon premier bloc code.

Ou comment capturer les horaires du levé et couché de soleil, sans plugin, sans API externe.


Introduction

Dans les questions qui reviennent souvent, on a:

Comment je programme la fermeture des volets la tombée de la nuit ?

Comment j’automatise l’éclairage extérieur 15 min avant la nuit ?

Aujourd’hui je vous propose vos premiers pas dans Jeedom avec un scenario tout bête pour définir deux variables, une pour le levé et une pour le couché de soleil.

Prérequis

  • Avoir Jeedom Installé
  • C’est tout.

Coordonnées GPS de votre habitation

Pour bien faire, il faut renseigner vos coordonnées GPS dans Jeedom, aidez vous de Google Maps pour avoir les latitudes/longitudes, et renseignez les dans le menu Réglages/Système/Configuration, onglet Général.

Scénario

Onglet Général

Dans le menu Outils/Scenarios, (et non Scenarii ^^), créez un nouveau scénario

Donnez lui un nom. Activez le. et ajoutez un déclencheur programmé à l’heure que vous souhaitez (au moins une fois pas jour).

Onglet Scénario

Cliquez sur Ajouter un Bloc, et sélectionnez, “Code”

$lat = config::byKey('info::latitude');
$long = config::byKey('info::longitude');

$sun_info = date_sun_info(time(), $lat, $long);
$sunrise = date("Hi", $sun_info["civil_twilight_begin"]);
$sunset = date("Hi", $sun_info["civil_twilight_end"]);
$scenario->setData('sunrise', $sunrise);
$scenario->setData('sunset', $sunset);

Copiez ce code PHP et enregistrez votre nouveau scénario.

Et ensuite ?

Dès la première exécution de ce scenario, deux variables seront crées.

  • sunset: ici le crépuscule civil
  • sunrise: ici l’aube civile

Vous pouvez donc vous en servir dans d’autres scenarii comme ceci.

Allez plus loin

Personnellement, j’aime beaucoup pouvoir utiliser les valeurs civiles plutôt que météo. C’est a mon sens plus représentatif.
Si vous préférez avoir des valeurs plus classiques, astronomiques, ou même nautique je vous recommande un petit tour de ce coté.