Wetterwarnung

Hallo B71,

ich hatte auch das Problem. Anscheinend ist Wetteronline mit den 6Minuten nach der viertel-Stunde nicht mehr so pünktlich.:frowning:
Ich habe die Zeit auf 10minuten erhöht.

Ändere mal folgende Zeile:


$offset = (integer)date("s") + ((integer)date("i") % 15) * 60 - 600 ; 600sec nach einer vollen viertel Stunde

Gruß
Christian

Hallo Christian,

ich probiere das mal…dachte mir das auch irgendwie schon…wusste nur nicht wo ich ansetzen sollte.

Gruss
B71

@ Thomas

Seit wann ist das Script denn auf DWD umgeschrieben ?

Das habe ich wohl irgendwie verpasst…ich habe das Script seit über 1 Jahr im Einsatz und danach nie wieder angefasst.

Ich habe mal das Script aus dem 1. Post geholt und dieses hat tatsächlich DWD als Basis.

Reinkopiert, Regions GIF geändert und siehe:

http://www.dwd.de/bvbw/generator/Sites/DWDWWW/Content/Oeffentlichkeit/WV/WV11/Warnungen/Wetter__Aktuell/Regionenwetter/Radarbilder__Reg/Suedwest__default,property=default.jpg

Warning: imagecreatefromgif() [function.imagecreatefromgif]: ‚C:\IP-Symcon2\media\unwetter.gif‘ is not a valid GIF file in C:\IP-Symcon2\scripts\14870.ips.php on line 25

Warning: imagecolorresolve() expects parameter 1 to be resource, boolean given in C:\IP-Symcon2\scripts\14870.ips.php on line 27

Warning: imagecolorresolve() expects parameter 1 to be resource, boolean given in C:\IP-Symcon2\scripts\14870.ips.php on line 28

Warning: imagecolorresolve() expects parameter 1 to be resource, boolean given in C:\IP-Symcon2\scripts\14870.ips.php on line 29

Gruss
B71

Moin zusammen,

wo legt Ihr bei der Variante DWD Wetterscript mit der Basis der DWD Unwetterstati jetzt irgendwelche Schwellwerte der „Warnungsschwere“ vom DWD Dienst für die eigene Region.

Mir rechnet das Ding immer irgendwelche Zahlen für $Warnstufe aus, aber im Vergleich zu den Wetteronline Regenpixeln ist das irgendwie nicht so sinnig.

Beispiel: BW ist momentan durchgehend GELB und ein Wert von 723 wird ausgespuckt…nur wie macht man daraus dann sinnvolle Warnstufen im Ausgabebereich des Scriptes um die Variable zu setzen.
Wetteronline Pixel stehen aktuell jedoch auf NULL…

Klar DWD Infos und Regenpixel von WO sind nicht vergleichbar…jedoch wäre eine Kombination beider Informationen (aktuell Regen und Wetterwarnungen) doch wirklich ne nette Sache…nur wie interpretieren…

Gruss
B71

Das die Auswertung nicht so sinnvoll ist, hat Steiner bereits mitgeteilt ;).

In dem du die Detailseite (Text) der Wetterwarnung im Script auswertest, nicht mit den WWW-Reader. Ich stelle meinen Code heute abend ein.

Danke.

Das von MST hatte ich gelesen.
Aber es war so „knackig“ formuliert, dass ich es beim besten Willen nicht mit den Ausgaben des Scriptes in Einklang bringen konnte.

Manchmal übersieht man ja etwas in den etwas längeren Diskussionen und daher hatte ich die Frage nochmal eingestellt.

Gruss & Danke für den PHP Code vorab.
B71

Hier mein Script zur Auswertung der Wetterwarnung beim DWD:

<?
$id_warn = 54321 /*[.Wetter\Unwetterzentrale\UnwetterWarnungHannover\UnwetterWarnungAktiv]*/; // BoolVar
$id_text = 12345 /*[.Wetter\Unwetterzentrale\UnwetterWarnungHannover\UnwetterWarnungHannover]*/; // StringVar

// URL zeigt auf die detailierte Warnung des gewünschten Ortes (anklicken in der Warnkarte
$s = file_get_contents( "http://www.dwd.de/dyn/app/ws/html/reports/HAN_warning_de.html#WS_ANCHOR_0" );
$warnung = "";
if( empty($s) )
   {  IPS_LogMessage( IPS_GetName($IPS_SELF), "can't get url content");   return;  }
