Ankündigung

Einklappen
Keine Ankündigung bisher.

DarkSky Bausteine

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

    #46

    Zitat von ThomasCologne Beitrag anzeigen
    Derzeit "sammel" ich noch. Habe festgestellt, dass die Ausgänge A14 und A15 nicht immer einer Meinung sind...
    Konntest du evtl. schon herausfinden ob dieser "Meinungsverschiedenheiten" auch in den empfangen Daten zu erkennen sind?
    Da ich eben mal auf die Webseite von Darksky gegenagen bin habe ich folgendes entdeckt:

    Wetter.PNG

    Damit ist die Frage wohl beantwortet, oder?

    Gruß
    Burzel

    Kommentar


      #47
      Ich muss das halt über einen längeren Zeitraum beobachten, da ich die fontcodes (A15) noch nicht alle zuordnen kann. Bisher habe ich nur folgende:

      Code:
      dyn.Design|A14|A15|Symbol
      
      1|clear-day||d_0
      2|rain||d_5
      3|wind||d_4
      4|partly-cloudy-day||d_2
      Sollte es nun schneien, wird ja ein neuer code in A15 erzeugt. Den kenne ich aber noch nicht. Deswegen ist es noch unvollständig. Ich habe die Anpassung aber ehrlich gesagt auch erst vor zwei Tagen gemacht. Aber bei der Verwendung von A15 wird mir dann nur "Tag" angezeigt - bezogen auf die VORSCHAU. Im oberen Bereich arbeitet der LBS 19001630

      image_75499.jpg

      Optimale Weise würde der LBS ein Symbol für Tag + ein Symbol für Nacht ausgeben. Aber so wie ich es verstanden habe, gibt dies die api nicht aus.

      edit:
      zum Vergleich hatte ich mir die Symbole aus dem A14 auf eine Testseite gelegt. In diesem Fall die Symbole Mittwoch bis Samstag:
      b.jpg

      A14 und A15 unterscheiden sich also schon, in diesem Fall am Donnerstag.
      Angehängte Dateien
      Zuletzt geändert von ThomasCologne; 27.08.2018, 22:35.

      Kommentar


        #48
        Ich habe den 19001631er mal in einer neueren Version hochgeladen - da hat es dann neue Ausgaenge fuer einen anderen Iconfont und das Problem mit den Tag/Nacht Icons sollte sich jetzt durch Belegen durch E9 (wie eigentlich von Beginn an geplant) beheben lassen.

        Kommentar


          #49
          Hi Wintermute / ThomasCologne ...

          wintermute : Danke für deine Arbeit! Und das neue Update!

          ThomasCologne : Bin gerade auf die FAQ gestoßen: https://darksky.net/dev/docs/faq :

          How do you determine the value for the icon property on daily data points?
          Our system is presently very simple: it finds the “worst” weather condition that will happen during the day (4AM to 4AM), and uses the icon for it. The only case where a daily icon will show a *-night value is partly-cloudy-night, and this is done to match the daily summary text. We already have intentions to change this behavior, because it is confusing. In the meantime, you can assume that if partly-cloudy-night is the worst weather condition that was found, that it was clear during the day. So you can just treat partly-cloudy-night as an alias for clear-day.

          Beschreibt das nicht genau das Problem? Eine Zwischen-Lösung wird ja hier skizziert: So you can just treat partly-cloudy-night as an alias for clear-day.

          Gruß,
          Burzel
          Zuletzt geändert von Burzel; 28.08.2018, 16:42.

          Kommentar


            #50
            Es scheinen auch hier wieder mehrere Wege nach Rom (oder zum Wetter) zu führen. Werde beides mal testen:

            1) Neuer Baustein (Besten Dank an wintermute)

            2) Partly-cloudy-night als dynamisches Symbol setzen = clear-day

            Kommentar


              #51
              wintermute
              Mir ist gerade aufgefallen, dass sich die Werte von der darksky-Homepage und den Baustein massiv unterscheiden. Woher rührt das bzw. könnte das ein Bug im Baustein sein?

              image_76190.jpg Unbenannt2.JPG
              Grüße Tobi

              Kommentar


                #52
                Koennte... schon... klar... Theoretisch ist ja fast alles moeglich

                Eigentlich werden da keinerlei Daten modifiziert sondern nur aus dem empfangenen JSON an die Ausgaenge gegeben. Am wahrscheinlichsten dabei waere also irgendeine Art Vertauschung bei der Zuordnung. So gefuehlt scheinen ja alle Werte mehr oder minder zuzutreffen, bis auf die maximale Temperatur... Kleinere Unstimmigkeiten zwischen API und Webseite gibt es irgendwie bei jedem Anbieter, aber da ist die Diskrepanz ja wirklich deutlich.
                Vielleicht erstmal sicherstellen, dass die Daten aktuell sind. Was gibt dir ein
                Code:
                ls -lda /tmp/EDOMI_LBS1900163*
                aus? Von wann sind die Files?

                Dann koennte man nochmal in dem JSON-File nach der angezeigten Maximaltemperatur suchen, also rausfinden als welches Datum (Datum jetzt im Sinne von Daten, nicht im Sinne von Zeit) genau das dort auftaucht, dann koennte ich mal gezielt im Code danach gucken.

                gruesse :: Michael

                Kommentar


                  #53
                  Also wenn ich den Code eingebe erhalte ich folgendes:

                  Code:
                  /var/edomi-backups$ ls -lda /tmp/EDOMI_LBS1900163*
                  -rw-r--r-- 1 root root   386 18. Jun 22:20 /tmp/EDOMI_LBS19001630_47.850340,12.110968.header
                  -rw-r--r-- 1 root root 65497 18. Jun 22:20 /tmp/EDOMI_LBS19001630_47.850340,12.110968.json
                  -rw-r--r-- 1 root root   388 18. Jun 22:20 /tmp/EDOMI_LBS19001631_47.850340,12.110968_de_si.header
                  -rw-r--r-- 1 root root 65497 18. Jun 22:20 /tmp/EDOMI_LBS19001631_47.850340,12.110968_de_si.json
                  aber ich arbeite mit einem "CachName" namens "DarkSky", hier wäre das Ergebnis:

                  Code:
                  /tmp$ ls -lda /tmp/DarkSky*
                  -rw-r--r-- 1 root root   388 23. Sep 13:02 /tmp/DarkSky.header
                  -rw-r--r-- 1 root root 64569 23. Sep 13:02 /tmp/DarkSky.json
                  Zuletzt geändert von JonDonSponky; 23.09.2018, 12:08.
                  Grüße Tobi

                  Kommentar


                    #54
                    Hab mir gerade das JSON-File angesehen und kann nur deine Aussage bestätigen, dass im Großen und Ganzen die Daten schon zusammenpassen.

                    Das einzige was irgendwie Unsinn ist (und weshalb ich anfänglich auch an den Daten zweifelte), sind die Regenmengen. Aber nachdem ich nun das File durchforstet und in der Doku der API nachgelesen habe, werden über die Abfrage nur die Max. bzw. die Durchschnittsmengen pro Stunde ausgegeben, nicht aber die Gesamtmenge über den Tag hinweg...

                    Deshalb nun die Frage, ob man irgendwie die Tagesmengen abfragen kann (in der Doku wird hier von "data block" daily gesprochen). Hier reichen aber leider meine Programmierkenntnisse nicht mehr aus...
                    Grüße Tobi

                    Kommentar


                      #55
                      Zitat von JonDonSponky Beitrag anzeigen
                      Deshalb nun die Frage, ob man irgendwie die Tagesmengen abfragen kann (in der Doku wird hier von "data block" daily gesprochen). Hier reichen aber leider meine Programmierkenntnisse nicht mehr aus...
                      Ist etwas her seit ich mich mit der API beschaeftigt habe aber ich meine zu erinnern, dass man diese Werte bei der woechentlichen Vorhersage bekommt... also den LBS fuer 7 Tage triggern und dann per "split" den betreffenden Wert rauslesen? Kann aber auch sein das ich mich taeusche, grad keine Zeit mich genauer reinzuarbeiten

                      Aber ihr habt in Berlin heute tatsaechlich knapp 26° Maximaltemperatur gehabt?

                      Kommentar


                        #56
                        Zitat von wintermute Beitrag anzeigen
                        Aber ihr habt in Berlin heute tatsaechlich knapp 26° Maximaltemperatur gehabt?
                        Äh nö... wo der Wert herkommt ist mir auch nicht ganz klar, kann ich aber leider nicht nochmal simulieren...

                        Zitat von wintermute Beitrag anzeigen
                        also den LBS fuer 7 Tage triggern und dann per "split" den betreffenden Wert rauslesen?
                        Auch hier ein nö, da bekommt man nur die besagten Max./h bzw. die Durchschnittswerte/h ausgelesen, nicht aber die Summer über den Tag
                        Grüße Tobi

                        Kommentar


                          #57
                          wintermute
                          So, hab mir jetzt nochmal die JSON-Datei im Detail angesehen und es ist tatsächlich so, dass jede Stunde eine Regenmenge ausgegeben wird, aber leider keine Summe. Ein schönes Update von dem LBS wäre, dass genau diese Werte zusammengezählt werden und am Ausgang A42 bereitgestellt würden.
                          So jedenfalls meine Wunschvorstellung

                          Da dazu meine Programmierkenntnisse, wie schon erwähnt, leider nicht ausreichen, hoffe ich auf deine Unterstürzung

                          Für Beta-Test usw. stehe ich natürlich gerne zu Verfügung!
                          Grüße Tobi

                          Kommentar


                            #58
                            Ich haette einen LBS hier, der eine Liste addieren kann, allerdings fehlt da zum Veroffentlichen noch die Hilfe und so. Jedenfalls koennte der das erreichen was Du haben mochtest, ohne den DarkSky-LBS anfassen zu muessen. Waer das auch eine Alternative? Hier mal im Anhang...
                            PHP-Code:
                            ###[DEF]###
                            [name        = Berechnungen für Listen 0.1 ]

                            [e#1  TRIGGER    = + ]
                            [e#2  TRIGGER    = - ]
                            [e#3  TRIGGER    = × ]
                            [e#4  TRIGGER    = ÷ ]
                            [e#5  OPTIONAL    = Trenner    #init=| ]


                            [a#1        = Result ]
                            ###[/DEF]###


                            ###[HELP]###
                            Vorlage: Standard-LBS
                            ###[/HELP]###


                            ###[LBS]###
                            <?
                            function LB_LBSID($id) {
                                if ($E=logic_getInputs($id)) {
                                    $t=$E[5]['value'];
                                    $e=FALSE;
                                    $a=explode($t,$E[1]['value']);
                                    if ($E[1]['refresh']) {
                                        $res=0;
                                        foreach ($a as $v) { $res+=$v; }
                                        if (!$e) { logic_setOutput(1,$res); }
                                    } else if ($E[2]['refresh']) {
                                        $res=$a[0]*2;
                                        foreach ($a as $v) { $res-=$v; }
                                        if (!$e) { logic_setOutput(1,$res); }
                                    } else if ($E[3]['refresh']) {
                                        $res=1;
                                        foreach ($a as $v) { $res*=$v; }
                                        if (!$e) { logic_setOutput(1,$res); }
                                    } else if ($E[4]['refresh']) {
                                        $res=0;
                                        foreach ($b as $v) { $v ? $res/=$v : $e=TRUE; }
                                        if (!$e) { logic_setOutput(1,$res); }
                                    }
                                }
                            }
                            ?>
                            ###[/LBS]###


                            ###[EXEC]###
                            <?
                            ?>
                            ###[/EXEC]###

                            Kommentar


                              #59
                              Zitat von wintermute Beitrag anzeigen
                              Waer das auch eine Alternative?
                              Danke für die Mühen, ich werde ihn kommende Woche mal ausprobieren und mich dann nochmal melden.

                              Grüße Tobi

                              Kommentar


                                #60
                                Zitat von wintermute Beitrag anzeigen
                                Waer das auch eine Alternative?
                                Hab mir deine Code mal angesehen, aber er hilft mir nicht wirklich weiter.

                                Da dein DarkSky-LBS nur "Tageswerte" ausgibt, kann ich nicht diese addieren (außer ich will die Wochenmenge an Niederschlag). Für eine Addition um auf Tageswerte zu kommen, würde ich ja die Stundenwerte benötigen, die aber nur direkt in der JSON vorliegen.

                                Meiner Ansicht nach wäre es am einfachsten, wenn man die JSON-Datei nimmt und dort die Stundenwerte eines Tages addiert...

                                Solltest du also noch eine super Idee haben, wie ich das vernünftig umsetzen kann (also eine "Such-und-addier-Formel" für die JSON-Datei), würde ich das gerne für dich testen und vielleicht findet es im Anschluss durch ein kleines Update dann doch noch seinen Weg in deinen LBS
                                Grüße Tobi

                                Kommentar

                                Lädt...
                                X