Autor Thema: Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz  (Gelesen 6824 mal)

Offline yersinia

  • Sr. Member
  • ****
  • Beiträge: 989
    • Cyanide & Happiness
« Letzte Änderung: 28 April 2021, 17:05:26 von yersinia »
viele Grüße, yersinia
----
FHEM 6.0 (SVN) on RPi 4B with RasPi OS Buster (perl 5.28.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@aculfw | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Offline bickerdyke

  • New Member
  • *
  • Beiträge: 4
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #61 am: 28 April 2021, 16:50:50 »
API mit Incidence für Gemeinden (AGS benötigt) seit dem 31.01.2020 => JSON: https://api.corona-zahlen.org/districts/08115/history/incidence (AGS Schlüssel)

Kann es sein dass dieser Dienst nicht für Gemeinden gilt sondern ebenfalls auf die Landkreisdaten zugreift? Das Beispiel Böblingen geht dann wohl nur weil es eine kreisfreie Stadt ist. Mit dem Gemeindeschlüssel meiner Gemeinde (sowohl aus Wikipedia als auch aus dem Rhein-Neckar.Kreis-Dashboard) bekomme ich keine Daten.


Offline yersinia

  • Sr. Member
  • ****
  • Beiträge: 989
    • Cyanide & Happiness
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #62 am: 28 April 2021, 17:05:02 »
Wahrscheinlich, warum dies dann allgemeiner Gemeinde Schlüssel heißt, kA.
Laut hat der Rhein-Kreis-Neckar den ags 08226.
Steht aber auch hier: https://api.corona-zahlen.org/docs/#%F0%9F%87%A9%F0%9F%87%AA-ubersicht
« Letzte Änderung: 28 April 2021, 17:06:59 von yersinia »
viele Grüße, yersinia
----
FHEM 6.0 (SVN) on RPi 4B with RasPi OS Buster (perl 5.28.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@aculfw | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Offline hankyzoolander

  • Full Member
  • ***
  • Beiträge: 176
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #63 am: 04 Mai 2021, 11:36:26 »
Hallo,
hab da einen kleinen Hänger.
Bekomme einfach keine readings für Saarbrücken,Saar-Pfalz-kreis,Sankt-Wendel.

Sieht da jemand vielleicht den Fehler??
defmod rki7 JsonMod https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,county&returnGeometry=false&outSR=4326&f=json
attr rki7 interval */15 * * * *
attr rki7 readingList multi(jsonPath("\$.features[?(\@.attributes.GEN in ['Saarbrücken'])]"), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));;\
multi(jsonPath("\$.features[?(\@.attributes.GEN in ['Saarlouis'])]"), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));;\
multi(jsonPath("\$.features[?(\@.attributes.GEN in ['Merzig-Wadern'])]"), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));;\
multi(jsonPath("\$.features[?(\@.attributes.GEN in ['Neunkirchen'])]"), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));;\
multi(jsonPath("\$.features[?(\@.attributes.GEN in ['Sankt Wendel'])]"), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));;\
multi(jsonPath("\$.features[?(\@.attributes.GEN in ['Saar-Pfalz-Kreis'])]"), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));;\

attr rki7 room Corona

setstate rki7 2021-05-04 11:30:00 .computedReadings Merzig-Wadern,Saarlouis,Neunkirchen
setstate rki7 2021-05-04 11:30:00 Merzig-Wadern 105.6
setstate rki7 2021-05-04 11:30:00 Neunkirchen 147.6
setstate rki7 2021-05-04 11:30:00 Saarlouis 138.9


