Fhem: Corona Fälle (coronavirus cases) in Fhem anzeigen

Update: 21.03.2020 Quellcode aktualisiert, verbesserte Abfrage
Update: 20.03.2020 Quellcode aktualisiert, jetzt Rang 4 weltweit, na Hauptsache, wir haben schön Karneval gefeiert.

Ich habe mir überlegt ein kurzes Script zu schreiben, welches die Coronavirus-Fälle in meiner Hausautomation anzeigt. Als Datenquelle nehme ich mir die offizielle Web-Seite, welche Euch bekannt ist. Siehe unten der Screenshot. Für das Land der Dichter (?) und Denker (???) rechne ich nicht mit einem rasanten Anstieg der Fallzahlen, da wir ungefähr 3 Monate länger Zeit hatten, ein Notfallprogramm zu entwerfen und sämtliche Maßnahmen vorab zu treffen, beispielsweise Flughäfen und Grenzen zu, Ausfall von größeren Veranstaltungen wie Karneval, Beschaffung / Herstellung von Schutzmasken etc. Unsere „Experten“ in Berlin schaffen das. (Ironie aus). Einen Vorteil sehe ich aus der Corona-Krise: Wenn keiner mehr sinnlos durch die Gegend fährt, wird wohl der Feinstaub rapide abnehmen (Update: 11.04.2020macht er aber nicht) und unsere Greta kann endlich mal in den Urlaub segeln. Leider werde ich dann beim alltäglichen Bullshit-Bingo bei den Nachrichten häufiger verlieren, weil die Buzzwords Klima, Klimaschutz nicht mehr erwähnt werden.

coronavirus cases
Nach so viel Ironie zurück zum Thema.

Glücklicherweise gibt es die neuesten Fallzahlen auch als JSON-Datei. Diese kann man mit dem JSONREADINGS-Plugin einfach abgreifen.


attr coronaAPI delay 3600
attr coronaAPI stateFormat features_01_attributes_Country_Region features_01_attributes_Confirmed

Nach 3600s (=1h) ist das Ergebnis eine Liste von Coronavirus-Fällen (active, confirmed, recovered, death), Aufgeteilt in den einzelnen Ländern.

 

 

Jetzt habt ihr für jedes Land die Readings und könnt diese in Euren Anzeigen einbauen.

Beispiel: Meine Matrix – Aneige (Blogbeitrag hier):

defmod DOIFCoronaMax7912 DOIF ([+360]) { MAX7219AddQueue("Corona-[coronaAPI:features_01_attributes_Country_Region]: [coronaAPI:features_01_attributes_Deaths], [coronaAPI:features_01_attributes_Recovered], [coronaAPI:features_01_attributes_Confirmed], [coronaAPI:features_01_attributes_Active]")}
attr DOIFCoronaMax7912 do always

Beispiel: LCD-Display (Blogbeitrag hier)

Beispiel: TabletUI (Blogbeitrag hier)

Ok, falls jetzt die Hater kommen, von wegen geschmacklos usw. Ich dachte mir es ist das gleiche wie ein Bitcoin-Display, Wetter-Display, Youtube-Display. Also einfach ein Beispiel was man aus dem Internet rausholen kann.

Und immer dran denken: Die Bezahlung mit Bitcoin hinterlässt kein Virus.

  • Bitcoin
  • Ethereum
  • Bitcoin cash
  • Bitcoin sv
  • MetaMask
Scan to Donate Bitcoin to bc1q4w8ss2lq0f5y30d26us7r9x7t23xc4ft66hyh8

Dieser Beitrag war interessant?

Spende mir ein paar Bitcoin
Scanne den QR-Code oder kopiere die untenstehende Adresse, nur Bitcoin
Scan the QR code or copy the address below into your wallet to send some Bitcoin

Tag / Hinweis: - Spende für Robins-Blog
Scan to Donate Ethereum to 0x5d7d8F5C23e653072021Dc132b8B40e79767755F

Dieser Beitrag war interessant?

Spende mir ein paar Ethereum
Scanne den QR-Code oder kopiere die untenstehende Adresse, nur Ethereum
Scan the QR code or copy the address below into your wallet to send some Ethereum

Tag / Hinweis: - Spende für Robins-Blog
Scan to Donate Bitcoin cash to bitcoincash:qp93zs5vccyt2602tc8m3kn256ma6exmluv9s8ygln

Dieser Beitrag war interessant?

Spende mir ein paar Bitcoin cash
Scanne den QR-Code oder kopiere die untenstehende Adresse, nur Bitcoin cash
Scan the QR code or copy the address below into your wallet to send some Bitcoin cash

Tag / Hinweis: - Spende für Robins-Blog
Scan to Donate Bitcoin sv to 1L4VsNnpauAcgEHEPspbTY9x7Rk4Nu3PiZ

