IP-Symcon-Unwetterzentrale

Danke sysrun,

mit der direkten IP-Adresse und ohne Proxy klappt es jetzt.

$remoteImage = „http://81.20.95.100/daten/radar/dbay/$year/$month/$day/$time.gif“;

Warum das Script die Adresse nicht auflösen kann, ist mir schleierhaft. Leider geht es auch nicht mit Proxy. Na ja, muss ich halt noch ein weiteres Loch in die Firewall schneiden.

Dank an alle und Gruss
Easy

Hallo zusammen,
sagt mal, wo findet man eigentlich das radarbild ?
Ich würde gerne mal den debug Modus nutzen, um meinen Standort und somit die Pixel einzustellen.

Irgendwie finde ich da aber nix…habe ich da was falsch verstanden ?

Gruss
B71

Bild gibts unter WetterOnline Deutschland zu sehen. Per Klick geht es ins jeweilige Bundesland.

Hallo Horst,

und wie stelle ich dann meine Pixel für meinen Wohnort ein ?

Ich stehe da etwas auf dem Schlauch ehrlich gesagt.

Gruss
B71

Du lädst dir dort erst mal ein Bild aus deinem Bereich herunter, öffnest es dann in MS Paint und zeigst mit dem Mauszeiger auf deinen Wohnort. Im MS Paint werden dir dann die benötigten Koordinaten unten rechts angezeigt. Die trägst du dann im Skript ein.

P.S.: Ich habe mir das Skript etwas angepasst, so das das Bild sofort geladen wird, wenn es ein Neues gibt und nicht erst mit 30 Minuten Verzögerung. Scheint bisher auch ganz gut zu funktionieren. Kann zwar bei dem manuellen Ausführen des Skripts zu einem Fehler führen, synchronisiert sich aber bei dem ersten Timerlauf wieder.

//Auf 15 Minuten Takt Synchronisieren

$offset = (integer)date("s") + ((integer)date("i") % 15) * 60;
//echo $offset."
";
if($offset != 0) {
   IPS_SetScriptTimer("UnwetterZentrale",1200 - $offset);
} else {
    IPS_SetScriptTimer("UnwetterZentrale",1200);
}

//Zeit berechnen

//$minute=Floor(date("i") / 15) * 15 - 30;
$minute=Floor(date("i") / 15) * 15;
$dateline=mktime(date("H"), $minute, 0, date("m"), date("d"), date("y"));

@OBI

DANKE für dieses Licht in meiner dunklen Ecke :slight_smile:

Und ASCHE auf mein Haupt…das steht ja in Zeile 4 von @Steiners Posting !! mann, mann, mann…

Gruss
B71

Hallo zusammen,

warum ist die $time Variable eigentlich um 2 Stunden verschoben wenn ich diese ausgebe ?

Das habe ich selbst bei mehrmaligem Lesen des gesamten Posts nicht verstanden.

2-3 haben diese Frage ja auch schon gestellt, aber die Antwort nach dem WARUM habe ich irgendwie nicht gefunden.

Bitte um Erleuchtung :slight_smile:

Weil $time als GMT angegeben wird. Erst die date() Funktion fügt unsere Zeitzone + Sommerzeit hinzu.

paresy

OK.

Das ist nun auch mir absolut einleuchtend.

Wenn ich jetzt $time ausgeben möchte und diesen Wert dann eventuell mitloggen möchte, wie erhöhe ich die $time um diese „fehlenden“ 120 Minuten ?

Ein reines $time+120 ist es ja nicht.
Geht das dann über die date () Funktion ?
Gruss
b71

Das würde ich lassen!

$time enthält die vergangen Sekunden seit dem 1. Januar 1970 00:00 Uhr, und zwar GMT (UTC)! Das bedeutet das du je nach Sommer oder Winterzeit entweder 1 oder 2 Stunden addieren müsstest.
Ausserdem: Was machst du mit den ganzen Schaltjahren seit 1970?

Daher: Umwandlung von Timestamps in ein lesbares Format sollte über die date()-Funktion von PHP erfolgen (PHP: date - Manual).

Wie oder wozu möchtest du denn $time ausgeben?

Einige Beispiele


//Uhrzeit ausgeben. Gibt z.B. "19:32" aus 
echo date("H:i",$time);

// Datum ausgeben (z.b. 24.01.1980)
echo date("d.m.Y",$time);

// Datum und Uhrzeit zusammen (24.01.1980 19:32)
echo date("d.m.Y H:i",$time);

Eine Beschreibung der Funktion findest du hier: PHP: date - Manual

@sysrun

Ich würde die aktuelle Uhrzeit gerne bei manueller Ausführung des Scriptes im Popup korrekt mit ausgeben wollen.

Sprich:

echo "Um ";
echo $time;
echo " ist eine Regenmenge von „;
echo $regenpixel;
echo " vorhergesagt“

In der Widgetleiste des Webfront habe ich bereits eine Regenwolke ab $Regenpixel >= 30 eingerichtet, die gleichzeitig dazu führt, dass meine Markise dann umgehend reingefahren wird.

Hier bei uns in der Ecke kommen zumeist sehr schnell sehr starke Windböen und da können 30 Sekunden über das Leben oder Sterben einer grossen 6m Markise entscheiden. Da hole ich das Ding mal lieber früher als später rein (trotz zusätzlichem Wind und Regensensor an der Markisensteuerung).

Das ist mein Ansinnen…

Gruss
B71

Denn probier es so:

echo "Um ";
echo date("H:i",$time)." Uhr";
echo " ist eine Regenmenge von ";
echo $regenpixel;
echo " vorhergesagt"

Ja super !

Danke

B71

Hallo,

man sollte immer so verfahren:

Ausgabe von Zeit / Datum: per Date()
Speichern von Zeit / Datum: per timestamp ueber time()
Rechnen mit Zeit / Datum: per timestamp ueber time()

Dazu gibt noch die Umwandlung eines lesbaren Datums / Zeit mittels mktime…

und das alles finden man hier: http://www.php.net

@ Torro

DANKE !

Natürlich findet man das bei php.net.

Aber ich oute mich hier gerne also absoluten Super-Laien was PHP angeht und bin hier für solch direkte Hilfestellungen echt dankbar. Mittels der Schnipselchen der Community habe ich für meine Verhältnisse wirklich schon was nettes zusammengebaut und stelle dann fest, dass ich an anderen Basics knallhart „zerschelle“.

Hier in der community gibt es einige PHP-Spezies (die eventuell auch mal so angefangen haben wie ich), die mit 2-4 Codezeilen / einem Wink in die richtige Richtung und einem müden Lächeln Leuten wie mir das Leben maßlos erleichtern und uns überhaupt erst dazu bringen den „nächsten Schritt“ zu machen.

Klar kann man das auch durch ein intensives Selbststudium auf PHP.net erlangen.

Ich bin immer sehr dankbar wenn mir jemand aktiv hilft und hoffe immer, dass auch so rudimentäre Informationen wie die obigen nicht nur mir helfen, wenn Sie denn in der Community dokumentiert sind.

Erfahrene PHP´ler wissen natürlich im Schlaf was in diversen Ecken der Community gemeint ist…aber es gibt eben auch den „Entry Level“ und auch diese Clientel sucht hier aktiv nach Lösungen und Hilfe.

Da ist eine kleine „Schraube“ die einem von Euch PHP Spezies gereicht wird, halt leichter anzuwenden als der gesamte „Schraubenkatalog“.

Mit der Bitte um Verständnis für mein täglich wachsendes Basiswissen und einem fetten Dank für den Support.

Gruss
B71

Hallo zusammen,

hat von Euch jemand zufällig auch aktuell sehr häufige Ausfälle des DWD Wetters im Webfront ?

Ich habe, scheinbar seitdem ich zusätzlich die Unwetterzentrale aktiviert habe, recht häufig die Situation das das Wetter im Webfront nicht angezeigt wird und die Seite schwarz bleibt.

Zusätzlich wird dann das Script der Unwetterzentrale als fehlerhaft angezeigt und in den Meldungen des IP-Symcon clients erscheint dann immer :

Access Violation in php5ts.dll…

Hat das von Euch auch schon jemand beobachten können ?

Gruss
B71

Ja, geht uns genau so … haben auch schon Bug Reports dazu geöffnet …
schließe dich bitte einmal folgendem Thread an … " Arbeitsspeicher nimmt kontinuierlich ab" (kann leider keinen Link senden)

Hallo @ Obi,

na das beruhigt ungemein !!!

Aktueller Status in meinem Webfront: Webfront Wetter zeigt gerade wieder normal an (9:36) und Voila „Unwetterzentrale“ geht manuell ausgeführt wieder, sowie Fehler ist weg.

Dann kurz darauf die unten stehende Fehlermeldung (9:40), die dann aber auch kurz danach wieder von alleine verschwunden ist und unten stehendes Ergebnis anzeigt und kurz darauf wieder die Fehlermeldung präsentiert, die dann auch wieder von alleine verschwindet !

Wobei aktuell das DWD Wetter zu laufen scheint. (Nachtrag 10:34)

Update 11:34: Wieder Fehlermeldung im Unwetterzentrale Script --> DWD Seite im Webfront aufgerufen --> Morgen gewählt --> Anzeige wechselt und Wetter wird angezeigt --> Auf Heute zurück gegangen --> Radarbild anzeigen lassen

–> Unwetterzentrale Script ausgeführt --> KEINE Fehlermeldung !!!

Update 14:20: Wieder Fehlermeldung im Unwetterzentrale Script --> DWD Seite im Webfront aufgerufen --> Morgen gewählt --> Anzeige wechselt und Wetter wird angezeigt --> Auf Heute zurück gegangen --> Radarbild anzeigen lassen

–> Unwetterzentrale Script ausgeführt --> KEINE Fehlermeldung !!!

Update: 15:15: Wieder Fehlermeldung --> Wetteronline.de Seite aufgerufen --> Keine Karte für 15:15 Uhr vorhanden
15:18 Uhr Karte vorhanden --> Fehler weg.

@Obi: Es muss der, ich glaube von Dir, angepasste Zeitrigger für den Abruf sein, der alle 15 Minuten das Bild abholen und interpretieren soll. Findet dieser kein Bild gibt es die angehängte Fehlermeldung im Webfront.

@Paresy
Ich habe also den Verdacht, dass ein in die Leere laufender Download (timeout ?) bei DWD / Wetteronline Folgefehler in der php5ts.dll verursacht und den Webservice „zerschiesst“.

Was meinst Du ?

gruss
B71

Hat einer von euch zufällic heine verion erstellt die die pixel zählt und dann Prozentangaben macht ??
Wenn ja bitte mal posten.

100% von was?
Was sind 100%? Wenn der komplette Bereich Rot ist? oder Dunkelblau?