Wunderground Modul [ALT]

Ich habe mich auch mal an das WU Wetter gewagt. Ein schöner Ersatz zur ‚Eigenen Wetterseite‘ Leider habe ich mit Fonzo’s Darstellung der Schrift und der Icons Probleme.

Da Marcels Variante funktioniert muss der Icon Pfad richtig sein. Die css wird auch gefunden da Farbänderungen angezeigt werden.
Wo kann es noch haken?

In welchem Verzeichnis liegen denn die Grafiken und wie ist der Pfad in der HTMLBox angegeben?

Wie in #8 als Beispiel vorgesehen also direkt von Wunderground.
Edit:

und wie ist der Pfad in der HTMLBox angegeben?

Wie meinst du das? Du holst die doch auch den Pfad aus dem Modul, oder?

Ich weis selber nicht was ich damals gepostet hatte ;). Ich hab noch mal reingeschaut, das müsste ich in der Tat noch anpassen das das ausgelesen wird wenn das automatisch zugewiesen werden soll. Zur Zeit steht im Skript das so drinnen das das Icon lokal geladen wird.


 <figure class="cap-bot"><img src="'.IPS_IP.$data['Icon'].'" alt="Wettericon"><figcaption>'.$data['Text'].'</figcaption></figure>

Schau mal in dem Fall nach was

var_dump($data['Icon']);

ausgibt und ob das wirklich zu dem Icon Pfad führt.

Daher musst Du diesen gegebenenfalls noch im Skript anpassen falls die Icons nicht lokal liegen oder in einem anderen Verzeichnis liegen. Ich muss das Skript in der Hinsicht wohl noch mal anpassen das der Icon Pfad immer greift.

var_dump($data[‚Icon‘]);

ergibt …undefinierte Variable…
Ich werde mal eigene Icons lokal zusammenstellen.

Hallo Heidewinkler,

ich habe Fonzos Code ein bisschen abgewandelt und in eine Externen Seite gepackt. Diese binde ich dann mittels IPS ein

https://www.symcon.de/service/dokumentation/komponenten/visualisierungen/webfront/struktur/externe-seite/

Das ganze sieht dann so aus

Gruß Marcel

css.zip (2.18 KB)

Hallo Marcel,
rufst du die index.php noch mit einem anderen Skript auf oder fehlen die Funktionen in der .zip?
So wird

Fatal error: Call to undefined function isToday() in C:\IP-Symcon\webfront\user\WUWetter\index.php on line 45

moniert.

Hallo Heidewinkler,

ich habe bei mir ein paar Funktionen in einem extra Skript, die per Autoinclude eingefügt werden.
So muss ich meine Funktionen nur an einer Stelle ändern und nicht immer alles Skripte durchsuchen.

einfach das ans ende der php Datei kopieren.


function isToday($time)
    {
        $begin = mktime(0, 0, 0);
        $end = mktime(23, 59, 59);
        // check if given time is between begin and end
        if($time >= $begin && $time <= $end)
            return true;
        else
            return false;
    }

dann sollte es gehen.

oder nochmal neu runterladen

Gruß Marcel

css.zip (2.34 KB)

Danke Marcel, Modul ist Top Arbeit.
Wobei mir bei der Vorschau der nächsten Tage Min/Max Temperatur besser als gefühlte Temperatur gefallen würde.

Leider habe ich keine Ahnung von HTML. Daher gleich eine Frage zur Formatierung. In der css kann man das Icon unter
.picture{…width: 50px;…}
verkleinern. Wie erreicht man das es mittig von
.Rechteck
bleibt?

Hat jemand einen guten Link zu ‚HTML für Anfänger‘?

W3Schools Online Web Tutorials
SELFHTML-Wiki
Learn to code | Codecademy

Es wird so langsam. Die Icons bekommt man mittig mit
.picture{

display: block;
margin: 0 auto;

}
in der css.

Zu Marcels Modul habe ich noch eine Frage. Wie wird Text in [Text] gebildet?
Wenn ich mit print_r (WD_Weathernextdays(ID)); mir die Ausgabe der nächsten Tage anschaue bekomme ich: Siehe Bild


In [Text] steht mal die Höchsttemperatur mal die Tiefst. Und die Temperaturen stimmen auch nicht mit mit [TempHigh] und [TempLow] überein.