Dieser Beitrag war interessant?

Spende mir ein paar Bitcoin sv
Scanne den QR-Code oder kopiere die untenstehende Adresse, nur Bitcoin sv
Scan the QR code or copy the address below into your wallet to send some Bitcoin sv

Tag / Hinweis: - Spende für Robins-Blog

Der Beitrag war interessant? Spende ein paar Bitcoins!

Donate ETH Via PAY With Meta Mask

Tag / Hinweis: - Spende für Robins-Blog

 

Dieser Beitrag wurde unter Fhem-Hausautomation abgelegt und mit verschlagwortet. Setze ein Lesezeichen auf den Permalink.

22 Antworten zu Fhem: Corona Fälle (coronavirus cases) in Fhem anzeigen

  1. Robin sagt:

    Nö, bei mir läufts, ist die URL korrekt?

  2. Tardar sagt:

    Hey,

    leider noch der gleiche Fehler.
    Hab so die blöde Vermutung, dass sie IPs sperren, wenn zu häufig / regelmäßig Abfragen laufen.
    Kann das sein ? 😉

  3. Robin sagt:

    versuche jetzt mal die url

  4. Robin sagt:

    Hallo Tardar,

    hab kein DBLog, aber ich prüfe die URL.

    liebe Grüsse
    robin

  5. Tardar sagt:

    no data read from https://services1.arcgis.com:443 timed out

    Leider kommen seit gestern keine Daten mehr rein.
    Mein DBLog funktioniert auch nicht 🙁
    Hast du das hinbekommen ? 😉
    Oder nutzt du kein DBLog ?

  6. Robin sagt:

    z.b so
    attr coronaAPIGermanyBundesland userReadings akt01 { ReadingsTimestamp(„coronaAPIGermanyBundesland“,“features_01_attributes_Aktualisierung“,0) }

    liebe Grüsse
    robin

  7. Robin sagt:

    kümmere mich drum …

  8. Matthias sagt:

    Bitte. Wie konvertierst du features_01_attributes_Last_Update in ein lesbares Format (am liebsten direkt im stateFormat)

  9. Robin sagt:

    Danke Matthias,

    ich ärgere mich hier kaputt, UNIQUE ID und die wird ständig geändert.
    Wenn die so forschen wie die programmieren, dann gute Nacht.

    liebe Grüsse
    robin

  10. Matthias sagt:

    Deutschland ist mittlerweile OBJECTID 133

  11. Pingback: Fhem: Coronavirus Fälle Deutschland nach Städten und Bundesländer anzeigen lassen | Robins Blog – Technik und Multimedia

  12. Robin sagt:

    Hallo Jens,

    schaue hier mal: https://forum.fhem.de/index.php?topic=38463.30

    ich baue die Query gerade um, die Papppnasen wissen nicht, was eine unique id ist, grrrrr.

    liebe Grüsse
    robin

  13. jens sagt:

    Hi Robin,
    habe mir das Modul von github runtergeladen, in den entsprechenden Ordner kopiert und auch die Berechtigungen angepasst (Eigentümer: fhem).
    Nach restart und vorherigem Update kommt folgende Meldung: Cannot load module JSONREADINGS
    Hast Du noch eine Idee, woran es noch liegen könnte?
    Danke und bleib gesund,
    Jens

  14. Tardar sagt:

    Das hat schon mal funktioniert, danke 😉
    Aktuell hab ich noch das Problem, dass die Readings so nicht in meine mySQL Datenbank geschrieben werden – da tüftel ich gerade noch dran.

  15. Tardar sagt:

    Wenn ich das neue Device anlegen möchte, stürzt FHEM ab mit dem Fehler:

    2020.03.21 17:25:50 1: PERL WARNING: main::toReadings() called too early to check prototype at ./FHEM/70_JSONREADINGS.pm line 121.
    Not a HASH reference at ./FHEM/70_JSONREADINGS.pm line 122.

    Zeile 121 und 122:
    if( ref($ref) eq „ARRAY“ ) {
    while( my ($key,$value) = each %{$ref}) {

    Danke Euch 😉

  16. Robin sagt:

    Welche Fehlermeldung?

  17. Tardar sagt:

    Hi,

    leider lädt das Modul bei mir im fhem nicht.
    Könnt ihr sagen, was für eine neuere PERL Version angepasst werden muss?

    Danke Euch

  18. Björn sagt:

    erledigt. es hat gedauert bis die Daten geladen wurden!! Kannst die Kommentare löschen

  19. Robin sagt:

    Die Readings werden 1x pro Stunde automatisch erzeugt

  20. Björn sagt:

    Hallo, wie müssen in FHEM denn die Readings aussehen? Kannst Du diese noch beifügen?? (Denn nur das define bringt ja keine Ergbnisse)

    DANKE

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.