Offline yersinia

  • Sr. Member
  • ****
  • Beiträge: 989
    • Cyanide & Happiness
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #64 am: 04 Mai 2021, 12:19:04 »
Textsuche ist immer driss. Zumal die Kreise/Städte nicht unbedingt so heißen. Aber man kann über die OBJECTID gehen:
defmod rki7 JsonMod https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=death_rate,cases,deaths,cases7_lk,cases7_per_100k,county,BL,cases7_bl_per_100k,cases7_bl,death7_bl,OBJECTID&returnGeometry=false&outSR=4326&f=json
attr rki7 interval */15 * * * *
attr rki7 webCmd reread
attr rki7 room Corona
attr rki7 readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_name'), property('attributes.county'));;\
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), property('attributes.cases7_per_100k'));;
ergibt dann sowas:
    READINGS:
     2021-05-04 12:31:14   .computedReadings 320_name,321_cases7_per_100k,319_cases7_per_100k,324_name,323_cases7_per_100k,322_name,323_name,322_cases7_per_100k,324_cases7_per_100k,320_cases7_per_100k,321_name,319_name
     2021-05-04 12:31:14   319_cases7_per_100k 160.930170300018
     2021-05-04 12:31:14   319_name        LK Stadtverband Saarbrücken
     2021-05-04 12:31:14   320_cases7_per_100k 105.576164970022
     2021-05-04 12:31:14   320_name        LK Merzig-Wadern
     2021-05-04 12:31:14   321_cases7_per_100k 147.631803238768
     2021-05-04 12:31:14   321_name        LK Neunkirchen
     2021-05-04 12:31:14   322_cases7_per_100k 138.946783381965
     2021-05-04 12:31:14   322_name        LK Saarlouis
     2021-05-04 12:31:14   323_cases7_per_100k 106.19145404934
     2021-05-04 12:31:14   323_name        LK Saar-Pfalz-Kreis
     2021-05-04 12:31:14   324_cases7_per_100k 110.335949981036
     2021-05-04 12:31:14   324_name        LK Sankt Wendel
Darüberhinaus würde ich die Daten nicht viertelstündlich abziehen, eher deutlich seltener weil sie in der Datenquelle auch deutlich seltener aktualisiert werden (ich vermute eher einmal täglich).
« Letzte Änderung: 04 Mai 2021, 12:39:10 von yersinia »
viele Grüße, yersinia
----
FHEM 6.0 (SVN) on RPi 4B with RasPi OS Buster (perl 5.28.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@aculfw | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Offline hankyzoolander

  • Full Member
  • ***
  • Beiträge: 176
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #65 am: 05 Mai 2021, 10:44:33 »
Hallo,
danke für die schnelle Antwort.
Soweit war ich schonmal, Problem ist das ich als readings nur die Namen bekomme.
Die Zahlen kommen gar nicht.
Hab jetzt die Zeile mit den Namen einfach weg gelassen.
Dann bekomme ich auch die Zahlen. Danke für deine Hilfe.

Offline yersinia

  • Sr. Member
  • ****
  • Beiträge: 989
    • Cyanide & Happiness
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #66 am: 05 Mai 2021, 10:49:29 »
Der Screenshot ist aber ein DOIF Device. :o
Wo ist die Verbindung zu JsonMod?
Darüber hinaus sprichst du für mich in Rätseln. Welche Zeilen mit Namen? Welche Zahlen kommen gar nicht? Device list pls.
viele Grüße, yersinia
----
FHEM 6.0 (SVN) on RPi 4B with RasPi OS Buster (perl 5.28.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@aculfw | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Offline hankyzoolander

  • Full Member
  • ***
  • Beiträge: 176
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #67 am: 05 Mai 2021, 10:58:19 »
Hallo,
achso, sorry.
Das Device ist folgendes
defmod rki7 JsonMod https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=death_rate,cases,deaths,cases7_lk,cases7_per_100k,county,BL,cases7_bl_per_100k,cases7_bl,death7_bl,OBJECTID&returnGeometry=false&outSR=4326&f=json
attr rki7 interval 0 */1 * * *
attr rki7 readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), property('attributes.cases7_per_100k'));;;;
attr rki7 room Corona
attr rki7 webCmd reread

setstate rki7 2021-05-05 10:50:00 .computedReadings 324_cases7_per_100k,322_cases7_per_100k,321_cases7_per_100k,320_cases7_per_100k,319_cases7_per_100k,323_cases7_per_100k
setstate rki7 2021-05-05 10:50:00 319_cases7_per_100k 148.457321562209
setstate rki7 2021-05-05 10:50:00 320_cases7_per_100k 100.733221622773
setstate rki7 2021-05-05 10:50:00 321_cases7_per_100k 129.368075003044
setstate rki7 2021-05-05 10:50:00 322_cases7_per_100k 129.169046773604
setstate rki7 2021-05-05 10:50:00 323_cases7_per_100k 101.97192607387
setstate rki7 2021-05-05 10:50:00 324_cases7_per_100k 102.290620294919

Dieses holt die Daten von der Seite, welche ich dann in einem doif darstelle.
defmod di_corona DOIF ##
attr di_corona room Corona
attr di_corona uiTable {package ui_Table}\\
|card([rki7:319_cases7_per_100k:col],"Saarbrücken","coronavirus",0,200,120,0,"Fälle")|\
|card([rki7:320_cases7_per_100k:col],"Merzig-Wadern","coronavirus",0,200,120,0,"Fälle")|\
|card([rki7:321_cases7_per_100k:col],"Neunkirchen","coronavirus",0,200,120,0,"Fälle")|\\
|card([rki7:322_cases7_per_100k:col],"Saarlouis","coronavirus",0,200,120,0,"Fälle")|\
|card([rki7:324_cases7_per_100k:col],"Sankt Wendel","coronavirus",0,200,120,0,"Fälle")|\
|card([rki7:323_cases7_per_100k:col],"Saar-Pfalz-Kreis","coronavirus",0,200,120,0,"Fälle")|\
\


setstate di_corona initialized
setstate di_corona 2021-04-26 17:10:13 cmd 0
setstate di_corona 2021-04-26 17:10:13 mode enabled
setstate di_corona 2021-04-26 17:10:13 state initialized


Dein Beispiel von gestern,
attr rki7 readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_name'), property('attributes.county'));;\
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), property('attributes.cases7_per_100k'));;
Da kommen nur die readings von den Städten(Saarbrücken,Saarlouis,usw.) nicht aber von den Fallzahlen.
Habe die erste Zeile bei setreading weg gelassen und nur die mit cases7_per_100K eingebaut.
Hab mir dann über die ID das doif zugeordnet.
« Letzte Änderung: 05 Mai 2021, 11:03:20 von hankyzoolander »

Offline yersinia

  • Sr. Member
  • ****
  • Beiträge: 989
    • Cyanide & Happiness
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #68 am: 05 Mai 2021, 12:11:32 »
Kurios, ich habe dein Device-raw bei mir 1:1 kopiert und wenn ich dem Attribut readingsList
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_name'), property('attributes.county'));hinzufüge, ein reread ausführe (!) (und ggf das Device-Seite aktualisiere), erhalte ich auch die dazugehörigen Beschreibungen der Kreise (Datenelement county), anbei das List
Internals:
   API_LAST_RES 1620208800.14418
   API__LAST_MSG 200
   CFGFN     
   DEF        https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=death_rate,cases,deaths,cases7_lk,cases7_per_100k,county,BL,cases7_bl_per_100k,cases7_bl,death7_bl,OBJECTID&returnGeometry=false&outSR=4326&f=json
   FUUID      60926bcd-f33f-3151-3947-51a2813a6c73ae41
   NAME       rki7
   NEXT       2021-05-05 13:00:00
   NR         1815
   SOURCE     https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=death_rate,cases,deaths,cases7_lk,cases7_per_100k,county,BL,cases7_bl_per_100k,cases7_bl,death7_bl,OBJECTID&returnGeometry=false&outSR=4326&f=json (200)
   STATE      ???
   SVN        24360 2021-04-29 21:17:23 UTC
   TYPE       JsonMod
   .attraggr:
   .attrminint:
   CONFIG:
     IN_REQUEST 0
     SOURCE     https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=death_rate,cases,deaths,cases7_lk,cases7_per_100k,county,BL,cases7_bl_per_100k,cases7_bl,death7_bl,OBJECTID&returnGeometry=false&outSR=4326&f=json
     SECRET:
   READINGS:
     2021-05-05 12:00:00   .computedReadings 323_name,322_name,320_name,324_cases7_per_100k,321_cases7_per_100k,319_name,320_cases7_per_100k,322_cases7_per_100k,323_cases7_per_100k,324_name,321_name,319_cases7_per_100k
     2021-05-05 12:00:00   319_cases7_per_100k 148.457321562209
     2021-05-05 12:00:00   319_name        LK Stadtverband Saarbrücken
     2021-05-05 12:00:00   320_cases7_per_100k 100.733221622773
     2021-05-05 12:00:00   320_name        LK Merzig-Wadern
     2021-05-05 12:00:00   321_cases7_per_100k 129.368075003044
     2021-05-05 12:00:00   321_name        LK Neunkirchen
     2021-05-05 12:00:00   322_cases7_per_100k 129.169046773604
     2021-05-05 12:00:00   322_name        LK Saarlouis
     2021-05-05 12:00:00   323_cases7_per_100k 101.97192607387
     2021-05-05 12:00:00   323_name        LK Saar-Pfalz-Kreis
     2021-05-05 12:00:00   324_cases7_per_100k 102.290620294919
     2021-05-05 12:00:00   324_name        LK Sankt Wendel
