Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Coronavirus Statistics for ioBroker

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Coronavirus Statistics for ioBroker

    This topic has been deleted. Only users with topic management privileges can see it.
    • Uli977
      Uli977 @sigi234 last edited by

      @sigi234 Ja, kommen an

      1a618ea2-2987-47b9-8647-3d92a8688afa-image.png

      sigi234 1 Reply Last reply Reply Quote 0
      • sigi234
        sigi234 Forum Testing Most Active @Uli977 last edited by

        @Uli977

        MD Widget Richtig installiert?

        Screenshot (2073)_LI.jpg

        Uli977 1 Reply Last reply Reply Quote 0
        • Uli977
          Uli977 @sigi234 last edited by

          @sigi234 ist vorhanden

          1197a608-f9bc-41fd-8c66-840472906265-image.png

          sigi234 1 Reply Last reply Reply Quote 0
          • sigi234
            sigi234 Forum Testing Most Active @Uli977 last edited by

            @Uli977 sagte in Test Coronavirus Statistics for ioBroker:

            @sigi234 ist vorhanden

            1197a608-f9bc-41fd-8c66-840472906265-image.png

            ICON LIST

            Uli977 2 Replies Last reply Reply Quote 0
            • Uli977
              Uli977 @sigi234 last edited by

              @sigi234 nä... nicht da

              sigi234 1 Reply Last reply Reply Quote 0
              • Uli977
                Uli977 @sigi234 last edited by

                @sigi234 folgendes bei neuinstallation

                e5463136-98a8-452c-bb06-3bf81049f80b-image.png

                1 Reply Last reply Reply Quote 0
                • sigi234
                  sigi234 Forum Testing Most Active @Uli977 last edited by

                  @Uli977 sagte in Test Coronavirus Statistics for ioBroker:

                  @sigi234 nä... nicht da

                  Welche Version hast du?

                  Uli977 1 Reply Last reply Reply Quote 0
                  • Uli977
                    Uli977 @sigi234 last edited by

                    @sigi234 0.1.5

                    sigi234 1 Reply Last reply Reply Quote 0
                    • sigi234
                      sigi234 Forum Testing Most Active @Uli977 last edited by

                      @Uli977 sagte in Test Coronavirus Statistics for ioBroker:

                      @sigi234 0.1.5

                      UPDATE MACHEN!

                      Screenshot (2075)_LI.jpg

                      Uli977 2 Replies Last reply Reply Quote 0
                      • Uli977
                        Uli977 @sigi234 last edited by

                        @sigi234 geht! Danke! Habe immer auf stable stehen.... hab aber jetzt mal auf latest gesetzt...

                        960634c7-3f79-4e71-9b24-9c01cc54ab8b-image.png

                        Scrounger 1 Reply Last reply Reply Quote 0
                        • Scrounger
                          Scrounger Developer @Uli977 last edited by

                          Hier noch mein IconList Widget mit Material Design Icons:

                          50c14e97-b238-4d0c-b829-630d5e9ece87-grafik.png

                          Widget:

                          [{"tpl":"tplVis-materialdesign-Icon-List","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","wrapItems":false,"listItemDataMethod":"inputPerEditor","countListItems":"5","vibrateOnMobilDevices":"50","listLayout":"standard","itemLayout":"vertical","buttonLayout":"round","autoLockAfter":"10","lockIconTop":"5","lockIconLeft":"5","lockFilterGrayscale":"30","lockApplyOnlyOnImage":"true","listType0":"text","showValueLabel0":true,"listType1":"text","showValueLabel1":"true","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"listType2":"text","showValueLabel2":"true","listType3":"text","showValueLabel3":"true","listType4":"text","showValueLabel4":"true","listType5":"text","showValueLabel5":"true","listType6":"text","showValueLabel6":"true","listImage0":"biohazard","label0":"<div class=\"my-corona-title\">Infiziert</div>","subLabel0":"<div class=\"my-corona-value\">{javascript.0.corona.continents.Oceania.cases}</div>","listImage1":"heart-pulse","label1":"<div class=\"my-corona-title\">Genesen</div>","subLabel1":"<div class=\"my-corona-value\">{javascript.0.corona.continents.Oceania.recovered}</div>","listImage2":"seat-flat","label2":"<div class=\"my-corona-title\">Kritisch</div>","valueAppendix2":"","subLabel2":"<div class=\"my-corona-value\">{javascript.0.corona.continents.Oceania.critical}</div>","label3":"<div class=\"my-corona-title\">Todesfälle</div>","listImage3":"grave-stone","subLabel3":"<div class=\"my-corona-value\">{javascript.0.corona.continents.Oceania.deaths}</div>","listImage4":"hospital-box","valueAppendix4":"","label4":"<div class=\"my-corona-title\">Heute<br>Infiziert</div>","subLabel4":"<div class=\"my-corona-value\">{javascript.0.corona.continents.Oceania.todayCases}</div>","listImage5":"skull-crossbones","label5":"<div class=\"my-corona-title\">Heute<br>Todesfälle</div>","subLabel5":"<div class=\"my-corona-value\">{javascript.0.corona.continents.Oceania.todayDeaths}</div>","iconHeight":"35","verticalIconContainerHeight":"","labelFontSize":"10","labelFontFamily":"RobotoCondensed-Regular","subLabelFontSize":"12","subLabelFontFamily":"RobotoCondensed-LightItalic","oid0":"","itemGaps":"0","valueFontSize":"","listImageColor0":"Firebrick","listImageColor1":"green","listImageColor2":"darkorange","listImageColor3":"","listImageColor4":"Firebrick","listImageColor5":"","lockEnabled0":false,"itemBackgroundColor0":""},"style":{"left":"0","top":"60px","width":"100%","height":"96px"},"widgetSet":"materialdesign"}]
                          

                          benötigte CSS Klassen:

                          .my-corona-title {
                              display: flex;
                              align-items: center; 
                              justify-content: center;
                              height: 24px;
                          }
                          
                          .my-corona-value {
                              margin-top: 4px;
                          }
                          
                          Dutchman 1 Reply Last reply Reply Quote 0
                          • Uli977
                            Uli977 @sigi234 last edited by

                            @sigi234 wieso habe ich keine Icons?

                            sigi234 1 Reply Last reply Reply Quote 0
                            • sigi234
                              sigi234 Forum Testing Most Active @Uli977 last edited by

                              @Uli977 sagte in Test Coronavirus Statistics for ioBroker:

                              @sigi234 wieso habe ich keine Icons?

                              Musst du @stimezo fragen, vielleicht stellt er sie Online.

                              Uli977 1 Reply Last reply Reply Quote 0
                              • Uli977
                                Uli977 @Scrounger last edited by

                                @Scrounger Wäre ja noch toll, wenn man ein Land seiner Wahl noch etwas detaillieren könnte.... Meinst du das geht?

                                sigi234 1 Reply Last reply Reply Quote 0
                                • Dutchman
                                  Dutchman Developer Most Active Administrators @Scrounger last edited by

                                  @Scrounger sagte in Test Coronavirus Statistics for ioBroker:

                                  Hier noch mein IconList Widget mit Material Design Icons:

                                  nice, haste lust das als widget setzt hinzuzufügen im adapter ?

                                  hier ein beispiel wie wir die anderen gemacht haben :

                                  https://github.com/iobroker-community-adapters/ioBroker.coronavirus-statistics/commit/df292cd56e351c6a3bed4ab93d31144b7ade1c4e

                                  0 GermanBluefox committed to iobroker-community-adapters/ioBroker.coronavirus-statistics
                                  Add widgets
                                  1 Reply Last reply Reply Quote 0
                                  • sigi234
                                    sigi234 Forum Testing Most Active @Uli977 last edited by

                                    @Uli977 sagte in Test Coronavirus Statistics for ioBroker:

                                    @Scrounger Wäre ja noch toll, wenn man ein Land seiner Wahl noch etwas detaillieren könnte.... Meinst du das geht?

                                    Screenshot (2077).png

                                    Uli977 1 Reply Last reply Reply Quote 1
                                    • Uli977
                                      Uli977 @sigi234 last edited by

                                      @sigi234 kannst du das exportieren?

                                      sigi234 1 Reply Last reply Reply Quote 0
                                      • sigi234
                                        sigi234 Forum Testing Most Active @Uli977 last edited by

                                        @Uli977 sagte in Test Coronavirus Statistics for ioBroker:

                                        @sigi234 kannst du das exportieren?

                                        View_Corona_Sigi234.txt

                                        Uli977 2 Replies Last reply Reply Quote 1
                                        • Uli977
                                          Uli977 @sigi234 last edited by

                                          @sigi234 Danke! Das habe ich wohl übersehen...

                                          1 Reply Last reply Reply Quote 0
                                          • Scrounger
                                            Scrounger Developer last edited by Scrounger

                                            Sorry hab leider in dem Skript echt nen Schnitzer drin gehabt - bei North / South America ist ein Leerzeichen drin, was bei Ids nicht empfohlen ist.
                                            Bitte nehmt das folgende Skript und löscht alle DPs von North / South America.

                                            const countryJs = require("country-list-js");
                                            
                                            let selector = `[id=coronavirus-statistics.0.*.cases]`
                                            let allCountries = $(selector);
                                            
                                            // Fehlermeldung ausgeben, wenn selector kein result liefert
                                            if (allCountries.length === 0) {
                                                console.error(`no result for selector '${selector}'`)
                                            }
                                            
                                            on({ id: 'coronavirus-statistics.0.global_totals.updated', change: 'any' }, statsForContinents);
                                            
                                            function statsForContinents() {
                                                setTimeout(function () {
                                                    console.log('Corona Statistik für Kontinente wird erstellt');
                                            
                                                    let countryTranslator = {
                                                        // https://github.com/i-rocky/country-list-js/blob/master/data/names.json
                                                        "Vatican_City": "Vatican",
                                                        "USA": "United States",
                                                        "UK": "United Kingdom",
                                                        "UAE": "United Arab Emirates",
                                                        "US_Virgin_Islands": "U.S. Virgin Islands",
                                                        "St_Vincent_Grenadines": "Saint Vincent and the Grenadines",
                                                        "St_Barth": "Saint Barthelemy",
                                                        "S_Korea": "South Korea",
                                                        "Palestine": "Palestinian Territory",
                                                        "North_Macedonia": "Macedonia",
                                                        "Faeroe_Islands": "Faroe Islands",
                                                        "Eswatini": "Swaziland",
                                                        "Czechia": "Czech Republic",
                                                        "Congo": "Republic of the Congo",
                                                        "CAR": "Central African Republic",
                                                        "DRC": "Democratic Republic of the Congo",
                                                        "Channel_Islands": "France"                             // gehört zu Europa, deshalb Frankreich einfach vergeben
                                                    }
                                            
                                                    var continentsStats = {};
                                                    countryJs.continents().forEach(function (continent, index) {
                                                        continentsStats[continent.replace(" ", "_")] = {
                                                            cases: 0,
                                                            critical: 0,
                                                            deaths: 0,
                                                            recovered: 0,
                                                            todayCases: 0,
                                                            todayDeaths: 0,
                                                        }
                                                    });
                                            
                                                    continentsStats['America'] = {
                                                        cases: 0,
                                                        critical: 0,
                                                        deaths: 0,
                                                        recovered: 0,
                                                        todayCases: 0,
                                                        todayDeaths: 0,
                                                    };
                                            
                                                    continentsStats['World'] = {
                                                        critical: 0,
                                                        todayCases: 0,
                                                        todayDeaths: 0,
                                                    };
                                            
                                            
                                                    for (var i = 0; i <= allCountries.length - 1; i++) {
                                                        let idCases = allCountries[i];
                                                        let idCritical = idCases.replace('.cases', '.critical');
                                                        let idDeaths = idCases.replace('.cases', '.deaths');
                                                        let idRecovered = idCases.replace('.cases', '.recovered');
                                                        let idTodayCases = idCases.replace('.cases', '.todayCases');
                                                        let idTodayDeaths = idCases.replace('.cases', '.todayDeaths');
                                            
                                                        let countryName = idCases.split('.')[2];
                                            
                                                        let country = countryJs.findByName(countryName.replace(/_/g, ' ').replace('é', 'e').replace('ç', 'c'));
                                                        if (country) {
                                                            calcStats(country);
                                                        } else {
                                                            country = countryJs.findByName(countryTranslator[countryName]);
                                                            if (country) {
                                                                calcStats(country);
                                                            } else {
                                                                if (countryName !== 'global_totals' && countryName !== 'Diamond_Princess') {
                                                                    console.warn(`${countryName} nicht in gefunden. Korrekter Name muss im skript manuell hinzugefügt werden!`);
                                                                }
                                                            }
                                                        }
                                            
                                                        function calcStats(country) {
                                                            if (country.continent) {
                                                                let continent = country.continent.replace(" ", "_");
                                                                continentsStats[continent].cases = continentsStats[continent].cases + getState(idCases).val;
                                                                continentsStats[continent].critical = continentsStats[continent].critical + getState(idCritical).val;
                                                                continentsStats[continent].deaths = continentsStats[continent].deaths + getState(idDeaths).val;
                                                                continentsStats[continent].recovered = continentsStats[continent].recovered + getState(idRecovered).val;
                                                                continentsStats[continent].todayCases = continentsStats[continent].todayCases + getState(idTodayCases).val;
                                                                continentsStats[continent].todayDeaths = continentsStats[continent].todayDeaths + getState(idTodayDeaths).val;
                                            
                                                                if (country.continent === 'South America' || country.continent === 'North America') {
                                                                    continentsStats['America'].cases = continentsStats['America'].cases + getState(idCases).val;
                                                                    continentsStats['America'].critical = continentsStats['America'].critical + getState(idCritical).val;
                                                                    continentsStats['America'].deaths = continentsStats['America'].deaths + getState(idDeaths).val;
                                                                    continentsStats['America'].recovered = continentsStats['America'].recovered + getState(idRecovered).val;
                                                                    continentsStats['America'].todayCases = continentsStats['America'].todayCases + getState(idTodayCases).val;
                                                                    continentsStats['America'].todayDeaths = continentsStats['America'].todayDeaths + getState(idTodayDeaths).val;
                                                                }
                                            
                                                                continentsStats['World'].critical = continentsStats['World'].critical + getState(idCritical).val;
                                                                continentsStats['World'].todayCases = continentsStats['World'].todayCases + getState(idTodayCases).val;
                                                                continentsStats['World'].todayDeaths = continentsStats['World'].todayDeaths + getState(idTodayDeaths).val;
                                                            } else {
                                                                console.warn(`Für ${countryName} existiert kein Kontinent!`);
                                                            }
                                                        }
                                                    }
                                            
                                                    for (var continent in continentsStats) {
                                                        for (var prop in continentsStats[continent]) {
                                                            let dpId = `corona.continents.${continent}.${prop}`
                                            
                                                            if (existsState(dpId)) {
                                                                setState(dpId, continentsStats[continent][prop], true);
                                                            } else {
                                                                createState(dpId, continentsStats[continent][prop], {
                                                                    name: `${continent} ${prop}`,
                                                                    read: true,
                                                                    write: false,
                                                                    desc: `${continent} ${prop}`,
                                                                    type: "number",
                                                                    def: 0,
                                                                });
                                                            }
                                                        }
                                                    }
                                                }, 30000);
                                            }
                                            
                                            // Bei JS Start ausführen
                                            statsForContinents();
                                            
                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            570
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter installation adapterentwicklung testen
                                            120
                                            1177
                                            257948
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo