Ankündigung

Einklappen
Keine Ankündigung bisher.

NINA WarnApp in Edomi?

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

    #16
    Hallo André,

    es geht in riesigen Schritten vorwärts: LBS Version 0.2 zeigt korrekte Ausgangswerte an:

    2019_03_07_16_29_23_EDOMI_Administration_Opera.png

    1. Leider werden Gebiete (E3) mit Leerzeichen nicht korrekt erkannt (z.B. "Kreis Leipzig"), z.Zt funktionierts´s nur ohne LZ z.B. mit "Holzminden".

    2. Ich gehe davon aus, dass A9 den gesamten JSON des Gebiets enthalten soll, leider fehlen dort aber alle wichtigen Werte !

    "altitude":"0.0","ceiling":"9842.5197","polygo n":["9.62,51.988 9.647,51.964 9.649,51.965 9.672,51.964 9.686,51.956 9.711,51.97 9.715,51.982 9.741,51.979 9.755,51.982 9.774,51.975 9.777,51.965 9.846,51.93 9.863,51.917 9.896,51.906 9.849,51.896 9.83,51.886 9.802,51.883 9.788,51.865 9.76,51.866 9.72,51.881 9.704,51.877 9.687,51.861 9.682,51.84 9.651,51.836 9.643,51.818 9.632,51.815 9.578,51.789 9.578,51.784 9.554,51.739 9.51,51.73 9.502,51.727 9.494,51.722 9.44,51.695 9.438,51.688 9.436,51.676 9.415,51.647 9.375,51.65 9.387,51.69 9.398,51.707 9.393,51.732 9.379,51.738 9.384,51.758 9.409,51.768 9.416,51.775 9.437,51.79 9.44,51.825 9.433,51.84 9.46,51.855 9.46,51.861 9.403,51.856 9.361,51.865 9.334,51.853 9.324,51.855 9.336,51.857 9.344,51.89 9.341,51.908 9.309,51.922 9.345,51.933 9.365,51.943 9.347,51.97 9.417,51.983 9.441,51.982 9.481,52.003 9.494,52.019 9.532,52.019 9.532,52.037 9.567,52.044 9.607,51.996 9.62,51.988"],"areaDesc":"Kreis Holzminden","geocode":[{"valueName":"Holzminden","value":"032550000000 "}]}


    3. Wie werden evtl. mehrere Events a A11 getrennt ? Wie bekommen ich bei mehreren Warnungen mehrere JSON´s heraus ? Bisher verhindert: [...] eine "Weiterverarbeitung" der JSON-Strings

    4. Bei Verwendung von http://warnung.bund.de/bbk.mowas/gef...urchsagen.json an E2 wird auch die korrekte Warnung an A11 ausgegeben:

    2019_03_07_16_34_31_EDOMI_Administration_Opera.png

    ...also ist hier eine LBS-Variante für die Ausgabe von Gefahreninformationen nur ein Klacks ....

    Danke wieder einmal für deine Arbeit
    Zuletzt geändert von ak68; 07.03.2019, 16:47.

    Kommentar


      #17
      Zu 1: sollte per regexp funktionieren
      Zu 2: das ist der komplette area Teil. Was soll denn da fehlen?
      Zu 3: das ist ein array Sollte sich eigentlich zerlegen lassen. Auf oberstem Level mit 0,1,2...

      ​​​​​Zu 4: haste den Klacks schon fertig?

      Kommentar


        #18
        Zitat von jonofe Beitrag anzeigen
        Zu 1: sollte per regexp funktionieren
        Soweit ich Dich richtig verstehe, sollte es mit "1" an E4 klappen- bei "Erzgebirge" klappt´s, bei "Kreis Schweinfurt" nicht !

        Zitat von jonofe Beitrag anzeigen
        Zu 2: das ist der komplette area Teil. Was soll denn da fehlen?
        o.K.- Area falsch verstanden !

        Zitat von jonofe Beitrag anzeigen
        Zu 3: das ist ein array Sollte sich eigentlich zerlegen lassen. Auf oberstem Level mit 0,1,2...
        Wie werden die einzelnen Meldungen getrennt ? Mit "," ?

        Zitat von jonofe Beitrag anzeigen
        ​​​​​Zu 4: haste den Klacks schon fertig?
        Zumindest die Abfrage getestet (vgl #16)


        Kommentar


          #19
          Zitat von ak68 Beitrag anzeigen
          Soweit ich Dich richtig verstehe, sollte es mit "1" an E4 klappen- bei "Erzgebirge" klappt´s, bei "Kreis Schweinfurt" nicht !
          Das kann an der Kodierung von Leerzeichen liegen. Daher einfach E4=1 und an E3=/Kreis.*Schweinfurt/

          Zitat von ak68 Beitrag anzeigen
          Wie werden die einzelnen Meldungen getrennt ? Mit "," ?
          Das ist JSON. Auf oberster Ebene ist Element 0 die erste Warning, Element 1 die Zweite, usw.
          Jedes Element ist dann weiterhin JSON mit den Werten von A1 bis A8.

          Zitat von ak68 Beitrag anzeigen
          Zumindest die Abfrage getestet (vgl #16)
          aha...

          Kommentar


            #20
            Zitat von jonofe Beitrag anzeigen
            bei "Kreis Schweinfurt" nicht
            Kreis Schweinfurt ist im Moment aber auch nicht in den Warnings enthalten.

            Kommentar


              #21
              Habe gerade noch mal mit Leerzeichen getestet. Es funktioniert.
              Wichtig: Der LBS matched gegen "geocode->valueName" nicht gegen "areaDesc".
              Bsp.:

              Code:
              "areaDesc":"Kreis Rendsburg-Eckernförde - Binnenland","geocode":[{"valueName":"Rendsburg-Eckernförde"

              Kommentar


                #22
                Und so kannst du die JSON Liste aller Warnings zerlegen:

                Screenshot from 2019-03-07 19-03-07.png

                In diesem Beispiel liefert "Flensburg" 9 Einträge und ich hole die Einträge 1-4 einzeln raus. Dahinter kannst du dann wieder JSON Decoder hängen, um die 8 Felder einer Warning rauszufiltern.

                Kommentar


                  #23
                  Zitat von jonofe Beitrag anzeigen
                  Habe gerade noch mal mit Leerzeichen getestet. Es funktioniert.
                  Wichtig: Der LBS matched gegen "geocode->valueName" nicht gegen "areaDesc".
                  DAS war der entscheidende Hinweis !!!!


                  Zitat von jonofe Beitrag anzeigen
                  Und so kannst du die JSON Liste aller Warnings zerlegen:
                  Dann hat sich diese Frage bereits erledigt. Ich habe zwar eine Lösung mit String_Replace, String-Zerteiler und String verbinden gefunden, aber dein Weg ist viel einfacher...

                  Vielen Dank !!!

                  Kommentar


                    #24
                    Die Zeitangaben kommen als
                    2019-03-08T15:00:00+01:00
                    Gibt es einen eleganten Weg, dies in ein besser lesbares Format (z.B. 08.03.2019 15:00) umzuwandeln?

                    Vielen Dank
                    Marco


                    Kommentar


                      #25
                      19000153 sollte das hinbekommen...

                      Kommentar


                        #26
                        Zitat von mars Beitrag anzeigen
                        Die Zeitangaben kommen als
                        Gibt es einen eleganten Weg, dies in ein besser lesbares Format (z.B. 08.03.2019 15:00) umzuwandeln?
                        Bisher ist mir auch nur der Preg_Replace LBS 19001720 eingefallen:

                        E2: /(\d{4})\-(\d{2})\-(\d{2})\T(\d{2})\\d{2})\\d{2})\+(\d{2})\\d{2})/i
                        E3: \3.\2.\1 \4:\5:\6
                        E4: -1

                        dann erhält man das Eingangsformat E2 für den LBS 19000316 Datum/ Uhrzeit plus, mit dem man in alle Formate umwandeln aknn.

                        Optimal wäre aber, wenn Andre die 3 Ausgänge gleich in einen gültigen Timestamp in sec. umwandeln könnte.

                        PS: ohne "Stirnrunzeln"- ich weiss nicht, wie ich die Smilies wegbekomme !

                        2019_03_08_12_14_51_EDOMI_Administration_Opera.png
                        Zuletzt geändert von ak68; 08.03.2019, 12:15.

                        Kommentar


                          #27
                          Zitat von wintermute Beitrag anzeigen
                          19000153 sollte das hinbekommen...
                          Stimmt, geht und ist dtl einfacher als o.g. Lösung:

                          2019_03_08_12_27_05_EDOMI_Administration_Opera.png

                          Kommentar


                            #28
                            Ich habe das Zeitformat an den Ausgängen E5-E7 mal angepasst. Ist jetzt als Version 0.3 verfügbar. Außerdem schienen mir die Ausgänge "Captured" und "Valid from" vertauscht.

                            Hat da jemand eine Doku, was die Felder im JSON bedeuten?

                            Bislang hatte ich "onset" auf "Captured" gemapped und "effective" auf "valid from". Da aber die Zeiten von "effective" oft deutlich früher sind und auch ungerade Uhrzeiten enthalten, vermute ich eher, dass dies die Zeit der Veröffentlichung ist und "onset" der Start der Warnperiode, denn hier ist es immer auf volle oder halbe Stunden genau.

                            Kommentar


                              #29
                              Zitat von jonofe Beitrag anzeigen
                              Hat da jemand eine Doku, was die Felder im JSON bedeuten?

                              Bislang hatte ich "onset" auf "Captured" gemapped und "effective" auf "valid from". Da aber die Zeiten von "effective" oft deutlich früher sind und auch ungerade Uhrzeiten enthalten, vermute ich eher, dass dies die Zeit der Veröffentlichung ist und "onset" der Start der Warnperiode, denn hier ist es immer auf volle oder halbe Stunden genau.
                              Ich habe noch einmal verglichen und habe folgendes in Erfahrung gebracht:

                              onset = Beginn der Warnung
                              expire = Ende der Warnung
                              effective = Aktualisierung der Warnung (wird wohl am Ausgang nicht benötigt !)


                              Kommentar


                                #30
                                Zitat von ak68 Beitrag anzeigen

                                Ich habe noch einmal verglichen und habe folgendes in Erfahrung gebracht:

                                onset = Beginn der Warnung
                                expire = Ende der Warnung
                                effective = Aktualisierung der Warnung (wird wohl am Ausgang nicht benötigt !)

                                So, neue Version kontrolliert (Bsp. Lübeck 11:19/ 00:00/ 15:00 lt. DWD-Seite):

                                JSON-Zuordnungen passen,

                                A5: Veröffentlichungsdatum : 11:19
                                A6: Von 12:00
                                A7: Bis 3:00

                                d.h. die Werte passen zwar, werden aber im 12h statt im 24h-Format dargestellt !

                                Kommentar

                                Lädt...
                                X