Attributes:
   interval   0 */1 * * *
   readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), property('attributes.cases7_per_100k'));
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_name'), property('attributes.county'));
   room       Corona
   webCmd     reread
und das raw dazu:
defmod rki7 JsonMod https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=death_rate,cases,deaths,cases7_lk,cases7_per_100k,county,BL,cases7_bl_per_100k,cases7_bl,death7_bl,OBJECTID&returnGeometry=false&outSR=4326&f=json
attr rki7 interval 0 */1 * * *
attr rki7 readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), property('attributes.cases7_per_100k'));;\
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_name'), property('attributes.county'));;
attr rki7 room Corona
attr rki7 webCmd reread

Du hast hier auch Semikola zuviel:
attr rki7 readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), property('attributes.cases7_per_100k'));;;;Im GUI reicht ein Semikolon, wenn du das Attribut readingList aufrufst; in der RAW Notation benötigt man zwei Semikola.
Zusätzlich gibt es in der RAW Notation noch einen Zeilenumbruch, daher die erste Zeile mit ;;\ am Ende:
attr rki7 readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), property('attributes.cases7_per_100k'));;\
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_name'), property('attributes.county'));;

Im Übrigen sind dies nicht die Fallzahlen, sondern 'nur' neue Fälle auf 100k Einwohner in den letzten sieben Tagen. Fallzahlen (Zahl der Infizierten und nicht Genesene) müsste cases (gesamt) oder cases7_lk (der letzten sieben Tage) sein. Als Ergänzung zu deinem readingList Attribut wäre dies (hinzufügen via GUI):
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases'), property('attributes.cases'));
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['319', '320', '321', '322', '323', 324'])]"), concat(property('attributes.OBJECTID'),'_cases7_lk'), property('attributes.cases7_lk'));
viele Grüße, yersinia
----
FHEM 6.0 (SVN) on RPi 4B with RasPi OS Buster (perl 5.28.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@aculfw | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Offline olvis

  • New Member
  • *
  • Beiträge: 14
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #69 am: 11 Mai 2021, 10:09:14 »
Hallo zusammen,

hat sich etwas an der Abfrage mit Umlauten geändert ?
Bis dato hatte ich diese Abfrage:
https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,OBJECTID,county&returnGeometry=false&outSR=4326&f=jsonMit dieser Readinglist:
multi(jsonPath("\$.features[?(\@.attributes.GEN in ['Muenchen', 'München', 'Frankfurt am Main', 'Bonn', 'Koln', 'Köln', 'Koeln', 'Rheinisch-Bergischer Kreis', 'Rhein-Sieg-Kreis', 'Leverkusen'])]"), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));Die Orte mit Umlauten werden seit ein paar Tagen nicht mehr in den Readings gefunden bzw ausgelesen.
Bis dato hat es mit dem COde oben geklappt.
Hier die aktuellen Readings:
RKI7:Bonn 109.2
RKI7:Frankfurt_am_Main 132.3
RKI7:Leverkusen 243.1
RKI7:Rhein-Sieg-Kreis 89.9
RKI7:Rheinisch-Bergischer_Kreis 109.1
Ich habe auch schon diverse Schreibweisen der Orte mit Umlaut eingebaut, wie ihr seht.
Was mache ich falsch ?
(Ich möchte ungerne auf OBJECTID wechseln, weil das spontane ändern eines Ortes dann etwas zeitaufwendiger ist.)
Vielleicht kann mir ja jemand von euch helfen. Wäre klasse.

Offline herrmannj

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 5833
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #70 am: 11 Mai 2021, 10:12:16 »
Poste mal bitte ein komplettes list. Danke
smartVisu mit fronthem, einiges an HM, RFXTRX, Oregon, CUL, Homeeasy, ganz viele LED + Diverse

Offline olvis

  • New Member
  • *
  • Beiträge: 14
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #71 am: 11 Mai 2021, 10:35:01 »
Gerne, hier das "list RKI7":
Internals:
   API_LAST_RES 1620720000.28898
   API__LAST_MSG 200
   DEF        https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,OBJECTID,county&returnGeometry=false&outSR=4326&f=json
   FUUID      5f589ef7-f33f-beea-5ef4-6ed143b3ec96d266
   NAME       RKI7
   NEXT       2021-05-11 11:00:00
   NR         243
   SOURCE     https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,OBJECTID,county&returnGeometry=false&outSR=4326&f=json (200)
   STATE      ???
   SVN        24360 2021-04-29 21:17:23 UTC
   TYPE       JsonMod
   CONFIG:
     IN_REQUEST 0
     SOURCE     https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,OBJECTID,county&returnGeometry=false&outSR=4326&f=json
     SECRET:
   READINGS:
     2021-05-11 10:00:00   Bonn            109.2
     2021-05-11 10:00:00   Frankfurt_am_Main 132.3
     2021-05-11 10:00:00   Leverkusen      243.1
     2021-05-11 10:00:00   Rhein-Sieg-Kreis 89.9
     2021-05-11 10:00:00   Rheinisch-Bergischer_Kreis 109.1
Attributes:
   alias      RKI7
   group      COVID
   readingList #multi(jsonPath('$.features[?(@.attributes.cases7_per_100k > 25)]'), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));
multi(jsonPath("\$.features[?(\@.attributes.GEN in ['Muenchen', 'München', 'Frankfurt am Main', 'Bonn', 'Koln', 'Köln', 'Koeln', 'Rheinisch-Bergischer Kreis', 'Rhein-Sieg-Kreis', 'Leverkusen'])]"), property('attributes.GEN'), sprintf('%.1f', property('attributes.cases7_per_100k')));
multi(jsonPath("\$.features[?(\@.attributes.county in ['Köln', 'Koln', 'Koeln'])]"), property('attributes.county'), sprintf('%.1f', property('attributes.cases7_per_100k')));
   room       CCU2_Zentrale,Wettervorhersage

Offline herrmannj

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 5833
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #72 am: 11 Mai 2021, 11:21:07 »
Ich schaue mir das an. Thnx
smartVisu mit fronthem, einiges an HM, RFXTRX, Oregon, CUL, Homeeasy, ganz viele LED + Diverse

Offline yersinia

  • Sr. Member
  • ****
  • Beiträge: 989
    • Cyanide & Happiness
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #73 am: 11 Mai 2021, 11:26:26 »
Ich denke, dass die Suche mit Umlauten (derzeit) nicht funktioniert. Ich persönlich finde eine Textsuche immer unschön - und wenn es sich vermeiden lässt weil man zB eine ID nehmen kann, dann ist dies mMn zu bevorzugen.
Internals:
   API_LAST_RES 1620724855.72828
   API__LAST_MSG 200
   CFGFN     
   DEF        https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,OBJECTID,county&returnGeometry=false&outSR=4326&f=json
   FUUID      609a484a-f33f-3151-b182-387ca5a91fa491e2
   NAME       rki7
   NEXT       2021-05-11 12:00:00
   NR         12335
   SOURCE     https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,OBJECTID,county&returnGeometry=false&outSR=4326&f=json (200)
   STATE      ???
   SVN        24360 2021-04-29 21:17:23 UTC
   TYPE       JsonMod
   .attraggr:
   .attrminint:
   CONFIG:
     IN_REQUEST 0
     SOURCE     https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,OBJECTID,county&returnGeometry=false&outSR=4326&f=json
     SECRET:
   READINGS:
     2021-05-11 11:20:55   .computedReadings 79_name,81_name,88_name,89_name,80_name,118_cases7_per_100k,224_cases7_per_100k,118_name,80_cases7_per_100k,224_name,89_cases7_per_100k,88_cases7_per_100k,81_cases7_per_100k,79_cases7_per_100k
     2021-05-11 11:20:55   118_cases7_per_100k 132.3
     2021-05-11 11:20:55   118_name        Frankfurt am Main
     2021-05-11 11:20:55   224_cases7_per_100k 78.0
     2021-05-11 11:20:55   224_name        München
     2021-05-11 11:20:55   79_cases7_per_100k 109.2
     2021-05-11 11:20:55   79_name         Bonn
     2021-05-11 11:20:55   80_cases7_per_100k 140.3
     2021-05-11 11:20:55   80_name         Köln
     2021-05-11 11:20:55   81_cases7_per_100k 243.1
     2021-05-11 11:20:55   81_name         Leverkusen
     2021-05-11 11:20:55   88_cases7_per_100k 109.1
     2021-05-11 11:20:55   88_name         Rheinisch-Bergischer Kreis
     2021-05-11 11:20:55   89_cases7_per_100k 89.9
     2021-05-11 11:20:55   89_name         Rhein-Sieg-Kreis
Attributes:
   interval   0 */1 * * *
   readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['224', '118', '79', '80', '88', '89', '81'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), sprintf('%.1f', property('attributes.cases7_per_100k')));
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['224', '118', '79', '80', '88', '89', '81'])]"), concat(property('attributes.OBJECTID'),'_name'), property('attributes.GEN'));
   room       Corona
   webCmd     reread

