Hallo
ich bekomme den gleichen Fehler auf meinen Raspi wie Chemicalx in POST 32.
Hat jemand eine Ahnung wieso ?
Danke Tim
Hallo
ich bekomme den gleichen Fehler auf meinen Raspi wie Chemicalx in POST 32.
Hat jemand eine Ahnung wieso ?
Danke Tim
Hallo,
ich habe die doppelten Anführungsstriche durch einfache ersetzt bei ‚bild‘ und ‚-100‘
id=‚bild‘ onmouseout=‚javascript: applyVisibility(„bild“, „-100“);‘></span></a>
versucht mal. ob das hilft.
VG
Frank
Danke geht
Seit dem update auf IPS 5.0 bekomme ich folgende Fehlermeldung:
„Warning: date() expects parameter 2 to be integer, string given in /var/lib/symcon/scripts/31858.ips.php on line 89
Abort Processing during exceed of maximal ErrorCount: date() expects parameter 2 to be integer, string given
Error in Script /var/lib/symcon/scripts/31858.ips.php on Line 89“
Bekomme das Skript nicht angepasst. Hat jemand eine Idee?
Moin,
habe lange nichts mehr „nachgepflegt“ …
Unter 5.0 läuft es aber soweit bei mir …
<?
# ******************************************
# Wettervorhersage / Warnungen aus den Daten des DWD
#
# nach Anregungen aus dem Forum:
# https://www.symcon.de/forum/threads/18782-DWD-Unwetterwarnung-%28WFE-Mail-und-html%29?highlight=dwd+unwetterwarnung+wfe
# https://www.symcon.de/forum/threads/29674-DWD-Wetterwarnungen-JSON-Daten-auswerten
#
# Username: dzvo
# Stand: v0.35 - 11.03.2016
#
# 0.31
# - Grosse Vorschaubilder des aktuellen Wetters eingefuegt (muss noch eventuell nachgearbeitet werden ;-) )
# - Fix VariablenProfil
#
# 0.33
# - Es gibt zusaetzlich Variablen fuer die externe Benutzung:
# - Warnlevel - die Zahl der hoechsten Warnstufe ueber alle Kreise
# - Warnevent - in kurzform zusammengefasste Infos zur Verarbeitung als Pushnachricht
# beide Variablen werden nur auf Aendrung aktualisiert damit nicht jedesmal bei gleichem Inhalt eine Nachricht gesente wird.
#
# 0.35
# - Ueber eine Variable ($warnbilder_anzeigen) definiert ob die Landkreis Warnbilder mit angezeigt werden sollen oder nicht.
#
# 0.36
# - Fehlerbeseitigung, wenn keine Warnmeldungen vorlagen
#
# 0.37
# - weitere Warnungen hinzugefügt
#
# 0.38
# - weitere Warnungen hinzugefügt
#
# Installation
# ------------
# Einfach Ausfuehren, die benoetigten Variablen werden automatisch angelegt.
#
#
# Bekannte Fehler
# ---------------
# Da ich leider keine umfassende Uebersicht der einzelnen definitonen des aktuellen Wetters gefunden habe, kommt es vor das
# bei neuen Wettervorkommnissen ab Zeile 410 / das Array weiter gefuellt werden muss. Gerne pfelge ich diese nach.
# Unter Übersicht unter http://www.dwd.de/DE/wetter/warnungen_aktuell/objekt_einbindung/objekteinbindung.htm gibt es eine Uebersicht
# der von DWD zur Verfuegung gestellen Kreise.
#
# Konfiguration
# -------------
# Hier eine beliebige Anzahl von Warnkreisen eintragen
# Die passenden Regionsnamen findet man unter der Übersichtskarte nach dem ankicken der Region
# http://wettergefahren.de/warnungen/warnsituation.html
#
$region = array ("Hansestadt Hamburg",);
# Anzahl der Warnbilder in einer Zeile
$warnbilder_anzeigen = true;
$warnbilder_tabellenbreite = 715;
$warnbilder_anzahl_je_reihe = 6;
# Im Debug Modus das Script einfach 2 mal hintereinader ausfuehren.
# Dadurch das dass Script nicht über dem Timer ausgeführt wird werden alle Orte / Warnungen ausgewertet, ob z.B. alle Billder geladen werden.
# Wird das Script über den Timer ausgeführt werden nur die eigenen Orte geladen.
$debug = true;
# *** Script Code *******************************
// Datenquelle
$json = file_get_contents("http://www.dwd.de/DWD/warnungen/warnapp/json/warnings.json");
// fals die Daten nicht geladen werden koennen
if( empty($json) || $json == "" ) { goto ende; }
// Erst einmal die Enden Abschneiden
$daten = json_decode(substr($json, 24, strlen($json) - 26 ),TRUE);
// Daten aufloesen
$daten_einzeln = array();
if( !empty($daten['warnings']) ) {
foreach($daten['warnings'] as $eintrag ) {
for ( $i = 0; $i < count($eintrag); $i ++ ) {
$daten_einzeln[] =
array("state" => utf8_decode($eintrag[$i]['state']),
"stateShort" => $eintrag[$i]['stateShort'],
"regionName" => utf8_decode($eintrag[$i]['regionName']),
"description" => utf8_decode($eintrag[$i]['description']),
"startTime" => date("d.m.Y H:i:s", intval(substr($eintrag[$i]['start'], 0, 10))),
"endTime" => date("d.m.Y H:i:s", intval(substr($eintrag[$i]['end'], 0, 10))),
"startUnix" => substr($eintrag[$i]['start'], 0, 10),
"endUnix" => substr($eintrag[$i]['end'], 0, 10),
"headline" => utf8_decode($eintrag[$i]['headline']),
"event" => utf8_decode($eintrag[$i]['event']),
"instruction" => utf8_decode($eintrag[$i]['instruction']),
"altitudeStart" => $eintrag[$i]['altitudeStart'],
"altitudeEnd" => $eintrag[$i]['altitudeEnd'],
"type" => utf8_decode($eintrag[$i]['type']),
"level" => $eintrag[$i]['level']
);
}
}
}
if ($debug && $_IPS['SENDER'] == "Execute" ) {
$region = array ("");
if ($debug && GetValue(CreateVariableByIdent($_IPS['SELF'], "Orte", "Orte", 3)) != "" ) {
$region = explode('"@"', GetValue(CreateVariableByIdent($_IPS['SELF'], "Orte", "Orte", 3)) );
}
}
// gesuchte Daten auslesen
for ($i=0; $i<count($daten_einzeln); $i++) {
// Nachschauen ob die gesuchten Kreise im JSON enthalten sind
if( in_array( $daten_einzeln[$i]["regionName"] , $region) ) {
// Region neu schreiben
$kreise[] = $daten_einzeln[$i];
}
// Debug auf alle Regionen abfragen
if ( $debug ) {
// Region neu schreiben
$orte_export[] = $daten_einzeln[$i]["regionName"];
}
}
// Debug ... alle aktuellen Orte einzeln rausschreiben
if ($debug && GetValue(CreateVariableByIdent($_IPS['SELF'], "Orte", "Orte", 3)) == "" && !empty($daten['warnings']) ) {
$export = "";
$result = array_values(array_unique($orte_export));
for ($x=0; $x< count($result) - 1; $x++) {
$export .= $result[$x] . '"@"';
}
SetValue(CreateVariableByIdent($_IPS['SELF'], "Orte", "Orte", 3), $export );
} else {
// Variable nach Import loeschen
IPS_DeleteVariable(CreateVariableByIdent($_IPS['SELF'], "Orte", "Orte", 3) );
}
// weiter gehts im Normalprogramm
// Array neu sortieren
if ( !empty($kreise) ) {
$kreise = sortArrayByFields( $kreise, array( "level" => SORT_DESC, "type" => SORT_DESC, "event" => SORT_DESC ) );
}
// Warnlevel & Warnevent definieren
$warnlevel0 = 0; $warnlevel1 = 0; $warnlevel2 = 0; $warnlevel3 = 0; $warnlevel4 = 0; $warnlevel5 = 0;
$warnevent = "";
for ($i=0; (!empty($kreise) && $i<count($kreise)); $i++) {
if ($kreise[$i]["level"] == 1 ) {
$warnlevel1++;
$warnevent .= $kreise[$i]["level"] . "." . $kreise[$i]["type"] . " - " . $kreise[$i]["event"] . " - " . $kreise[$i]["regionName"] . "
";
}
if ($kreise[$i]["level"] == 2 ) {
$warnlevel2++;
$warnevent .= $kreise[$i]["level"] . "." . $kreise[$i]["type"] . " - " . $kreise[$i]["event"] . " - " . $kreise[$i]["regionName"] . "
";
}
if ($kreise[$i]["level"] == 3 ) {
$warnlevel3++;
$warnevent .= $kreise[$i]["level"] . "." . $kreise[$i]["type"] . " - " . $kreise[$i]["event"] . " - " . $kreise[$i]["regionName"] . "
";
}
if ($kreise[$i]["level"] == 4 ) {
$warnlevel4++;
$warnevent .= $kreise[$i]["level"] . "." . $kreise[$i]["type"] . " - " . $kreise[$i]["event"] . " - " . $kreise[$i]["regionName"] . "
";
}
if ($kreise[$i]["level"] == 5 ) {
$warnlevel5++;
$warnevent .= $kreise[$i]["level"] . "." . $kreise[$i]["type"] . " - " . $kreise[$i]["event"] . " - " . $kreise[$i]["regionName"] . "
";
}
}
// Warnevent ausgeben.
if ( empty($warnevent) ) { $warnevent = "Es sind keine Warnmeldungen vorhanden."; }
// Warnlevelstufe generieren
if ( $warnlevel0 >= 0 ) { $level = 0; } if ( $warnlevel1 >= 1 ) { $level = 1; } if ( $warnlevel2 >= 1 ) { $level = 2; } if ( $warnlevel3 >= 1 ) { $level = 3; } if ( $warnlevel4 >= 1 ) { $level = 4; } if ( $warnlevel5 >= 1 ) { $level = 5; }
$inhaltkreis = "";
$hoehe = "";
$warnbilderlaender = "";
if ( $warnlevel1 + $warnlevel2 + $warnlevel3 + $warnlevel4 + $warnlevel5 > 0 ) {
for ($i=0; $i<count($kreise); $i++) {
// eigene Zeile fuer die Hoehenangaben
if ( $kreise[$i]['altitudeStart'] != "" ) {
$hoehe = "<tr><td style='padding-left: 5px;'>ab: " . $kreise[$i]['altitudeStart'] . "m Höhe</td></tr>";
}
if ( $kreise[$i]['altitudeEnd'] != "" ) {
$hoehe = "<tr><td style='padding-left: 5px;'>bis zu einer Höhe von: " . $kreise[$i]['altitudeStart'] . "m </td></tr>";
}
$inhaltkreis .= "
<table border='0' width='650px'>
<tr>
<td rowspan='5' style='width: 15px; background-" . farbe($kreise[$i]["level"]) . " '> </td>
<td style='padding-left: 5px; " . farbe($kreise[$i]["level"]) . " ' ><b>" . $kreise[$i]['headline'] . "";
if ($debug && $_IPS['SENDER'] == "Execute" ) {
$inhaltkreis .= " <br>(" . $kreise[$i]["event"] . " - " . $kreise[$i]["state"] . ")";
}
#<tr><td style='padding-left: 5px;' >" . $kreise[$i]["level"] . "<font size='4'>Meldung für " . $kreise[$i]["regionName"] . "</font></td></tr>
$inhaltkreis .= "</b></td>
</tr>
<tr><td style='padding-left: 5px;' ><font size='4'>Meldung für " . $kreise[$i]["regionName"] . "</font></td></tr>
<tr><td style='padding-left: 5px;'>Zeitraum von: " . $kreise[$i]['startTime'] . " bis: " . $kreise[$i]['endTime'] . "
" . $hoehe . "</td></tr>
<tr><td style='padding-left: 5px;'><font size='3'>" . $kreise[$i]['description'] . " </font></td></tr>
</table>
<div style='height: 5px;'> </div>
";
if ($warnbilder_anzeigen) {
$warnbilderlaender .= warnuebersicht($kreise[$i]["state"], $kreise[$i]["event"] );
}
}
} else {
$inhaltkreis .= "
<table border='0' width='650px' >
<tr>
<td rowspan='1' style='width: 15px; background-" . farbe(0) . " '> </td>
<td style='padding-left: 5px; " . farbe(0) . " ' >" . $warnevent . "</td>
</tr>
<tr height='450px'>
<td>
</td>
</tr>
</table>
";
}
$output = "
<script type='text/javascript' >
function applyVisibility(obj_name, new_value) {
document.getElementById(obj_name).style.zindex=new_value;
}
</script>
<style type='text/css'>
a.menue, a.menue:link, a.menue:visited, a.menue:active {
position: relative;
text-decoration: none;
padding: 0px;
margin: 0px;
}
a.menue:hover {
z-index:1000;
background: transparent;
padding: 0px;
margin: 0px;
}
a.menue span {
display: none;
text-decoration: none;
}
a.menue:hover span {
z-index:1;
display: block;
position: absolute;
width:300px; height:133px;
}
</style>
<table border='0' align='center' style='width: " . $warnbilder_tabellenbreite . "px;'>
<tr>
<td>Stand: " . date("d.m.Y", substr($json, 32, 10 )) . " um " . date("H:i:s", substr($json, 32, 10 )) . "
<span style='float: right; widht: 100%; '>Es sind " . ( $warnlevel1 + $warnlevel2 + $warnlevel3 + $warnlevel4 + $warnlevel5) . " Meldungen vorhanden.</span>
</td>
</tr>
<tr>
<td>
<table border='0' width='100%' align='center'>
<tr align='center' >
<td width=20% style='color: #000000; background-" . farbe(1) . " '><b> " . $warnlevel1 . " </b></td>
<td width=20% style='color: #000000; background-" . farbe(2) . " '><b> " . $warnlevel2 . " </b></td>
<td width=20% style='color: #000000; background-" . farbe(3) . " '><b> " . $warnlevel3 . " </b></td>
<td width=20% style='color: #000000; background-" . farbe(4) . " '><b> " . $warnlevel4 . " </b></td>
<td width=20% style='color: #000000; background-" . farbe(5) . " '><b> " . $warnlevel5 . " </b></td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<!---
<div style='background-color: #aaaaaa; height: 200px; '>
http://www.wettergefahren.de/DWD/wetter/radar/Radarfilm_WEB_DL.gif
//-->
<a href='#' class='menue'><img src='http://www.niederschlagsradar.de/image.ashx?type=loop1stunde&jaar=®io=homepage' width='216px' height='200px'>
<span style='top: -100px; left: 70px;'><img src='http://www.niederschlagsradar.de/image.ashx?type=loop1stunde&jaar=®io=homepage' id='bild' onmouseout='javascript: applyVisibility(\"bild\", \"-100\");'></span></a>
<a href='#' class='menue'><img src='https://www.dwd.de/DE/wetter/wetter_weltweit/europa/bildgalerie/wetter_aktuell.jpg?view=nasImage' width='267px' height='200px'>
<span style='top: -100px; left: -260px;'><img src='https://www.dwd.de/DE/wetter/wetter_weltweit/europa/bildgalerie/wetter_aktuell.jpg?view=nasImage'></span></a>
<a href='#' class='menue'><img src='http://www.wettergefahren.de/DWD/wetter/wv_allg/deutschland/bilder/Deutschland.jpg' width='216px' height='200px'>
<span style='top: -100px; left: -420px;'><img src='http://www.wettergefahren.de/DWD/wetter/wv_allg/deutschland/bilder/Deutschland.jpg'></span></a>
<!--
</div>
//-->
</td>
</tr>
<tr>
<td>
" . $warnbilderlaender . "
<div style='height: 5px;'> </div>
</td>
</tr>
<tr>
<td>
$inhaltkreis
</td>
</tr>
</table>
</div>
";
// Varablen anlegen und Werte schreiben
// Aktualisierung
SetValue(CreateVariableByIdent($_IPS['SELF'], "Datenbestand", "Datenbestand", 3), date("d.m.Y H:i:s", substr($json, 32, 10 )) );
// Webfront Output
SetValue(CreateVariableByIdent($_IPS['SELF'], "WFOutput", "WFOutput", 3), $output );
IPS_SetVariableCustomProfile(CreateVariableByIdent($_IPS['SELF'], "WFOutput", "WFOutput", 3), "~HTMLBox");
// Level & Varablenprofil
$id_level = CreateVariableByIdent($_IPS['SELF'], "Warnlevel", "Warnlevel", 1);
// Profil anlegen
if (IPS_VariableProfileExists("Script.WetterWarnstatus")) {
//altes Pofil loeschen und neu anlegen
IPS_DeleteVariableProfile("Script.WetterWarnstatus");
variablenprofil("Script.WetterWarnstatus");
IPS_SetVariableCustomProfile( CreateVariableByIdent($_IPS['SELF'], "Warnlevel", "Warnlevel", 1) , "Script.WetterWarnstatus");
} else {
variablenprofil("Script.WetterWarnstatus");
IPS_SetVariableCustomProfile( CreateVariableByIdent($_IPS['SELF'], "Warnlevel", "Warnlevel", 1) , "Script.WetterWarnstatus");
}
if ( GetValue($id_level) != $level ) {
SetValue(CreateVariableByIdent($_IPS['SELF'], "Warnlevel", "Warnlevel", 1), $level );
}
//Warnevent
$id_warnevent = CreateVariableByIdent($_IPS['SELF'], "Warnevent", "Warnevent", 3);
if( GetValue($id_warnevent) != $warnevent) {
SetValue(CreateVariableByIdent($_IPS['SELF'], "Warnevent", "Warnevent", 3), $warnevent );
IPS_SetVariableCustomProfile(CreateVariableByIdent($_IPS['SELF'], "Warnevent", "Warnevent", 3), "~TextBox");
}
function farbe($warnlevel) {
$warnfarbe = array("color: #C5E566; ", // Es ist keine amtliche Warnung aktiv (Grün)
"color: #E0E0E0; background-image: repeating-linear-gradient(135deg, transparent, transparent 5px, rgba(229,57,57,.8) 5px, rgba(229,57,57,.8) 8px); ", // Vorabinformation Unwetter (schraffiert)
"color: #FFFF00; ", // Amtliche Wetterwarnung (Gelb)
"color: #FA9600; ", // Amtliche Warnung vor markantem Wetter (Orange/Ocker)
"color: #E53935; ", // Amtliche Unwetterwarnung (Rot)
"color: #AF0064; ", // Amtliche Warnung vor extremem Unwetter (Dunkelrot)
"color: #FE68FE; ", // Hitze- oder UV-Warnung (Violett)
"",
"",
"",
"color: #cc99ff; ",
"",
"",
"",
"",
"",
"",
"",
"",
"",
// aus unerfindlichen Gründen ist der UV Index 20
"color: #fb66fc; ", // Hitze- oder UV-Warnung (Violett)
);
return $warnfarbe[$warnlevel];
}
function warnuebersicht($bundesland, $warnevent ) {
global $warnbilder_anzahl_je_reihe;
global $warnbilder_tabellenbreite;
$bl = array ("Baden-Württemberg" => "baw", "Bayern" => "bay", "Berlin" => "bbb", "Brandenburg" => "bbb", "Bremen" => "nib", "Hamburg" => "shh", "Hessen" => "hes", "Mecklenburg-Vorpommern" => "mvp", "Niedersachsen" => "nib", "Nordrhein-Westfalen" => "nrw", "Rheinland-Pfalz" => "rps", "Saarland" => "rps", "Sachsen" => "sac", "Sachsen-Anhalt" => "saa", "Schleswig-Holstein" => "shh", "Thüringen" => "thu",
"baden-w?rttemberg" => "baw", "bayern" => "bay", "berlin" => "bbb", "brandenburg" => "bbb", "bremen" => "nib", "hamburg" => "shh", "hessen" => "hes", "mecklenburg-vorpommern" => "mvp", "niedersachsen" => "nib", "nordrhein-westfalen" => "nrw", "rheinland-pfalz" => "rps", "saarland" => "rps", "sachsen" => "sac", "sachsen-anhalt" => "saa", "schleswig-holstein" => "shh", "th?ringen" => "thu");
$wk = array (
// Darauf achten das alles klein geschrieben ist - gegebenen Fall ist die Liste zu ergaenzen
// Übersicht unter http://www.dwd.de/DE/wetter/warnungen_aktuell/objekt_einbindung/objekteinbindung.htm
"gewitter" => "gewitter",
"starkregen" => "regen",
"dauerregen" => "regen",
"leichter schneefall" => "schnee",
"schneefall" => "schnee",
"schneeverwehung" => "schnee",
"wind" => "sturm",
"böen" => "sturm",
"b?en" => "sturm",
"extreme orkanb?en" => "sturm",
"windböen" => "sturm",
"windb?en" => "sturm",
"starkwind" => "sturm",
"sturm" => "sturm",
"sturmböen" => "sturm",
"sturmb?en" => "sturm",
"schwere sturmböen" => "sturm",
"schwere sturmb?en" => "sturm",
"orkanböen" => "sturm",
"orkanb?en" => "sturm",
"orkan" => "sturm",
"orkanartige böen" => "sturm",
"orkanartige b?en" => "sturm",
"starkes gewitter" => "sturm",
"starkes gewitter" => "gewitter",
"ergiebiger dauerregen" => "regen",
"STARKES GEWITTER" => "sturm",
"schweres gewitter mit extrem heftigem starkregen und hagel" => "sturm",
"schweres gewitter mit heftigem starkregen und hagel" => "sturm",
"SCHWERES GEWITTER mit HEFTIGEM STARKREGEN und HAGEL" => "sturm",
"nebel" => "nebel",
"frost" => "frost",
"strenger frost" => "frost",
"glätte" => "glatteis",
"gl?tte" => "glatteis",
"glatteis" => "glatteis",
"schneefall und schneeverwehung" => "schnee",
"schneeverwehung" => "schnee",
"schneefall" => "schnee",
"leichter schneefall" => "schnee",
"tauwetter" => "tauwetter",
"hitze" => "hitze",
"uv-index" => "uv");
$daten ="";
#$daten .= "<div><img src='http://www.dwd.de/DWD/warnungen/warnapp/json/warning_map_" . $bl[$bundesland] . "_" . $wk[mb_strtolower($warnevent)] . ".png'></div>
";
$daten .= "<img src='http://www.dwd.de/DWD/warnungen/warnapp/json/warning_map_" . $bl[strtolower_utf8($bundesland)] . "_" . $wk[strtolower_utf8($warnevent)] . ".png' width='" . ( ($warnbilder_tabellenbreite - 3) / $warnbilder_anzahl_je_reihe) . "px' height='". ((($warnbilder_tabellenbreite - 3) / $warnbilder_anzahl_je_reihe) * 1.25) . "px' ></div>";
return $daten;
}
function strtolower_utf8($string) {
#setlocale(LC_CTYPE, 'de_DE@euro', 'de_DE', 'de', 'ge');
$result = utf8_decode($string);
$result = strtolower($result);
$result = utf8_encode($result);
return $result;
}
function toAscii($str) {
$clean = preg_replace("/[^a-zA-Z0-9\/_|+ -]/", '', $str);
$clean = strtolower(trim($clean, '-'));
$clean = preg_replace("/[\/_|+ -]+/", '-', $clean);
return $clean;
}
function CreateVariableByIdent($id, $ident, $name, $type)
{
$vid = @IPS_GetObjectIDByIdent($ident, $id);
if($vid === false)
{
$vid = IPS_CreateVariable($type);
IPS_SetParent($vid, $id);
IPS_SetName($vid, $name);
IPS_SetIdent($vid, $ident);
}
return $vid;
}
function sortArrayByFields($arr, $fields)
{
$sortFields = array();
$args = array();
foreach ($arr as $key => $row) {
foreach ($fields as $field => $order) {
$sortFields[$field][$key] = $row[$field];
}
}
foreach ($fields as $field => $order) {
$args[] = $sortFields[$field];
if (is_array($order)) {
foreach ($order as $pt) {
$args[$pt];
}
} else {
$args[] = $order;
}
}
$args[] = &$arr;
call_user_func_array('array_multisort', $args);
return $arr;
}
function variablenprofil ($profilname) {
IPS_CreateVariableProfile($profilname, 1);
IPS_SetVariableProfileValues($profilname, 0, 5, 1);
IPS_SetVariableProfileAssociation($profilname, 0, "Level 0", "", 0xC5E566);
IPS_SetVariableProfileAssociation($profilname, 1, "Level 1", "", 0xE0E0E0);
IPS_SetVariableProfileAssociation($profilname, 2, "Level 2", "", 0xFFFF00);
IPS_SetVariableProfileAssociation($profilname, 3, "Level 3", "", 0xFA9600);
IPS_SetVariableProfileAssociation($profilname, 4, "Level 4", "", 0xE53935);
IPS_SetVariableProfileAssociation($profilname, 5, "Level 5", "", 0xAF0064);
IPS_SetVariableProfileAssociation($profilname, 5, "Level 6", "", 0xFE68FE);
}
// Script Timer installieren
IPS_SetScriptTimer($IPS_SELF, 600);
ende:
?>
Grüße
Thomas
Moin Thomas,
das ist relativ unwahrscheinlich, da du in Zeile 586 einen Fehler hast ;), deine ist die „Uralt“-Schreibweise.
IPS_SetScriptTimer($_IPS['SELF'], 600);
Hallo Thomas,
besten Dank. Habe das letzte Skript nochmals eingefügt, jetzt ist der Fehler weg
Anbei noch vier Ergänzungen für den Schwarzwald :
„schweresgewittermitorkanb?en“=>„sturm“,
"starkerschneefallundschneeverwehung=>„schnee“,
"starkeschneeverwehung=>„schnee“,
"starkestauwetter=>„tauwetter“,
Gruß Tobias
Hallo Gemeinde,
ich bekomme beim aktuellen Script ein SSL-Problem:
[i]Warning: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages:
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol in /Library/Application Support/Symcon/scripts/53223.ips.php on line 72
Warning: file_get_contents(): Failed to enable crypto in /Library/Application Support/Symcon/scripts/53223.ips.php on line 72
Warning: file_get_contents(404 Not Found failed to open stream: operation failed in /Library/Application Support/Symcon/scripts/53223.ips.php on line 72[/i]
Ist das ein Fehler im Script?
Hat der DWD irgendwas an seinem SSL-Zugang geändert?
Ein Zertifikat-Problem?
Muss ich zusätzlich noch etwas installieren?
(Achtung Anfänger)
Ich stehe im Moment etwas auf’m Schlauch…
Vielen Dank und viele Grüße,
Palhuber
Seit dem Update auf IPS 5.0 kommt folgende Warnmeldung:
13.08.2018 22:08:51 | ScriptEngine | Ergebnis für Ereignis 39413
<br />
<b>Warning</b>: date() expects parameter 2 to be integer, string given in <b>/var/lib/symcon/scripts/14295.ips.php</b> on line <b>89</b><br />
<br />
Hallo alle,
bekomme mit 5.0 auch diese Warnmeldung:
<br />
<b>Warning</b>: date() expects parameter 2 to be integer, string given in <b>/var/lib/symcon/scripts/22558.ips.php</b> on line <b>79</b><br />
<br />
Falls ansonsten alles läuft und in der entsprechenden string-Variable der korrekte Wert als Text steht, dann sollte dieser einfach noch durch intval (PHP: intval - Manual) in einen Integer umgewandelt werden.
Funktioniert. Danke !
Hallo Zusammen,
ich wohne in München und habe ein Problem und bräuchte eure Hilfe.
Grundsätzlich läuft das Script.
Am Anfang gab es keine Wetterwarnungen, obwohl ich über DWD Wetterwarnungen gesehen habe.
Nach etwas Recherche habe ich herausbekommen, dass in Zeile 89 „utf8_decode“ entfernen muss, damit das „ü“ in München erkannt wird.
Seitdem bekomme ich auch die Warnmeldungen angezeigt. Allerdings bekomme ich jede Warnmeldung zweimal angezeigt.
Kann mir jemand sagen, wie ich diesen „Schönheitsfehler“ umgehen kann?
Danke für eure Unterstützung.
Viele Grüße Alex
Hi,
wie hast du das denn angepaßt:
„endTime“ => date(„d.m.Y H:i:s“, substr($eintrag[$i][‚end‘], 0, 10)),
mit dem intval ? Ich verstehe das nicht.
LG Izack
Hatte ich auch mal
$Test=intval(date("d.m.Y H:i:s"));
.......... bis zu der angemeckerten Zeile, die Zeile mit der Variable $Test einsetzen
"endTime" => $Test, substr($eintrag[$i]['end'], 0, 10),
Am Schluß wird er noch über $IPS_Selv meckern, dafür die ScriptID einsetzen.
Und Zeile 63 würde ich noch auf false setzen, wenn das Script sonst läuft
Gruß Helmut
Vielen Dank lieber Helmut,
es hat super funktioniert.
LG Izack
Hallo Zusammen,
nach dem wir hier in Dortmund einwandig mit Unwetter zu kämpfen haben bin ich mal im Forum auf die Suche gegangen um sich Unwetterwarnungen anzeigen zu lassen. Dabei bin ich hier auf dieses Skript gestoßen. Ich habe das Skript von Post 37 genommen. Soweit läuft alles nur das er mir alle Warnmeldungen anzeigt die aktuelle sind und nicht nur die von Dortmund.
Weiß einer wie man sich nur die von Dortmund anzeigen lassen kann ?
Gruß Stephan
Nimm das Unwetterwarnung Modul aus dem Store, das ist aktueller und da bekommst du sehr ähnliche Daten ;-).
Hi Ralf,
ich nach ein wenig suchen habe ich es Gefunden. Habe immer nach „Unwetter“ gesucht und mir wurde immer nur das Modul „Unwetterzentrale“ angezeigt. Das war irgendwie nicht das richtige.
Ist irgendwie schon verwirrend das Module im Beta Status nicht sofort angezeigt werden.
Auf jeden fall funktioniert das auf anhieb ohne Probleme.
Danke noch mal für den Tipp.
Gruß Stephan
Die Suche ist leider manchmal sehr gewöhnungsbedürftig.