Ankündigung

Einklappen
Keine Ankündigung bisher.

Weather.current mit eigener Temperatur

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Weather.current mit eigener Temperatur

    Hallo, ich habe da mal eine kurze Frage:
    Gibt es eine Möglichkeit dem Widget Weather.current die Temperatur/Luftfeuchte von der eigenen Wetterstation mitzuteilen?
    Also einzelne Parameter aus dem Online Wetter ersetzen mit eigenen Items.
    Hintergrund ist, ich habe eine Wetterstation die mir die Luftfeuchte und Temperatur ausgibt. Diese Werte würde ich jetzt gerne auf meiner Startseite anstatt des Online Wetters angezeigt bekommen. Jedoch würde ich die Winddaten und das Aussehen mit den Bildern aus dem Onlinewetter gerne nutzen.

    Hat das eventuell schon jemand umgesetzt?


    Grüße, Marc
    Zuletzt geändert von schuma; 27.08.2019, 18:24.

    #2
    Hallo,

    gibt es hierzu vielleicht jemand der so was schon probiert hat? Ich bin auf der Suche nach genau dieser Funktion. Ist das einfach machbar über Tips wäre ich dankbar.

    Gruß Marco

    Kommentar


      #3
      Ich kenne keine fertige Lösung. Es sollte aber im Sinne DIY nicht allzu schwer sein, eine zu erstellen.
      Dazu in widgets/weather.html zwei items für Temperatur und Feuchtigkeit in die Parameterliste vom Makro „current“ anlegen und diese im Code als "data-item" übergeben. Wie das geht, kann man sich in den vielen basic.xyz Makros ansehen. Das Widget weather.current muss dann natürlich mit den entsprechenden shNG-items aufgerufen werden.

      Die Items kommen dann in widgets/weather.js im zugehörigen Makro "sv.weather_current" als response[0] und response[1] an. Wenn diese jeweils nicht undefined sind, gibt man sie anstelle data.current.temp und data.current.more aus.

      Gruß
      Wolfram

      Kommentar


        #4
        Hallo Wolfram,

        hatte mir das schon angesehen. In der weather.html habe ich die Parameter des macro current erweitert."{% macro current(id, temperature, location, repeat) %}"
        Ich verstehe nicht ganz wie dieser Parameter an sv.weather_current übergeben werden muss. In sv.weather_current wir ja das JSON Objekt vom Webservice aufgebaut. Ich weiß nicht wie ich an den Parameter von weather.html herankomme.

        Gruß
        Marco

        Kommentar


          #5
          Zitat von z1marco Beitrag anzeigen
          Ich verstehe nicht ganz wie dieser Parameter an sv.weather_current übergeben werden muss.
          Das habe ich oben geschrieben. In der weather.html z.B. vor dem data-repeat ein
          Code:
          data-item="{{ temperature }}"
          angeben (und ggfls.weitere items, mit Komma getrennt). Im Übrigen würde ich neue Parameter immer hinten anfügen, damit bestehende Seiten weiter funktionieren, bei denen der neue Parameter nicht angegeben wird.

          Im sv.weather_current (weather.js) kommen die Parameter aus data-item in einem Array "response[ ]" an. In der _repeat-Methode muss "function()" durch "function(response)" ersetzt werden. Alles weitere steht oben. Nähere Infos zum Erstellen eigener Widgets sind im github-Wiki von smartVISU.
          Die Daten aus den items werden dann immer mit den repeat-Zyklen aktualisiert. Wenn Du diese ständig aktualisiert haben möchtest, muss noch eine _update-Methode hinzugefügt werden, die ohne den getJSON-Aufruf auskommt, aber die aktualisierten items ausgibt.
          Code:
          this.element.children('.temp').html(response[0]+"°C");
          Mehr kann ich aktuell nicht liefern, da ich zur Zeit andere, größere Baustellen habe und IMHO die Hinweise für eine DIY-Lösung ausreichen sollten. Langfristig steht das Thema auf der to-do Liste, aber dann muss das allgemeingültiger umgesetzt und auch mit den Einheiten in den language files verknüpft werden.

          Gruß
          Wolfram

          Kommentar


            #6
            Danke Wolfram für Deine Tips. Ich werde das mal versuchen.

            Kommentar

            Lädt...
            X