Das Thema mit den Events und der Abhängigkeit zum Sonnenaufgang und Sonnenuntergang in IPS 2.x wurde schon einmal hier besprochen:
Das dort beschreibene Script ist aus meiner Sicht sehr gut, war mir aber insbesondere für meine Rolladen nicht flexibel genug.
Nun habe ich mir überlegt, dass ich ja ein Ereignis auch umbenennen kann. Also habe ich einfach mal aus dem Ereignis:
Unbenanntes Objekt (ID: 24145)
folgendes gemacht:
SUN_SET_+10_Unbenanntes Objekt (ID: 24145)
Danach habe ich folgendes Skript geschrieben (bzw. einige Sachen aus dem Skript von Doctor Snuggles ausgeliehen),
dass ich täglich einmal laufen lassen möchte:
$longitude = 6.58;
$latitude = 51.24;
$var_sunrise = date(date_sunrise(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, 90));
$var_sunset = date(date_sunset(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, 90));
$alleEreignisse = IPS_GetEventListByType(1);
foreach ($alleEreignisse as $Ereignis) {
$event = IPS_GetObject($Ereignis);
$teile = explode("_",$event["ObjectName"]);
if ($teile[0]=="SUN"):
if ($teile[1]=="SET"):
// "Sonnenuntergang";
IPS_SetEventCyclicTimeBounds($Ereignis, mktime(substr($var_sunset,0,2),substr($var_sunset,3,2)+$teile[2]), 0);
Else:
// "Sonnenaufgang";
IPS_SetEventCyclicTimeBounds($Ereignis, mktime(substr($var_sunrise,0,2),substr($var_sunrise,3,2)+$teile[2]), 0);
Endif;
Endif;
}
Hiermit schaue ich mir alle zyklischen Events an (die nichtzyklischen machen meiner Meinung nach keinen Sinn) und suche
im Namen nach dem Begriff „SUN“. Danach wird noch festgestellt, ob es sich um den Sonnenauf- (RISE) oder
Sonnenuntergang (SET) handelt. Bei der Einstellung der Zeit wird dann noch die Anzahl der Minuten (entweder + oder -)
mit der Sonnenaufgangs- bzw. Sonnenuntergangszeit verrechnet.
Nun zu meiner Frage:
Seht Ihr Probleme bei diesem Vorgehen, insbesondere bei der Umbenennung des Events ?
Gruß aus Essen
Thomas