raw:
defmod rki7 JsonMod https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?where=1%3D1&outFields=last_update,cases7_per_100k,BEZ,BEM,GEN,BL,OBJECTID,county&returnGeometry=false&outSR=4326&f=json
attr rki7 interval 0 */1 * * *
attr rki7 readingList multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['224', '118', '79', '80', '88', '89', '81'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), sprintf('%.1f', property('attributes.cases7_per_100k')));;\
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['224', '118', '79', '80', '88', '89', '81'])]"), concat(property('attributes.OBJECTID'),'_name'), property('attributes.GEN'));;
attr rki7 room Corona
attr rki7 webCmd reread

[sOT]
@herrmannj: was denkst du, ist performanter/effizienter:
multi(jsonPath("\$.features[?(\@.attributes.OBJECTID in ['224', '118', '79', '80', '88', '89', '81'])]"), concat(property('attributes.OBJECTID'),'_cases7_per_100k'), sprintf('%.1f', property('attributes.cases7_per_100k')));oder
multi(jsonPath("\$.features.attributes[?(\@.OBJECTID in ['224', '118', '79', '80', '88', '89', '81'])]"), concat(property('OBJECTID'),'_cases7_per_100k'), sprintf('%.1f', property('cases7_per_100k')));?
[/sOT]
viele Grüße, yersinia
----
FHEM 6.0 (SVN) on RPi 4B with RasPi OS Buster (perl 5.28.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@aculfw | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Offline tomster

  • Sr. Member
  • ****
  • Beiträge: 972
Antw:Anwendungsbeispiel JsonMod / Covid / 7-Tage-Inzidenz
« Antwort #74 am: 11 Mai 2021, 13:28:01 »
Ich denke, dass die Suche mit Umlauten (derzeit) nicht funktioniert.

Ja, irgendwas in dieser Richtung scheint es zu sein. Ich hab diesen Thread vor ein paar Tagen entdeckt und während ich es bei mir eingebaut/ daran gebastelt habe, wurden plötzlich die Readings von München LK & SK nicht mehr angezeigt. Ich dachte erst an einen Config-Fehler auf meiner Seite, aber ich hab es auch durch Neuanlegen nicht mehr hinbekommen. Allerdings haben andere Orte mit Umlaut problemlos funktioniert.
Egal, bin dann eben auch auf die ID umgestiegen.

 

decade-submarginal