$a = explode( "
", $s);
$w = preg_grep( '#</p>#', $a);

while ( list ( $key, $val ) = each ( $w ) )
{
	$current = formatText( str_replace("</p>","",$val) );
	if ( substr_count( $current, "Amtliche " )) {
	   $current = '<strong>' . $current . '</strong>';
	}
	if ( substr_count( $current, "am:" )) {
	   $current .= '<br />';
	}
	// Um Platz zu sparen, die Ausgabe einiger Zeilen unterdrücken
	switch ($current) {
		case "für die Region Hannover ":
		break;
		case "DWD / RZ Hamburg ":
			$warnung .= '---<br />';
		break;
		default:
			$warnung .= $current . '<br />';
		break;
	}
}

if (empty($warnung)) {
   $warnung = "Es sind keine Warnungen für Hannover vorhanden.";
	SetValueBoolean($id_warn, false);
} else {
	SetValueBoolean($id_warn, true);
}

$browser='
<html>
<head>
<style type="text/css" media="screen">
body  {  background-color:#D4D0C8;
			font-family: Arial;
			font-size:14px;
         margin:0;
         padding:10px 5px 0px 5px;
         }

div {    margin:0;
         padding:0px 0px 0px 0px;
         }
</style>
</head>
<body scroll="no"><div>'
.$warnung.
'</div>
</body>
</html>';
SetValueString($id_text, $browser);


// Textformatierung
function formatText($text)
{
    $text = html_entity_decode($text);
    $text = str_replace("ö", "ö", $text);
    $text = str_replace("Ãœ", "Ü", $text);
    $text = str_replace("ü", "ü", $text);
    $text = str_replace("ä", "ä", $text);
    $text = str_replace("ß", "ß", $text);
    $text = str_replace("&ndash;", "-", $text);
    $text = str_replace('&#039;', "`", $text);
    $text = str_replace("&", "&", $text);
    $text = str_replace("Ö", "Ö", $text);
    $text = str_replace("„", "\"", $text);
    $text = str_replace("“", "\"", $text);
    $text = str_replace("–", "-", $text);
    $text = str_replace("„", "\"", $text);
    $text = str_replace("“", "\"", $text);
    $text = str_replace("„", "\"", $text);
    $text = str_replace("–", "-", $text);
    $text = str_replace("–", "-", $text);
    $text = str_replace("Ä", "Ä", $text);
    return $text;
}

?&gt;

Es müssen die IDs und eventuelle Filterzeilen angepasst werden. Außerdem muss die korrekte URL für den gewünschten Ort eingetragen werden.

Hallo Ralf,

prima Script - hat soweit auch alles funktioniert (auch für Raum Potsdam/Berlin …).

Frage - wie stellst Du den String dar (im WebFront)? mittels Textbox???
(es sind ja noch die html-Tags drin, die werden aber nicht berücksichtigt, zumindestens habe ich das noch nicht hinbekommen)

vielen Dank im Voraus

Tilo

Moin Tilo,

Ich nutze das Dashboard und zeige die Variable dort im Webbrowser-Element an. Und um die Anzeige ordentlich zu strukturieren, nutze ich den HTML Code.

Hallo Ralph,

hatte ich mir doch gleich gedacht :slight_smile:

dann muss ich wohl das Skript entsprechend anpassen (für das WebFront)

Danke nochmals

Tilo

Ich habe auf der Seite:
Meteox.de - Europisches NiederschlagsRadar
eine Vorhersage für die Regenentwicklung entdeckt. Dies ist hier bis zu 3 Stunden möglich. Also ein Radarbild der Zukunft.
Leider gibt es dabei zwei Haken. Das Bild geht nicht auf die Region sondern sogar über die Grenzen Deutschlands hinweg. Und vor allem zeigt das Radar die Regenmengen in fast allen Farbverläufen. Von daher funktioniert leider die Beschränkung auf einige wenige Farben für die Auswertung nicht mehr.
Sollte jemand eine Idee dazu haben würde ich mich über den einen oder anderen Hinweis freuen.

Klick mal in die Karte, ungefähr dort, wo dein Ort ist ;). Die Detailkarte ist als iframe eingebunden.

Bei mir ergibt sich für Hannover dieses Bild.

Auswerten klappt damit scheinbar nicht, da nur der Regen als Grafik über die Google Maps gelegt wird.

Schau dir mal die Uhrzeiten an ! In der Detailansicht ist es keine Vorschau sondern nur die gemessenen Werte !

Stimmt, gemein :eek:.

Dann müssten zwei GIFs überlagert werden:

http://www.meteox.de/images.aspx?jaar=-3&voor=&soort=exp&c=&n=&tijdid=2010461751

Allerdings sieht die „tijdid“ nach Datum/Uhrzeit aus und das wird man schlecht generieren können.

Guten Abend,

das wird schon gehen. Die Frage ist, wie die Auswertung funktioniert !
Hier sind leider alle Farbwerte erlaubt. Das bedeutet eine andere Auswertemethode muss her.

tach,

geht mal auf niederschlagsradar.de … da ist das ähnlich, funktioniert aber einwandfrei …

gruß
chris

Hallo zusammen,

ja klar , es sieht gut aus. Aber die Auswertung dieser Vorhersage ist das Problem. Also das Zählen der Pixel. Zumal es eine Vorhersage nicht im Zoommodus gibt.

Habt Ihr hier schon was neues? Am besten für Webfronend?

Gruss
Frank

Nein leider nicht !
Bin auch noch auf der Suche.

Das ist aber schade :frowning: