wgreipl
23. Februar 2007 um 15:23
21
Hallo uwe,
an diesem Phänomen liegt es leider bei mir nicht. Die Werte stimmen und haben auch kein Minus davor.
<?
/*
*******************************
IP-SYMCON Event Scripting
*******************************
File : test1.ips.php
Trigger :
Interval :
*/
$offset = 0;
$timesunset=date_sunset(time(), SUNFUNCS_RET_STRING, 48.18, 11.25, 90, $offset);
$timesunrise=date_sunrise(time(), SUNFUNCS_RET_STRING, 48.18, 11.25, 90, $offset);
echo "Sonnenuntergang: ".$timesunset ." Uhr";
echo "
";
echo "Sonnenaufgang: ".$timesunrise ." Uhr";
?>
Ergibt saubere Werte:
Sonnenuntergang: 16:44 Uhr
Sonnenaufgang: 06:10 Uhr.
Nur startet der Timer einfach nicht (laut Log).
RWN
23. Februar 2007 um 16:05
22
Hallo Werner,
triggerts Du auch alle 60 sek.
Interval : 60 Sekunden
*/
// Sonnenauf.- u. Untergang berechnen
$longitude = 9.0;
$latitude = 50.25;
$day_offset = (GetValueInteger("SUNRISE_OFFSET")+(date("I")*60))/60+1;
$night_offset = (GetValueInteger("SUNSET_OFFSET")+(date("I")*60))/60+1;
$var_sunrise = date(date_sunrise(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, 90, $day_offset));
$var_sunset = date(date_sunset(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, 90, $night_offset));
SetValueString("SUNRISE", $var_sunrise);
SetValueString("SUNSET", $var_sunset);
Hallo,
den Sunset/Sunrise brauchst du nur einmal am tag zu berechnen, das genügt vollends.
mfG Franz
RWN
23. Februar 2007 um 16:49
24
Hier der Link zum ganzen Script.
Hallo, ich fange gerade an, mich ein wenig mit dem Designer zu beschäftigen und schon kommen die ersten Fragen. Wo krieg ich die Variablen für Datum und Uhrzeit her? Irgendwo hatte ich gelesen, „CurrentTime“ wäre für die Uhrzeit, aber wo nehm ich...
Das ganze Script läuft eigenständig und braucht den Timer von IPS nicht!
wgreipl
23. Februar 2007 um 17:28
25
Servus RWN,
ich triggere ansich gar noch garnicht. Mit diesem Skript teste ich nur ob die Sunset und Sunrise-Zeit richtig berechnet wird.
Im Timer rufe ich derzeit ein Skript „Beleuchtung EIN“ auf das eben durch die Sunset gesteuert werden soll aber leider nicht tut.
wgreipl
23. Februar 2007 um 17:30
26
Hallo guyabano,
Wie läuft das dann im Timer ab. Wann wird die Sunrise/Sunset-Time dort berechnet, sprich wann läuft der Timer an. Die Zeiten sind ja eigentlich noch garnicht berechnet und er kann garnicht starten.
hmmm
[EDIT] Das Timer.ips.php oder wie es auch heißt wird ja zyklisch aufgerufen, dort sollte dann auch die Sunrise/Sunset-Zeit berechnet werden und dann eben der Timer zu diesem Zeitpunkt starten…
…was er aber nicht macht.[/EDIT]
RWN
23. Februar 2007 um 17:37
27
Hi Werner,
teste doch mal das Script vom angegebenen Link, das läuft einwandfrei. Leg dir die Variablen per Hand an und Du bist begeistert.
Im Timer rufe ich derzeit ein Skript „Beleuchtung EIN“ auf das eben durch die Sunset gesteuert werden soll aber leider nicht tut.
Das machst Du dann über die Variable Sunset/Sunrise
wgreipl
23. Februar 2007 um 17:40
28
Sers RWN,
danke für das Skript, bin auch schon dabei, bin mir auch sicher das es funktioniert, es stellt sich aber immer noch die Frage warum das Skript nicht durch den Timer getriggert wird.
wgreipl
23. Februar 2007 um 17:52
29
Hallo @,
ich schnall es nicht, gerade jetzt ist der Timer angelaufen, zwar eine Stunde zu spät aber es ist angelaufen. Die Stunde kommt mit Sicherheit von der Winterzeit.
Das muss ich jetzt aber nicht kapieren.
Sorry für die Mühe auch wenn ich nicht weiß warum es auf einmal funktioniert.
RWN
23. Februar 2007 um 17:54
30
Hi Werner,
diese Frage kann ich dir leider auch nicht beantworten. Bei mir war trotz Komplett Installation kein Timer vorhanden.
Die ersten Timer die bei mir vorhanden waren, waren von Wiips. Den Rest habe ich mir selbst angelegt, nach Stunden langer Suche hier im Forum.:eek:
RWN
23. Februar 2007 um 18:01
31
Das wäre doch OK, Sunset ist Z.B. 17:51
wgreipl:
Hallo guyabano,
Wie läuft das dann im Timer ab. Wann wird die Sunrise/Sunset-Time dort berechnet, sprich wann läuft der Timer an. Die Zeiten sind ja eigentlich noch garnicht berechnet und er kann garnicht starten.
hmmm
[EDIT] Das Timer.ips.php oder wie es auch heißt wird ja zyklisch aufgerufen, dort sollte dann auch die Sunrise/Sunset-Zeit berechnet werden und dann eben der Timer zu diesem Zeitpunkt starten…
…was er aber nicht macht.[/EDIT]
Ich benutze ja auch nicht das Sunset/Sunrise aus IPS sondern definiere sie selbst durch PHP. Meine Werte, so wie ich sie habe stimmen absolut.
So mache ich es:
$latitude = xx.xx; // latitude for xxx (Werte eintragen)
$longitude = x.xx; // longitude for xxx (Werte eintragen)
// Check if Summer- or Wintertime
if (date("I") == 1) $daylight = 2; // Summertime
if (date("I") == 0) $daylight = 1; // Wintertime
$sunrise = date(date_sunrise(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, 90, $daylight));
$sunset = date(date_sunset(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, 90, $daylight));
mfG Franz
RWN
23. Februar 2007 um 18:17
33
Ich finde dieses hier und auch das Forum, einfach nur genial!
ich parse Sonnenauf- und Untergang aus http://www.regionaltrend.com/deutsch/wetter/hannover.html
mit der Variable TAG_NACHT kann man dann ganz easy über ein Macroscript alles Licht steuern.
<?
/*
*******************************
IP-SYMCON Event Scripting
*******************************
File : Tag_Nacht.ips.php
Trigger :
Interval : 300 sec.
*/
$Sonnenaufgang = GetValueString("SONNENAUFGANG");
$Sonnenuntergang = GetValueString("SONNENUNTERGANG");
$Sonnenaufgang = substr($Sonnenaufgang,0,5);
$Sonnenaufgang = split("[:]", $Sonnenaufgang);
$Sonnenaufgang = implode("", $Sonnenaufgang);
$Sonnenuntergang = substr($Sonnenuntergang,0,5);
$Sonnenuntergang = split("[:]", $Sonnenuntergang);
$Sonnenuntergang = implode("", $Sonnenuntergang);
$Zeit = date("Hi");
if (($Zeit > $Sonnenaufgang) and ($Zeit < $Sonnenuntergang))
{
SetValueBoolean("TAG_NACHT", true);
}
else
{
SetValueBoolean("TAG_NACHT", false);
}
?>
wgreipl
23. Februar 2007 um 19:28
35
Hallo @,
der Genialität des Forums kann ich mich nur anschließen.
So wie ich es aus dem Thread mitgenommen habe werde ich mich eines Eurer Skripte bedienen.
Vielen Dank nochmals für die Unterstützung.
guyabano:
Ich benutze ja auch nicht das Sunset/Sunrise aus IPS sondern definiere sie selbst durch PHP. Meine Werte, so wie ich sie habe stimmen absolut.
So mache ich es:
$latitude = xx.xx; // latitude for xxx (Werte eintragen)
$longitude = x.xx; // longitude for xxx (Werte eintragen)
// Check if Summer- or Wintertime
if (date("I") == 1) $daylight = 2; // Summertime
if (date("I") == 0) $daylight = 1; // Wintertime
$sunrise = date(date_sunrise(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, 90, $daylight));
$sunset = date(date_sunset(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, 90, $daylight));
mfG Franz
Hallo Guyabanu!
Bin grade dabei den Designer richtig zu nutzen zu wollen.
Zu deinem Script habe ich ne Frage:
Kann man oder ist da die Sommerzeit Umstellung drin?
Schöne Ostern
Egon
Es steht ja drin im Skript !
// Check if Summer- or Wintertime
if (date("I") == 1) $daylight = 2; // Summertime
if (date("I") == 0) $daylight = 1; // Wintertime
mfG Franz
Hallo Franz!
Wer lesen kann ist im Vorteil.
Danke:)
Egon