PS: Und eine Allgemeine Frage: wie bekommt man so eine Array Ausgabe per Drag und Drop hier rein?

Hallo,

der Text wird so von der Wunderground API übergeben.
Somit habe ich keinen Einfluss auf den Text.

https://www.wunderground.com/weather/api/d/docs?d=data/forecast

Um hier PHP Code zu posten einfach oben im Editor auf PHP-Code einfügen klicken

Gruß
Marcel

Na dann werde ich den Text in der API mal anschauen. So bringt er nicht wirklich was.

Wie man den Arraytext hier rein bekommt ist mir klar. Wie bekomme ich ihn aber aus IPS Raus?

So bekommst du den Text raus

$Ausgabe = WD_Weathernextdays(ID);
Echo  $Ausgabe [0]["Text"];
 

Ich glaube wir reden an einander vorbei. Wie bekomme ich den angezeigten Text in die Zwischenablage um ihn hier darstellen zu können.

Texte aus Windows-MessageBoxen kann man (fast immer) mit STRG+c in die Zwischenablage kopieren.
Michael

Ja danke Michael. So geht es. :slight_smile:

Hallo Marcel
meine Wetterstation ist leider im Sommer kaputt gegangen. Da kam dein Modul gerade recht. :slight_smile: Vielen Dank dafür.

Ich habe zwei kleine Probleme:

  1. Ich bekomme sehr schankende Werte von Wonderground. Die Temperatur springt z.B. z.Z. von 7 auf 15 °C. Das ist auch beim Luftdruck so. Ist mir schon klar, dass diese Werte von Wundergound so bereit gestellt werden. Ich habe auch schon andere Stationen probiert, leider gibt es hier im Umkreis nur Netatmo :rolleyes:, und da habe ich den selben Effekt. Siehst du eine Möglichkeit die Werte vor dem Schreiben auf Plausibilität zu prüfen?

  2. Im Logfile habe ich bei jeder Abfrage ca. 2000 Zeilen der Art:


<br /><b>Warning</b>:  Variabletyp stimmt nicht überein in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>364</b><br /><br /><b>Warning</b>:  Variabletyp stimmt nicht überein in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>365</b><br /><br /><b>Notice</b>:  Undefined property: stdClass::$current_observation in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>114</b><br /><br /><b>Notice</b>:  Trying to get property of non-object in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>114</b><br /><br /><b>Notice</b>:  Undefined property: stdClass::$current_observation in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>115</b><br /><br /><b>Notice</b>:  Trying to get property of non-object in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>115</b><br /><br /><b>Notice</b>:  Undefined property: stdClass::$current_observation in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>116</b><br /><br /><b>Notice</b>:  Trying to get property of non-object in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>116</b><br /><br /><b>Notice</b>:  Undefined property: stdClass::$current_observation in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>117</b><br /><br /><b>Notice</b>:  Trying to get property of non-object in <b>C:\IP-Symcon\modules\Wunderground\Wunderground\module.php</b> on line <b>117</b><br />

Liegt das daran, dass die Stationen nicht alle Werte liefern? Kann man das irgendwie abschalten?

Hallo Norman,

Ich habe gerade mal bei mir in die Logs geschaut und habe dasselbe Problem.

Die Datensätze sind auf der Wunderground Seite vorhanden. Auch zu den Zeitpunkten wo der Fehler auftritt.

Ich muss jetzt nur noch herausfinden ob die Json Abfrage manchmal fehlschlägt oder ob Wunderground aus was für einen Grund auch immer, einen Leeren Json String liefert.

Wenn ich den Fehler gefunden habe gibt es ein Update

Gruß

Hi zusammen,

ich bekomme die „grfische“ Ausgabe einfach nicht zum laufen.

Kann es sein, dass ich noch andere Scripte anlegen muss? Ich habe das Gefühl die Modul/Objekt-IDs die ich nutze sind falsch:

aktuell erhalte ich folgende Fehlermeldung:

  1. muss ich zwingend auf das „Enter-Symbol“ klicken - die Grafiken öffnen sich dann im PopUp (eigentlich möchte ich sie permanent angezeigt haben)
  2. sieht es dann so aus:

Gruß Steffan