Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

SONOFF NSPanel mit Lovelace UI

Geplant Angeheftet Gesperrt Verschoben Hardware
lovelace uinspanelsonoff
7.8k Beiträge 272 Kommentatoren 6.7m Aufrufe 254 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • N nevermind

    @armilar sagte in SONOFF NSPanel mit Lovelace UI:

    Es muss einen funktionierenden Alias für das große Icon geben (siehe hier)
    https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen#wettervorhersage

    Sorry, das habe ich ich übersehen. Aber 1000 Dank für deine tolle Unterstützung hier im Forum!

    Zwei Fragen hätte ich noch:

    Ich würde den 3 zusätzlichen Icons im Screensaver eine feste Farbe geben. Das funktioniert leider nicht. mit val_min/max geht´s. Eine feste Farbe jedoch nicht.

    export const config: Config = {
        panelRecvTopic: 'mqtt.0.NSPanel.tele.RESULT',       // anpassen
        panelSendTopic: 'mqtt.0.NSPanel.cmnd.CustomSend',   // anpassen
        firstScreensaverEntity: { ScreensaverEntity: "hm-rpc.0.LEQ0099147.1.HUMIDITY", ScreensaverEntityIcon: "weather-pouring", ScreensaverEntityText: "1", ScreensaverEntityUnitText: "°C", ScreensaverEntityIconColor: {'val_min': 60, 'val_max': 200}},
        secondScreensaverEntity: { ScreensaverEntity: "hm-rpc.0.LEQ0099147.1.HUMIDITY", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "2", ScreensaverEntityUnitText: "", ScreensaverEntityIconColor: Red },
        thirdScreensaverEntity: { ScreensaverEntity: "hm-rpc.0.LEQ0099147.1.HUMIDITY", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "3", ScreensaverEntityUnitText: "%", ScreensaverEntityIconColor: MSGreen},
        fourthScreensaverEntity: { ScreensaverEntity: "hm-rpc.0.LEQ0099147.1.HUMIDITY", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "4", ScreensaverEntityUnitText: "%", ScreensaverEntityIconColor: Red},
        alternativeScreensaverLayout: true,
        autoWeatherColorScreensaverLayout: false,
        mrIcon1ScreensaverEntity: { ScreensaverEntity: null, ScreensaverEntityIcon: null, ScreensaverEntityOnColor: Red, ScreensaverEntityOffColor: Green  },
        mrIcon2ScreensaverEntity: { ScreensaverEntity: null, ScreensaverEntityIcon: null, ScreensaverEntityOnColor: Blue, ScreensaverEntityOffColor: Red  },
        timeoutScreensaver: 3,
        dimmode: 0,
        active: 100, //Standard-Brightness TFT
        screenSaverDoubleClick: false,
        locale: 'de-DE',                    // en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
        timeFormat: '%H:%M',                // currently not used 
        dateFormat: '%A, %d. %B %Y',        // currently not used 
        //weatherEntity: 'alias.0.Wetter',
        weatherEntity: 'alias.0.NSPanel.wetter',
        defaultOffColor: Off, 
        defaultOnColor: On,
        defaultColor: On,
        temperatureUnit: '°C',
        pages: [
                //Power,
                //Sonos,              //Beispiel-Seite
                //SpotifyPremium,     //Beispiel-Seite
                //Alexa,              //Beispiel-Seite
                //Buero_Seite_2,      //Beispiel-Seite
                //Buero_Seite_1,      //Beispiel-Seite
                //Buero_Klimaanlage,  //Beispiel-Seite 
                //Button_1,           //Beispiel-Seite
                //Test_Licht,         //Beispiel-Seite
                //Test_Funktionen,    //Beispiel-Seite    
                //Fenster_1,          //Beispiel-Seite
                //Subpages_1,         //Beispiel-Seite
                //Buero_Themostat,    //Beispiel-Seite
                //Buero_Alarm,        //Beispiel-Seite
                HeizungArbeit
        ],
        subPages: [
                    //Abfall,                     //Beispiel-Unterseite
                    //WLAN,                       //Beispiel-Unterseite
                    //NSPanel_Infos,              //Beispiel-Unterseite
                    //NSPanel_Einstellungen,      //Beispiel-Unterseite
                    //NSPanel_Firmware_Updates    //Beispiel-Unterseite
        ],
        button1Page: null,   //Beispiel-Seite auf Button 1, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null, 
        button2Page: null    //Beispiel-Seite auf Button 2, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null,
    };
    

    Und noch eine weitere Frage: Wenn ich das Script speichere bekomme ich immer eine Warnung:

    17:25:27.440	warn	javascript.0 (31849) at script.js.Küche.NSPanel.NSPanel_3-4-0-6:1070:46
    17:25:27.440	warn	javascript.0 (31849) at step (script.js.Küche.NSPanel.NSPanel_3-4-0-6:33:23)
    17:25:27.440	warn	javascript.0 (31849) at Object.next (script.js.Küche.NSPanel.NSPanel_3-4-0-6:14:53)
    17:25:27.440	warn	javascript.0 (31849) at fulfilled (script.js.Küche.NSPanel.NSPanel_3-4-0-6:5:58)
    

    Kann ich das ignorieren? Ich weiß leider nicht wie ich dem Problem auf die Spur komme. Ich nehme an die Zeilennummer im Fehler bezieht sich auf das kompilierte Script und nicht das TypeScript.

    Edit: Hab gerade deinen Beitrag bzgl. "verbose" gelesen. Jetzt bekomme ich folgendes direkt vor der Fehlermeldung angezeigt:

    
    javascript.0 (31849) script.js.Küche.NSPanel.NSPanel_3-4-0-6: check_version_tft_firmware: Cannot read property 'replace' of undefined
    
    N Offline
    N Offline
    nevermind
    schrieb am zuletzt editiert von nevermind
    #335

    Ich TS habe ich folgende Zeile gefunden:

            request({
                url: 'https://api.github.com/repos/joBr99/nspanel-lovelace-ui/releases/latest',
                headers: {
                    'User-Agent': 'ioBroker'
                }
            }
    

    Wenn ich die URL in meinem Browser aufrufe kommt:

    3b4ec1ef-2eba-4259-afec-07948732a6bf-grafik.png

    Edit: Ich habe pauschal mal die 5 version-check funktionen auskommentiert. Jetzt kommen keine Fehler mehr.

    82d19481-a247-4d97-ac2b-135910c6cb86-grafik.png

    ArmilarA 1 Antwort Letzte Antwort
    0
    • N nevermind

      Ich TS habe ich folgende Zeile gefunden:

              request({
                  url: 'https://api.github.com/repos/joBr99/nspanel-lovelace-ui/releases/latest',
                  headers: {
                      'User-Agent': 'ioBroker'
                  }
              }
      

      Wenn ich die URL in meinem Browser aufrufe kommt:

      3b4ec1ef-2eba-4259-afec-07948732a6bf-grafik.png

      Edit: Ich habe pauschal mal die 5 version-check funktionen auskommentiert. Jetzt kommen keine Fehler mehr.

      82d19481-a247-4d97-ac2b-135910c6cb86-grafik.png

      ArmilarA Offline
      ArmilarA Offline
      Armilar
      Most Active Forum Testing
      schrieb am zuletzt editiert von
      #336

      @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

      Ich TS habe ich folgende Zeile gefunden:

              request({
                  url: 'https://api.github.com/repos/joBr99/nspanel-lovelace-ui/releases/latest',
                  headers: {
                      'User-Agent': 'ioBroker'
                  }
              }
      

      Wenn ich die URL in meinem Browser aufrufe kommt:

      3b4ec1ef-2eba-4259-afec-07948732a6bf-grafik.png

      Edit: Ich habe pauschal mal die 5 version-check funktionen auskommentiert. Jetzt kommen keine Fehler mehr.

      82d19481-a247-4d97-ac2b-135910c6cb86-grafik.png

      @chiob314 @nevermind

      Okay das erklärt einiges und sind auch nur Warnungen. Ihr habt beide das Datenlimit bei github erreicht.

      Morgen sollte es wieder ohne Meldung gehen...

      Alles wieder auskommentieren.

      Hätte vom Compiler insbesondere bei err.message ne schönere Antwort erwartet.

      Also... nichts wildes.

      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
      https://github.com/joBr99/nspanel-lovelace-ui/wiki

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      1 Antwort Letzte Antwort
      0
      • N nevermind

        @armilar sagte in SONOFF NSPanel mit Lovelace UI:

        Es muss einen funktionierenden Alias für das große Icon geben (siehe hier)
        https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen#wettervorhersage

        Sorry, das habe ich ich übersehen. Aber 1000 Dank für deine tolle Unterstützung hier im Forum!

        Zwei Fragen hätte ich noch:

        Ich würde den 3 zusätzlichen Icons im Screensaver eine feste Farbe geben. Das funktioniert leider nicht. mit val_min/max geht´s. Eine feste Farbe jedoch nicht.

        export const config: Config = {
            panelRecvTopic: 'mqtt.0.NSPanel.tele.RESULT',       // anpassen
            panelSendTopic: 'mqtt.0.NSPanel.cmnd.CustomSend',   // anpassen
            firstScreensaverEntity: { ScreensaverEntity: "hm-rpc.0.LEQ0099147.1.HUMIDITY", ScreensaverEntityIcon: "weather-pouring", ScreensaverEntityText: "1", ScreensaverEntityUnitText: "°C", ScreensaverEntityIconColor: {'val_min': 60, 'val_max': 200}},
            secondScreensaverEntity: { ScreensaverEntity: "hm-rpc.0.LEQ0099147.1.HUMIDITY", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "2", ScreensaverEntityUnitText: "", ScreensaverEntityIconColor: Red },
            thirdScreensaverEntity: { ScreensaverEntity: "hm-rpc.0.LEQ0099147.1.HUMIDITY", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "3", ScreensaverEntityUnitText: "%", ScreensaverEntityIconColor: MSGreen},
            fourthScreensaverEntity: { ScreensaverEntity: "hm-rpc.0.LEQ0099147.1.HUMIDITY", ScreensaverEntityIcon: "water-percent", ScreensaverEntityText: "4", ScreensaverEntityUnitText: "%", ScreensaverEntityIconColor: Red},
            alternativeScreensaverLayout: true,
            autoWeatherColorScreensaverLayout: false,
            mrIcon1ScreensaverEntity: { ScreensaverEntity: null, ScreensaverEntityIcon: null, ScreensaverEntityOnColor: Red, ScreensaverEntityOffColor: Green  },
            mrIcon2ScreensaverEntity: { ScreensaverEntity: null, ScreensaverEntityIcon: null, ScreensaverEntityOnColor: Blue, ScreensaverEntityOffColor: Red  },
            timeoutScreensaver: 3,
            dimmode: 0,
            active: 100, //Standard-Brightness TFT
            screenSaverDoubleClick: false,
            locale: 'de-DE',                    // en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
            timeFormat: '%H:%M',                // currently not used 
            dateFormat: '%A, %d. %B %Y',        // currently not used 
            //weatherEntity: 'alias.0.Wetter',
            weatherEntity: 'alias.0.NSPanel.wetter',
            defaultOffColor: Off, 
            defaultOnColor: On,
            defaultColor: On,
            temperatureUnit: '°C',
            pages: [
                    //Power,
                    //Sonos,              //Beispiel-Seite
                    //SpotifyPremium,     //Beispiel-Seite
                    //Alexa,              //Beispiel-Seite
                    //Buero_Seite_2,      //Beispiel-Seite
                    //Buero_Seite_1,      //Beispiel-Seite
                    //Buero_Klimaanlage,  //Beispiel-Seite 
                    //Button_1,           //Beispiel-Seite
                    //Test_Licht,         //Beispiel-Seite
                    //Test_Funktionen,    //Beispiel-Seite    
                    //Fenster_1,          //Beispiel-Seite
                    //Subpages_1,         //Beispiel-Seite
                    //Buero_Themostat,    //Beispiel-Seite
                    //Buero_Alarm,        //Beispiel-Seite
                    HeizungArbeit
            ],
            subPages: [
                        //Abfall,                     //Beispiel-Unterseite
                        //WLAN,                       //Beispiel-Unterseite
                        //NSPanel_Infos,              //Beispiel-Unterseite
                        //NSPanel_Einstellungen,      //Beispiel-Unterseite
                        //NSPanel_Firmware_Updates    //Beispiel-Unterseite
            ],
            button1Page: null,   //Beispiel-Seite auf Button 1, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null, 
            button2Page: null    //Beispiel-Seite auf Button 2, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null,
        };
        

        Und noch eine weitere Frage: Wenn ich das Script speichere bekomme ich immer eine Warnung:

        17:25:27.440	warn	javascript.0 (31849) at script.js.Küche.NSPanel.NSPanel_3-4-0-6:1070:46
        17:25:27.440	warn	javascript.0 (31849) at step (script.js.Küche.NSPanel.NSPanel_3-4-0-6:33:23)
        17:25:27.440	warn	javascript.0 (31849) at Object.next (script.js.Küche.NSPanel.NSPanel_3-4-0-6:14:53)
        17:25:27.440	warn	javascript.0 (31849) at fulfilled (script.js.Küche.NSPanel.NSPanel_3-4-0-6:5:58)
        

        Kann ich das ignorieren? Ich weiß leider nicht wie ich dem Problem auf die Spur komme. Ich nehme an die Zeilennummer im Fehler bezieht sich auf das kompilierte Script und nicht das TypeScript.

        Edit: Hab gerade deinen Beitrag bzgl. "verbose" gelesen. Jetzt bekomme ich folgendes direkt vor der Fehlermeldung angezeigt:

        
        javascript.0 (31849) script.js.Küche.NSPanel.NSPanel_3-4-0-6: check_version_tft_firmware: Cannot read property 'replace' of undefined
        
        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von Armilar
        #337

        @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

        Ich würde den 3 zusätzlichen Icons im Screensaver eine feste Farbe geben. Das funktioniert leider nicht. mit val_min/max geht´s. Eine feste Farbe jedoch nicht.

        Da fehlt in der Tat noch an einer Stelle der Code für jemanden wie dich :blush:

        Baue ich ein für die nächste Version

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        ArmilarA 1 Antwort Letzte Antwort
        0
        • ArmilarA Armilar

          @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

          Ich würde den 3 zusätzlichen Icons im Screensaver eine feste Farbe geben. Das funktioniert leider nicht. mit val_min/max geht´s. Eine feste Farbe jedoch nicht.

          Da fehlt in der Tat noch an einer Stelle der Code für jemanden wie dich :blush:

          Baue ich ein für die nächste Version

          ArmilarA Offline
          ArmilarA Offline
          Armilar
          Most Active Forum Testing
          schrieb am zuletzt editiert von
          #338

          @armilar sagte in SONOFF NSPanel mit Lovelace UI:

          @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

          Ich würde den 3 zusätzlichen Icons im Screensaver eine feste Farbe geben. Das funktioniert leider nicht. mit val_min/max geht´s. Eine feste Farbe jedoch nicht.

          Da fehlt in der Tat noch an einer Stelle der Code für jemanden wie dich :blush:

          Baue ich ein für die nächste Version

          @nevermind

          Darfst aber gerne vorher einen Test machen... --> nachfolgende Funktion austauschen...

          function HandleScreensaverUpdate(): void {
              try {
                  if (screensaverEnabled && config.weatherEntity != null && existsObject(config.weatherEntity)) {
                      var icon = getState(config.weatherEntity + '.ICON').val;
          
                      let temperature =
                          existsState(config.weatherEntity + '.ACTUAL') ? getState(config.weatherEntity + '.ACTUAL').val :
                              existsState(config.weatherEntity + '.TEMP') ? getState(config.weatherEntity + '.TEMP').val : 'null';
          
                      if (config.alternativeScreensaverLayout) {
                          temperature = parseInt(Math.round(temperature).toFixed());
                      }
          
                      let payloadString =
                          'weatherUpdate~' + Icons.GetIcon(GetAccuWeatherIcon(parseInt(icon))) + '~'
                          + temperature + ' ' + config.temperatureUnit + '~';
          
                      vwIconColor[0] = GetAccuWeatherIconColor(parseInt(icon));
                      if (Debug) console.log(GetAccuWeatherIconColor(parseInt(icon)));
          
                      if (weatherForecast) {
                          // Accu-Weather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                          for (let i = 2; i < 6; i++) {
                              let TempMax = getState('accuweather.0.Summary.TempMax_d' + i).val;
                              let DayOfWeek = getState('accuweather.0.Summary.DayOfWeek_d' + i).val;
                              let WeatherIcon = GetAccuWeatherIcon(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                              vwIconColor[i-1] = GetAccuWeatherIconColor(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                              if (Debug) console.log(vwIconColor[i-1]);
                              payloadString += DayOfWeek + '~' + Icons.GetIcon(WeatherIcon) + '~' + TempMax + ' ' + config.temperatureUnit + '~';
                          }
                      } else {
                          payloadString += GetScreenSaverEntityString(config.firstScreensaverEntity);
                          payloadString += GetScreenSaverEntityString(config.secondScreensaverEntity);
                          payloadString += GetScreenSaverEntityString(config.thirdScreensaverEntity);
                          payloadString += GetScreenSaverEntityString(config.fourthScreensaverEntity);
                          
                          const colorScale0:  RGB = { red:   99, green: 190, blue: 123 };
                          const colorScale1:  RGB = { red:  129, green: 199, blue: 126 };
                          const colorScale2:  RGB = { red:  161, green: 208, blue: 127 };
                          const colorScale3:  RGB = { red:  129, green: 217, blue: 126 };
                          const colorScale4:  RGB = { red:  222, green: 226, blue: 131 };
                          const colorScale5:  RGB = { red:  254, green: 235, blue: 132 };
                          const colorScale6:  RGB = { red:  255, green: 210, blue: 129 };
                          const colorScale7:  RGB = { red:  251, green: 185, blue: 124 };
                          const colorScale8:  RGB = { red:  251, green: 158, blue: 117 };
                          const colorScale9:  RGB = { red:  248, green: 131, blue: 111 };
                          const colorScale10: RGB = { red:  248, green: 105, blue: 107 };
          
                          if (config.firstScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                              if (typeof getState(config.firstScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                  vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                              } else if (typeof config.firstScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                                  let iconvalmin = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                  let iconvalmax = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                  let iconvalbest = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                  let valueScale = getState(config.firstScreensaverEntity.ScreensaverEntity).val;
          
                                  if (iconvalmin == 0 && iconvalmax == 1) {
                                      vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                  } else {
                                      if (iconvalbest == iconvalmin) {
                                          valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                      } else {
                                          if (valueScale < iconvalbest) {
                                              valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                          } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                              valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                          } else {
                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                          }
                                      }
                                      let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                      if (Debug) console.log(valueScaletemp);
                                      switch (valueScaletemp) {
                                          case '0':
                                              vwIconColor[1] = rgb_dec565(colorScale0);
                                              break;
                                          case '1':
                                              vwIconColor[1] = rgb_dec565(colorScale1);
                                              break;
                                          case '2':
                                              vwIconColor[1] = rgb_dec565(colorScale2);
                                              break;
                                          case '3':
                                              vwIconColor[1] = rgb_dec565(colorScale3);
                                              break;
                                          case '4':
                                              vwIconColor[1] = rgb_dec565(colorScale4);
                                              break;
                                          case '5':
                                              vwIconColor[1] = rgb_dec565(colorScale5);
                                              break;
                                          case '6':
                                              vwIconColor[1] = rgb_dec565(colorScale6);
                                              break;
                                          case '7':
                                              vwIconColor[1] = rgb_dec565(colorScale7);
                                              break;                                 
                                          case '8':
                                              vwIconColor[1] = rgb_dec565(colorScale8);
                                              break;
                                          case '9':
                                              vwIconColor[1] = rgb_dec565(colorScale9);
                                              break;
                                          case '10':
                                              vwIconColor[1] = rgb_dec565(colorScale10);
                                              break;
                                      } 
                                  }
                                  if (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                      vwIconColor[1] = rgb_dec565(config.firstScreensaverEntity.ScreensaverEntityIconColor);
                                  }
                              } else {
                                  vwIconColor[1] = rgb_dec565(sctF1Icon);
                              }
                          } else {
                              vwIconColor[1] = rgb_dec565(sctF1Icon);    
                          }
          
                          if (config.secondScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                              if (typeof getState(config.secondScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                  vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                              } else if (typeof config.secondScreensaverEntity.ScreensaverEntityIconColor == 'object') {
          
                                  let iconvalmin = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                  let iconvalmax = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                  let iconvalbest = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                  let valueScale = getState(config.secondScreensaverEntity.ScreensaverEntity).val;
          
                                  if (iconvalmin == 0 && iconvalmax == 1) {
                                      vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                  } else {
                                      if (iconvalbest == iconvalmin) {
                                          valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                      } else {
                                          if (valueScale < iconvalbest) {
                                              valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                          } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                              valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                          } else {
                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                          }
                                      }
                                      let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                      if (Debug) console.log(valueScaletemp);
                                      switch (valueScaletemp) {
                                          case '0':
                                              vwIconColor[2] = rgb_dec565(colorScale0);
                                              break;
                                          case '1':
                                              vwIconColor[2] = rgb_dec565(colorScale1);
                                              break;
                                          case '2':
                                              vwIconColor[2] = rgb_dec565(colorScale2);
                                              break;
                                          case '3':
                                              vwIconColor[2] = rgb_dec565(colorScale3);
                                              break;
                                          case '4':
                                              vwIconColor[2] = rgb_dec565(colorScale4);
                                              break;
                                          case '5':
                                              vwIconColor[2] = rgb_dec565(colorScale5);
                                              break;
                                          case '6':
                                              vwIconColor[2] = rgb_dec565(colorScale6);
                                              break;
                                          case '7':
                                              vwIconColor[2] = rgb_dec565(colorScale7);
                                              break;                                 
                                          case '8':
                                              vwIconColor[2] = rgb_dec565(colorScale8);
                                              break;
                                          case '9':
                                              vwIconColor[2] = rgb_dec565(colorScale9);
                                              break;
                                          case '10':
                                              vwIconColor[2] = rgb_dec565(colorScale10);
                                              break;
                                      } 
                                  }
                                  if (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                      vwIconColor[1] = rgb_dec565(config.secondScreensaverEntity.ScreensaverEntityIconColor);
                                  }
                              } else {
                                  vwIconColor[2] = rgb_dec565(sctF2Icon);                        
                              }
                          } else {
                              vwIconColor[2] = rgb_dec565(sctF2Icon);    
                          }
          
                          if (config.thirdScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                              if (typeof getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                  vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                              } else if (typeof config.thirdScreensaverEntity.ScreensaverEntityIconColor == 'object') {
          
                                  let iconvalmin = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                  let iconvalmax = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                  let iconvalbest = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                  let valueScale = getState(config.thirdScreensaverEntity.ScreensaverEntity).val;
          
                                  if (iconvalmin == 0 && iconvalmax == 1) {
                                      vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                  } else {
                                      if (iconvalbest == iconvalmin) {
                                          valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                      } else {
                                          if (valueScale < iconvalbest) {
                                              valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                          } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                              valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                          } else {
                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                          }
                                      }
                                      let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                      if (Debug) console.log(valueScaletemp);
                                      switch (valueScaletemp) {
                                          case '0':
                                              vwIconColor[3] = rgb_dec565(colorScale0);
                                              break;
                                          case '1':
                                              vwIconColor[3] = rgb_dec565(colorScale1);
                                              break;
                                          case '2':
                                              vwIconColor[3] = rgb_dec565(colorScale2);
                                              break;
                                          case '3':
                                              vwIconColor[3] = rgb_dec565(colorScale3);
                                              break;
                                          case '4':
                                              vwIconColor[3] = rgb_dec565(colorScale4);
                                              break;
                                          case '5':
                                              vwIconColor[3] = rgb_dec565(colorScale5);
                                              break;
                                          case '6':
                                              vwIconColor[3] = rgb_dec565(colorScale6);
                                              break;
                                          case '7':
                                              vwIconColor[3] = rgb_dec565(colorScale7);
                                              break;                                 
                                          case '8':
                                              vwIconColor[3] = rgb_dec565(colorScale8);
                                              break;
                                          case '9':
                                              vwIconColor[3] = rgb_dec565(colorScale9);
                                              break;
                                          case '10':
                                              vwIconColor[3] = rgb_dec565(colorScale10);
                                              break;
                                      } 
                                  }
                                  if (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                      vwIconColor[1] = rgb_dec565(config.thirdScreensaverEntity.ScreensaverEntityIconColor);
                                  }
                              } else {
                                  vwIconColor[3] = rgb_dec565(sctF2Icon);                        
                              }
                          } else {
                              vwIconColor[3] = rgb_dec565(sctF2Icon);    
                          }
          
                          if (config.fourthScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                              if (typeof getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                  vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                              } else if (typeof config.fourthScreensaverEntity.ScreensaverEntityIconColor == 'object') {
          
                                  let iconvalmin = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                  let iconvalmax = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                  let iconvalbest = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                  let valueScale = getState(config.fourthScreensaverEntity.ScreensaverEntity).val;
          
                                  if (iconvalmin == 0 && iconvalmax == 1) {
                                      vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                  } else {
                                      if (iconvalbest == iconvalmin) {
                                          valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                      } else {
                                          if (valueScale < iconvalbest) {
                                              valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                          } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                              valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                          } else {
                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                          }
                                      }
                                      let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                      if (Debug) console.log(valueScaletemp);
                                      switch (valueScaletemp) {
                                          case '0':
                                              vwIconColor[4] = rgb_dec565(colorScale0);
                                              break;
                                          case '1':
                                              vwIconColor[4] = rgb_dec565(colorScale1);
                                              break;
                                          case '2':
                                              vwIconColor[4] = rgb_dec565(colorScale2);
                                              break;
                                          case '3':
                                              vwIconColor[4] = rgb_dec565(colorScale3);
                                              break;
                                          case '4':
                                              vwIconColor[4] = rgb_dec565(colorScale4);
                                              break;
                                          case '5':
                                              vwIconColor[4] = rgb_dec565(colorScale5);
                                              break;
                                          case '6':
                                              vwIconColor[4] = rgb_dec565(colorScale6);
                                              break;
                                          case '7':
                                              vwIconColor[4] = rgb_dec565(colorScale7);
                                              break;                                 
                                          case '8':
                                              vwIconColor[4] = rgb_dec565(colorScale8);
                                              break;
                                          case '9':
                                              vwIconColor[4] = rgb_dec565(colorScale9);
                                              break;
                                          case '10':
                                              vwIconColor[4] = rgb_dec565(colorScale10);
                                              break;
                                      } 
                                  }
                                  if (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                      vwIconColor[1] = rgb_dec565(config.fourthScreensaverEntity.ScreensaverEntityIconColor);
                                  }
                              } else {
                                  vwIconColor[4] = rgb_dec565(sctF2Icon);                        
                              }
                          } else {
                              vwIconColor[4] = rgb_dec565(sctF2Icon);    
                          }
                      }
          
                      //AltLayout
                      if (config.alternativeScreensaverLayout) {
                          payloadString += parseInt(getState(config.fourthScreensaverEntity.ScreensaverEntity).val) + '~'; 
                          payloadString += config.fourthScreensaverEntity.ScreensaverEntityUnitText + '~'
                      } else {
                          payloadString += '~~'            
                      }
                      
                      let hwBtn1Col: any = config.mrIcon1ScreensaverEntity.ScreensaverEntityOffColor;
                      if (config.mrIcon1ScreensaverEntity.ScreensaverEntity != null) {
                          if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                              let hwBtn1: string = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                              if (hwBtn1 == 'ON') {
                                  hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                              }
                              payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                          } else if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                              let hwBtn1: boolean = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                              if (hwBtn1) {
                                  hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                              }
                              payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                          }  
                      } else {
                          hwBtn1Col = Black;
                          payloadString += '~~';
                      }
          
                      let hwBtn2Col: any = config.mrIcon2ScreensaverEntity.ScreensaverEntityOffColor;
                      if (config.mrIcon2ScreensaverEntity.ScreensaverEntity != null) {
                          if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                              let hwBtn2: string = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                              if (hwBtn2 == 'ON') {
                                  hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;                
                              }
                              payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                          } else if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                              let hwBtn2: boolean = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                              if (hwBtn2) {
                                  hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;               
                              }
                              payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                          }  
                      } else {
                          hwBtn2Col = Black;
                          payloadString += '~~';
                      }
                      HandleScreensaverColors();
                      
                      SendToPanel(<Payload>{ payload: payloadString });
                      
                  }
              } catch (err) {
                  console.log('HandleScreensaverUpdate: ' + err.message);
              }        
          }
          

          Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
          https://github.com/joBr99/nspanel-lovelace-ui/wiki

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          C N 2 Antworten Letzte Antwort
          0
          • ArmilarA Armilar

            @armilar sagte in SONOFF NSPanel mit Lovelace UI:

            @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

            Ich würde den 3 zusätzlichen Icons im Screensaver eine feste Farbe geben. Das funktioniert leider nicht. mit val_min/max geht´s. Eine feste Farbe jedoch nicht.

            Da fehlt in der Tat noch an einer Stelle der Code für jemanden wie dich :blush:

            Baue ich ein für die nächste Version

            @nevermind

            Darfst aber gerne vorher einen Test machen... --> nachfolgende Funktion austauschen...

            function HandleScreensaverUpdate(): void {
                try {
                    if (screensaverEnabled && config.weatherEntity != null && existsObject(config.weatherEntity)) {
                        var icon = getState(config.weatherEntity + '.ICON').val;
            
                        let temperature =
                            existsState(config.weatherEntity + '.ACTUAL') ? getState(config.weatherEntity + '.ACTUAL').val :
                                existsState(config.weatherEntity + '.TEMP') ? getState(config.weatherEntity + '.TEMP').val : 'null';
            
                        if (config.alternativeScreensaverLayout) {
                            temperature = parseInt(Math.round(temperature).toFixed());
                        }
            
                        let payloadString =
                            'weatherUpdate~' + Icons.GetIcon(GetAccuWeatherIcon(parseInt(icon))) + '~'
                            + temperature + ' ' + config.temperatureUnit + '~';
            
                        vwIconColor[0] = GetAccuWeatherIconColor(parseInt(icon));
                        if (Debug) console.log(GetAccuWeatherIconColor(parseInt(icon)));
            
                        if (weatherForecast) {
                            // Accu-Weather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                            for (let i = 2; i < 6; i++) {
                                let TempMax = getState('accuweather.0.Summary.TempMax_d' + i).val;
                                let DayOfWeek = getState('accuweather.0.Summary.DayOfWeek_d' + i).val;
                                let WeatherIcon = GetAccuWeatherIcon(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                vwIconColor[i-1] = GetAccuWeatherIconColor(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                if (Debug) console.log(vwIconColor[i-1]);
                                payloadString += DayOfWeek + '~' + Icons.GetIcon(WeatherIcon) + '~' + TempMax + ' ' + config.temperatureUnit + '~';
                            }
                        } else {
                            payloadString += GetScreenSaverEntityString(config.firstScreensaverEntity);
                            payloadString += GetScreenSaverEntityString(config.secondScreensaverEntity);
                            payloadString += GetScreenSaverEntityString(config.thirdScreensaverEntity);
                            payloadString += GetScreenSaverEntityString(config.fourthScreensaverEntity);
                            
                            const colorScale0:  RGB = { red:   99, green: 190, blue: 123 };
                            const colorScale1:  RGB = { red:  129, green: 199, blue: 126 };
                            const colorScale2:  RGB = { red:  161, green: 208, blue: 127 };
                            const colorScale3:  RGB = { red:  129, green: 217, blue: 126 };
                            const colorScale4:  RGB = { red:  222, green: 226, blue: 131 };
                            const colorScale5:  RGB = { red:  254, green: 235, blue: 132 };
                            const colorScale6:  RGB = { red:  255, green: 210, blue: 129 };
                            const colorScale7:  RGB = { red:  251, green: 185, blue: 124 };
                            const colorScale8:  RGB = { red:  251, green: 158, blue: 117 };
                            const colorScale9:  RGB = { red:  248, green: 131, blue: 111 };
                            const colorScale10: RGB = { red:  248, green: 105, blue: 107 };
            
                            if (config.firstScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                if (typeof getState(config.firstScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                    vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                } else if (typeof config.firstScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                                    let iconvalmin = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                    let iconvalmax = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                    let iconvalbest = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                    let valueScale = getState(config.firstScreensaverEntity.ScreensaverEntity).val;
            
                                    if (iconvalmin == 0 && iconvalmax == 1) {
                                        vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                    } else {
                                        if (iconvalbest == iconvalmin) {
                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                        } else {
                                            if (valueScale < iconvalbest) {
                                                valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                            } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                            } else {
                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                            }
                                        }
                                        let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                        if (Debug) console.log(valueScaletemp);
                                        switch (valueScaletemp) {
                                            case '0':
                                                vwIconColor[1] = rgb_dec565(colorScale0);
                                                break;
                                            case '1':
                                                vwIconColor[1] = rgb_dec565(colorScale1);
                                                break;
                                            case '2':
                                                vwIconColor[1] = rgb_dec565(colorScale2);
                                                break;
                                            case '3':
                                                vwIconColor[1] = rgb_dec565(colorScale3);
                                                break;
                                            case '4':
                                                vwIconColor[1] = rgb_dec565(colorScale4);
                                                break;
                                            case '5':
                                                vwIconColor[1] = rgb_dec565(colorScale5);
                                                break;
                                            case '6':
                                                vwIconColor[1] = rgb_dec565(colorScale6);
                                                break;
                                            case '7':
                                                vwIconColor[1] = rgb_dec565(colorScale7);
                                                break;                                 
                                            case '8':
                                                vwIconColor[1] = rgb_dec565(colorScale8);
                                                break;
                                            case '9':
                                                vwIconColor[1] = rgb_dec565(colorScale9);
                                                break;
                                            case '10':
                                                vwIconColor[1] = rgb_dec565(colorScale10);
                                                break;
                                        } 
                                    }
                                    if (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                        vwIconColor[1] = rgb_dec565(config.firstScreensaverEntity.ScreensaverEntityIconColor);
                                    }
                                } else {
                                    vwIconColor[1] = rgb_dec565(sctF1Icon);
                                }
                            } else {
                                vwIconColor[1] = rgb_dec565(sctF1Icon);    
                            }
            
                            if (config.secondScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                if (typeof getState(config.secondScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                    vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                } else if (typeof config.secondScreensaverEntity.ScreensaverEntityIconColor == 'object') {
            
                                    let iconvalmin = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                    let iconvalmax = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                    let iconvalbest = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                    let valueScale = getState(config.secondScreensaverEntity.ScreensaverEntity).val;
            
                                    if (iconvalmin == 0 && iconvalmax == 1) {
                                        vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                    } else {
                                        if (iconvalbest == iconvalmin) {
                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                        } else {
                                            if (valueScale < iconvalbest) {
                                                valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                            } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                            } else {
                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                            }
                                        }
                                        let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                        if (Debug) console.log(valueScaletemp);
                                        switch (valueScaletemp) {
                                            case '0':
                                                vwIconColor[2] = rgb_dec565(colorScale0);
                                                break;
                                            case '1':
                                                vwIconColor[2] = rgb_dec565(colorScale1);
                                                break;
                                            case '2':
                                                vwIconColor[2] = rgb_dec565(colorScale2);
                                                break;
                                            case '3':
                                                vwIconColor[2] = rgb_dec565(colorScale3);
                                                break;
                                            case '4':
                                                vwIconColor[2] = rgb_dec565(colorScale4);
                                                break;
                                            case '5':
                                                vwIconColor[2] = rgb_dec565(colorScale5);
                                                break;
                                            case '6':
                                                vwIconColor[2] = rgb_dec565(colorScale6);
                                                break;
                                            case '7':
                                                vwIconColor[2] = rgb_dec565(colorScale7);
                                                break;                                 
                                            case '8':
                                                vwIconColor[2] = rgb_dec565(colorScale8);
                                                break;
                                            case '9':
                                                vwIconColor[2] = rgb_dec565(colorScale9);
                                                break;
                                            case '10':
                                                vwIconColor[2] = rgb_dec565(colorScale10);
                                                break;
                                        } 
                                    }
                                    if (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                        vwIconColor[1] = rgb_dec565(config.secondScreensaverEntity.ScreensaverEntityIconColor);
                                    }
                                } else {
                                    vwIconColor[2] = rgb_dec565(sctF2Icon);                        
                                }
                            } else {
                                vwIconColor[2] = rgb_dec565(sctF2Icon);    
                            }
            
                            if (config.thirdScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                if (typeof getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                    vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                } else if (typeof config.thirdScreensaverEntity.ScreensaverEntityIconColor == 'object') {
            
                                    let iconvalmin = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                    let iconvalmax = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                    let iconvalbest = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                    let valueScale = getState(config.thirdScreensaverEntity.ScreensaverEntity).val;
            
                                    if (iconvalmin == 0 && iconvalmax == 1) {
                                        vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                    } else {
                                        if (iconvalbest == iconvalmin) {
                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                        } else {
                                            if (valueScale < iconvalbest) {
                                                valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                            } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                            } else {
                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                            }
                                        }
                                        let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                        if (Debug) console.log(valueScaletemp);
                                        switch (valueScaletemp) {
                                            case '0':
                                                vwIconColor[3] = rgb_dec565(colorScale0);
                                                break;
                                            case '1':
                                                vwIconColor[3] = rgb_dec565(colorScale1);
                                                break;
                                            case '2':
                                                vwIconColor[3] = rgb_dec565(colorScale2);
                                                break;
                                            case '3':
                                                vwIconColor[3] = rgb_dec565(colorScale3);
                                                break;
                                            case '4':
                                                vwIconColor[3] = rgb_dec565(colorScale4);
                                                break;
                                            case '5':
                                                vwIconColor[3] = rgb_dec565(colorScale5);
                                                break;
                                            case '6':
                                                vwIconColor[3] = rgb_dec565(colorScale6);
                                                break;
                                            case '7':
                                                vwIconColor[3] = rgb_dec565(colorScale7);
                                                break;                                 
                                            case '8':
                                                vwIconColor[3] = rgb_dec565(colorScale8);
                                                break;
                                            case '9':
                                                vwIconColor[3] = rgb_dec565(colorScale9);
                                                break;
                                            case '10':
                                                vwIconColor[3] = rgb_dec565(colorScale10);
                                                break;
                                        } 
                                    }
                                    if (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                        vwIconColor[1] = rgb_dec565(config.thirdScreensaverEntity.ScreensaverEntityIconColor);
                                    }
                                } else {
                                    vwIconColor[3] = rgb_dec565(sctF2Icon);                        
                                }
                            } else {
                                vwIconColor[3] = rgb_dec565(sctF2Icon);    
                            }
            
                            if (config.fourthScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                if (typeof getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                    vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                } else if (typeof config.fourthScreensaverEntity.ScreensaverEntityIconColor == 'object') {
            
                                    let iconvalmin = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                    let iconvalmax = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                    let iconvalbest = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                    let valueScale = getState(config.fourthScreensaverEntity.ScreensaverEntity).val;
            
                                    if (iconvalmin == 0 && iconvalmax == 1) {
                                        vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                    } else {
                                        if (iconvalbest == iconvalmin) {
                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                        } else {
                                            if (valueScale < iconvalbest) {
                                                valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                            } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                            } else {
                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                            }
                                        }
                                        let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                        if (Debug) console.log(valueScaletemp);
                                        switch (valueScaletemp) {
                                            case '0':
                                                vwIconColor[4] = rgb_dec565(colorScale0);
                                                break;
                                            case '1':
                                                vwIconColor[4] = rgb_dec565(colorScale1);
                                                break;
                                            case '2':
                                                vwIconColor[4] = rgb_dec565(colorScale2);
                                                break;
                                            case '3':
                                                vwIconColor[4] = rgb_dec565(colorScale3);
                                                break;
                                            case '4':
                                                vwIconColor[4] = rgb_dec565(colorScale4);
                                                break;
                                            case '5':
                                                vwIconColor[4] = rgb_dec565(colorScale5);
                                                break;
                                            case '6':
                                                vwIconColor[4] = rgb_dec565(colorScale6);
                                                break;
                                            case '7':
                                                vwIconColor[4] = rgb_dec565(colorScale7);
                                                break;                                 
                                            case '8':
                                                vwIconColor[4] = rgb_dec565(colorScale8);
                                                break;
                                            case '9':
                                                vwIconColor[4] = rgb_dec565(colorScale9);
                                                break;
                                            case '10':
                                                vwIconColor[4] = rgb_dec565(colorScale10);
                                                break;
                                        } 
                                    }
                                    if (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                        vwIconColor[1] = rgb_dec565(config.fourthScreensaverEntity.ScreensaverEntityIconColor);
                                    }
                                } else {
                                    vwIconColor[4] = rgb_dec565(sctF2Icon);                        
                                }
                            } else {
                                vwIconColor[4] = rgb_dec565(sctF2Icon);    
                            }
                        }
            
                        //AltLayout
                        if (config.alternativeScreensaverLayout) {
                            payloadString += parseInt(getState(config.fourthScreensaverEntity.ScreensaverEntity).val) + '~'; 
                            payloadString += config.fourthScreensaverEntity.ScreensaverEntityUnitText + '~'
                        } else {
                            payloadString += '~~'            
                        }
                        
                        let hwBtn1Col: any = config.mrIcon1ScreensaverEntity.ScreensaverEntityOffColor;
                        if (config.mrIcon1ScreensaverEntity.ScreensaverEntity != null) {
                            if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                                let hwBtn1: string = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                                if (hwBtn1 == 'ON') {
                                    hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                                }
                                payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                            } else if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                                let hwBtn1: boolean = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                                if (hwBtn1) {
                                    hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                                }
                                payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                            }  
                        } else {
                            hwBtn1Col = Black;
                            payloadString += '~~';
                        }
            
                        let hwBtn2Col: any = config.mrIcon2ScreensaverEntity.ScreensaverEntityOffColor;
                        if (config.mrIcon2ScreensaverEntity.ScreensaverEntity != null) {
                            if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                                let hwBtn2: string = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                                if (hwBtn2 == 'ON') {
                                    hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;                
                                }
                                payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                            } else if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                                let hwBtn2: boolean = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                                if (hwBtn2) {
                                    hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;               
                                }
                                payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                            }  
                        } else {
                            hwBtn2Col = Black;
                            payloadString += '~~';
                        }
                        HandleScreensaverColors();
                        
                        SendToPanel(<Payload>{ payload: payloadString });
                        
                    }
                } catch (err) {
                    console.log('HandleScreensaverUpdate: ' + err.message);
                }        
            }
            

            C Offline
            C Offline
            chiob314
            schrieb am zuletzt editiert von
            #339

            @armilar
            Merci für die Unterstützung! Ich bin einfach kein Entwickler, merk ich. Danke deswegen für die Unterstützung!

            Was bleibt ist das Phänomen mit der Sprache. Im Wetterforecast werden die Wochentage auch Englisch angezeigt.

            Hast du da noch irgendwelche Erleuchtungen?
            Danke und Grüße
            Bastian

            ArmilarA 2 Antworten Letzte Antwort
            0
            • ArmilarA Armilar

              @armilar sagte in SONOFF NSPanel mit Lovelace UI:

              @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

              Ich würde den 3 zusätzlichen Icons im Screensaver eine feste Farbe geben. Das funktioniert leider nicht. mit val_min/max geht´s. Eine feste Farbe jedoch nicht.

              Da fehlt in der Tat noch an einer Stelle der Code für jemanden wie dich :blush:

              Baue ich ein für die nächste Version

              @nevermind

              Darfst aber gerne vorher einen Test machen... --> nachfolgende Funktion austauschen...

              function HandleScreensaverUpdate(): void {
                  try {
                      if (screensaverEnabled && config.weatherEntity != null && existsObject(config.weatherEntity)) {
                          var icon = getState(config.weatherEntity + '.ICON').val;
              
                          let temperature =
                              existsState(config.weatherEntity + '.ACTUAL') ? getState(config.weatherEntity + '.ACTUAL').val :
                                  existsState(config.weatherEntity + '.TEMP') ? getState(config.weatherEntity + '.TEMP').val : 'null';
              
                          if (config.alternativeScreensaverLayout) {
                              temperature = parseInt(Math.round(temperature).toFixed());
                          }
              
                          let payloadString =
                              'weatherUpdate~' + Icons.GetIcon(GetAccuWeatherIcon(parseInt(icon))) + '~'
                              + temperature + ' ' + config.temperatureUnit + '~';
              
                          vwIconColor[0] = GetAccuWeatherIconColor(parseInt(icon));
                          if (Debug) console.log(GetAccuWeatherIconColor(parseInt(icon)));
              
                          if (weatherForecast) {
                              // Accu-Weather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                              for (let i = 2; i < 6; i++) {
                                  let TempMax = getState('accuweather.0.Summary.TempMax_d' + i).val;
                                  let DayOfWeek = getState('accuweather.0.Summary.DayOfWeek_d' + i).val;
                                  let WeatherIcon = GetAccuWeatherIcon(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                  vwIconColor[i-1] = GetAccuWeatherIconColor(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                  if (Debug) console.log(vwIconColor[i-1]);
                                  payloadString += DayOfWeek + '~' + Icons.GetIcon(WeatherIcon) + '~' + TempMax + ' ' + config.temperatureUnit + '~';
                              }
                          } else {
                              payloadString += GetScreenSaverEntityString(config.firstScreensaverEntity);
                              payloadString += GetScreenSaverEntityString(config.secondScreensaverEntity);
                              payloadString += GetScreenSaverEntityString(config.thirdScreensaverEntity);
                              payloadString += GetScreenSaverEntityString(config.fourthScreensaverEntity);
                              
                              const colorScale0:  RGB = { red:   99, green: 190, blue: 123 };
                              const colorScale1:  RGB = { red:  129, green: 199, blue: 126 };
                              const colorScale2:  RGB = { red:  161, green: 208, blue: 127 };
                              const colorScale3:  RGB = { red:  129, green: 217, blue: 126 };
                              const colorScale4:  RGB = { red:  222, green: 226, blue: 131 };
                              const colorScale5:  RGB = { red:  254, green: 235, blue: 132 };
                              const colorScale6:  RGB = { red:  255, green: 210, blue: 129 };
                              const colorScale7:  RGB = { red:  251, green: 185, blue: 124 };
                              const colorScale8:  RGB = { red:  251, green: 158, blue: 117 };
                              const colorScale9:  RGB = { red:  248, green: 131, blue: 111 };
                              const colorScale10: RGB = { red:  248, green: 105, blue: 107 };
              
                              if (config.firstScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                  if (typeof getState(config.firstScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                      vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                  } else if (typeof config.firstScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                                      let iconvalmin = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                      let iconvalmax = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                      let iconvalbest = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                      let valueScale = getState(config.firstScreensaverEntity.ScreensaverEntity).val;
              
                                      if (iconvalmin == 0 && iconvalmax == 1) {
                                          vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                      } else {
                                          if (iconvalbest == iconvalmin) {
                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                          } else {
                                              if (valueScale < iconvalbest) {
                                                  valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                              } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                  valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                              } else {
                                                valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                              }
                                          }
                                          let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                          if (Debug) console.log(valueScaletemp);
                                          switch (valueScaletemp) {
                                              case '0':
                                                  vwIconColor[1] = rgb_dec565(colorScale0);
                                                  break;
                                              case '1':
                                                  vwIconColor[1] = rgb_dec565(colorScale1);
                                                  break;
                                              case '2':
                                                  vwIconColor[1] = rgb_dec565(colorScale2);
                                                  break;
                                              case '3':
                                                  vwIconColor[1] = rgb_dec565(colorScale3);
                                                  break;
                                              case '4':
                                                  vwIconColor[1] = rgb_dec565(colorScale4);
                                                  break;
                                              case '5':
                                                  vwIconColor[1] = rgb_dec565(colorScale5);
                                                  break;
                                              case '6':
                                                  vwIconColor[1] = rgb_dec565(colorScale6);
                                                  break;
                                              case '7':
                                                  vwIconColor[1] = rgb_dec565(colorScale7);
                                                  break;                                 
                                              case '8':
                                                  vwIconColor[1] = rgb_dec565(colorScale8);
                                                  break;
                                              case '9':
                                                  vwIconColor[1] = rgb_dec565(colorScale9);
                                                  break;
                                              case '10':
                                                  vwIconColor[1] = rgb_dec565(colorScale10);
                                                  break;
                                          } 
                                      }
                                      if (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                          vwIconColor[1] = rgb_dec565(config.firstScreensaverEntity.ScreensaverEntityIconColor);
                                      }
                                  } else {
                                      vwIconColor[1] = rgb_dec565(sctF1Icon);
                                  }
                              } else {
                                  vwIconColor[1] = rgb_dec565(sctF1Icon);    
                              }
              
                              if (config.secondScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                  if (typeof getState(config.secondScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                      vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                  } else if (typeof config.secondScreensaverEntity.ScreensaverEntityIconColor == 'object') {
              
                                      let iconvalmin = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                      let iconvalmax = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                      let iconvalbest = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                      let valueScale = getState(config.secondScreensaverEntity.ScreensaverEntity).val;
              
                                      if (iconvalmin == 0 && iconvalmax == 1) {
                                          vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                      } else {
                                          if (iconvalbest == iconvalmin) {
                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                          } else {
                                              if (valueScale < iconvalbest) {
                                                  valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                              } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                  valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                              } else {
                                                valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                              }
                                          }
                                          let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                          if (Debug) console.log(valueScaletemp);
                                          switch (valueScaletemp) {
                                              case '0':
                                                  vwIconColor[2] = rgb_dec565(colorScale0);
                                                  break;
                                              case '1':
                                                  vwIconColor[2] = rgb_dec565(colorScale1);
                                                  break;
                                              case '2':
                                                  vwIconColor[2] = rgb_dec565(colorScale2);
                                                  break;
                                              case '3':
                                                  vwIconColor[2] = rgb_dec565(colorScale3);
                                                  break;
                                              case '4':
                                                  vwIconColor[2] = rgb_dec565(colorScale4);
                                                  break;
                                              case '5':
                                                  vwIconColor[2] = rgb_dec565(colorScale5);
                                                  break;
                                              case '6':
                                                  vwIconColor[2] = rgb_dec565(colorScale6);
                                                  break;
                                              case '7':
                                                  vwIconColor[2] = rgb_dec565(colorScale7);
                                                  break;                                 
                                              case '8':
                                                  vwIconColor[2] = rgb_dec565(colorScale8);
                                                  break;
                                              case '9':
                                                  vwIconColor[2] = rgb_dec565(colorScale9);
                                                  break;
                                              case '10':
                                                  vwIconColor[2] = rgb_dec565(colorScale10);
                                                  break;
                                          } 
                                      }
                                      if (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                          vwIconColor[1] = rgb_dec565(config.secondScreensaverEntity.ScreensaverEntityIconColor);
                                      }
                                  } else {
                                      vwIconColor[2] = rgb_dec565(sctF2Icon);                        
                                  }
                              } else {
                                  vwIconColor[2] = rgb_dec565(sctF2Icon);    
                              }
              
                              if (config.thirdScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                  if (typeof getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                      vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                  } else if (typeof config.thirdScreensaverEntity.ScreensaverEntityIconColor == 'object') {
              
                                      let iconvalmin = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                      let iconvalmax = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                      let iconvalbest = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                      let valueScale = getState(config.thirdScreensaverEntity.ScreensaverEntity).val;
              
                                      if (iconvalmin == 0 && iconvalmax == 1) {
                                          vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                      } else {
                                          if (iconvalbest == iconvalmin) {
                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                          } else {
                                              if (valueScale < iconvalbest) {
                                                  valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                              } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                  valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                              } else {
                                                valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                              }
                                          }
                                          let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                          if (Debug) console.log(valueScaletemp);
                                          switch (valueScaletemp) {
                                              case '0':
                                                  vwIconColor[3] = rgb_dec565(colorScale0);
                                                  break;
                                              case '1':
                                                  vwIconColor[3] = rgb_dec565(colorScale1);
                                                  break;
                                              case '2':
                                                  vwIconColor[3] = rgb_dec565(colorScale2);
                                                  break;
                                              case '3':
                                                  vwIconColor[3] = rgb_dec565(colorScale3);
                                                  break;
                                              case '4':
                                                  vwIconColor[3] = rgb_dec565(colorScale4);
                                                  break;
                                              case '5':
                                                  vwIconColor[3] = rgb_dec565(colorScale5);
                                                  break;
                                              case '6':
                                                  vwIconColor[3] = rgb_dec565(colorScale6);
                                                  break;
                                              case '7':
                                                  vwIconColor[3] = rgb_dec565(colorScale7);
                                                  break;                                 
                                              case '8':
                                                  vwIconColor[3] = rgb_dec565(colorScale8);
                                                  break;
                                              case '9':
                                                  vwIconColor[3] = rgb_dec565(colorScale9);
                                                  break;
                                              case '10':
                                                  vwIconColor[3] = rgb_dec565(colorScale10);
                                                  break;
                                          } 
                                      }
                                      if (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                          vwIconColor[1] = rgb_dec565(config.thirdScreensaverEntity.ScreensaverEntityIconColor);
                                      }
                                  } else {
                                      vwIconColor[3] = rgb_dec565(sctF2Icon);                        
                                  }
                              } else {
                                  vwIconColor[3] = rgb_dec565(sctF2Icon);    
                              }
              
                              if (config.fourthScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                  if (typeof getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                      vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                  } else if (typeof config.fourthScreensaverEntity.ScreensaverEntityIconColor == 'object') {
              
                                      let iconvalmin = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                      let iconvalmax = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                      let iconvalbest = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                      let valueScale = getState(config.fourthScreensaverEntity.ScreensaverEntity).val;
              
                                      if (iconvalmin == 0 && iconvalmax == 1) {
                                          vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                      } else {
                                          if (iconvalbest == iconvalmin) {
                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                          } else {
                                              if (valueScale < iconvalbest) {
                                                  valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                              } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                  valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                              } else {
                                                valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                              }
                                          }
                                          let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                          if (Debug) console.log(valueScaletemp);
                                          switch (valueScaletemp) {
                                              case '0':
                                                  vwIconColor[4] = rgb_dec565(colorScale0);
                                                  break;
                                              case '1':
                                                  vwIconColor[4] = rgb_dec565(colorScale1);
                                                  break;
                                              case '2':
                                                  vwIconColor[4] = rgb_dec565(colorScale2);
                                                  break;
                                              case '3':
                                                  vwIconColor[4] = rgb_dec565(colorScale3);
                                                  break;
                                              case '4':
                                                  vwIconColor[4] = rgb_dec565(colorScale4);
                                                  break;
                                              case '5':
                                                  vwIconColor[4] = rgb_dec565(colorScale5);
                                                  break;
                                              case '6':
                                                  vwIconColor[4] = rgb_dec565(colorScale6);
                                                  break;
                                              case '7':
                                                  vwIconColor[4] = rgb_dec565(colorScale7);
                                                  break;                                 
                                              case '8':
                                                  vwIconColor[4] = rgb_dec565(colorScale8);
                                                  break;
                                              case '9':
                                                  vwIconColor[4] = rgb_dec565(colorScale9);
                                                  break;
                                              case '10':
                                                  vwIconColor[4] = rgb_dec565(colorScale10);
                                                  break;
                                          } 
                                      }
                                      if (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                          vwIconColor[1] = rgb_dec565(config.fourthScreensaverEntity.ScreensaverEntityIconColor);
                                      }
                                  } else {
                                      vwIconColor[4] = rgb_dec565(sctF2Icon);                        
                                  }
                              } else {
                                  vwIconColor[4] = rgb_dec565(sctF2Icon);    
                              }
                          }
              
                          //AltLayout
                          if (config.alternativeScreensaverLayout) {
                              payloadString += parseInt(getState(config.fourthScreensaverEntity.ScreensaverEntity).val) + '~'; 
                              payloadString += config.fourthScreensaverEntity.ScreensaverEntityUnitText + '~'
                          } else {
                              payloadString += '~~'            
                          }
                          
                          let hwBtn1Col: any = config.mrIcon1ScreensaverEntity.ScreensaverEntityOffColor;
                          if (config.mrIcon1ScreensaverEntity.ScreensaverEntity != null) {
                              if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                                  let hwBtn1: string = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                                  if (hwBtn1 == 'ON') {
                                      hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                                  }
                                  payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                              } else if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                                  let hwBtn1: boolean = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                                  if (hwBtn1) {
                                      hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                                  }
                                  payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                              }  
                          } else {
                              hwBtn1Col = Black;
                              payloadString += '~~';
                          }
              
                          let hwBtn2Col: any = config.mrIcon2ScreensaverEntity.ScreensaverEntityOffColor;
                          if (config.mrIcon2ScreensaverEntity.ScreensaverEntity != null) {
                              if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                                  let hwBtn2: string = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                                  if (hwBtn2 == 'ON') {
                                      hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;                
                                  }
                                  payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                              } else if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                                  let hwBtn2: boolean = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                                  if (hwBtn2) {
                                      hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;               
                                  }
                                  payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                              }  
                          } else {
                              hwBtn2Col = Black;
                              payloadString += '~~';
                          }
                          HandleScreensaverColors();
                          
                          SendToPanel(<Payload>{ payload: payloadString });
                          
                      }
                  } catch (err) {
                      console.log('HandleScreensaverUpdate: ' + err.message);
                  }        
              }
              

              N Offline
              N Offline
              nevermind
              schrieb am zuletzt editiert von
              #340

              @armilar

              Danke :)

              Haut aber noch nicht ganz hin. Es nimmt immer die Farbe von fourthScreensaverEntity und zeigt diese bei firstScreensaverEntity an. D.h. 2-4 sind weiterhin ohne Farbe.

              ArmilarA 1 Antwort Letzte Antwort
              0
              • C chiob314

                @armilar
                Merci für die Unterstützung! Ich bin einfach kein Entwickler, merk ich. Danke deswegen für die Unterstützung!

                Was bleibt ist das Phänomen mit der Sprache. Im Wetterforecast werden die Wochentage auch Englisch angezeigt.

                Hast du da noch irgendwelche Erleuchtungen?
                Danke und Grüße
                Bastian

                ArmilarA Offline
                ArmilarA Offline
                Armilar
                Most Active Forum Testing
                schrieb am zuletzt editiert von
                #341

                @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                @armilar
                Merci für die Unterstützung! Ich bin einfach kein Entwickler, merk ich. Danke deswegen für die Unterstützung!

                Was bleibt ist das Phänomen mit der Sprache. Im Wetterforecast werden die Wochentage auch Englisch angezeigt.

                Hast du da noch irgendwelche Erleuchtungen?
                Danke und Grüße
                Bastian

                Schätze es liegt wirklich an deinem System. Auch accuweather würde es z.B. bei accuweather.0.Summary.DayOfWeek bei dir als Englisch interpretieren. Ist bei mir deutsch. Suche mal, was man noch alles umstellen kann.

                Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                C 2 Antworten Letzte Antwort
                0
                • ArmilarA Armilar

                  @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                  @armilar
                  Merci für die Unterstützung! Ich bin einfach kein Entwickler, merk ich. Danke deswegen für die Unterstützung!

                  Was bleibt ist das Phänomen mit der Sprache. Im Wetterforecast werden die Wochentage auch Englisch angezeigt.

                  Hast du da noch irgendwelche Erleuchtungen?
                  Danke und Grüße
                  Bastian

                  Schätze es liegt wirklich an deinem System. Auch accuweather würde es z.B. bei accuweather.0.Summary.DayOfWeek bei dir als Englisch interpretieren. Ist bei mir deutsch. Suche mal, was man noch alles umstellen kann.

                  C Offline
                  C Offline
                  chiob314
                  schrieb am zuletzt editiert von
                  #342

                  @armilar
                  c3efe73d-bd84-4041-9bb5-990cf7b1c68d-grafik.png

                  Ja ist so.... :-/

                  1 Antwort Letzte Antwort
                  0
                  • N nevermind

                    @armilar

                    Danke :)

                    Haut aber noch nicht ganz hin. Es nimmt immer die Farbe von fourthScreensaverEntity und zeigt diese bei firstScreensaverEntity an. D.h. 2-4 sind weiterhin ohne Farbe.

                    ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    schrieb am zuletzt editiert von
                    #343

                    @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

                    @armilar

                    Danke :)

                    Haut aber noch nicht ganz hin. Es nimmt immer die Farbe von fourthScreensaverEntity und zeigt diese bei firstScreensaverEntity an. D.h. 2-4 sind weiterhin ohne Farbe.

                    Was soll ich sagen: Bugfixing und gleichzeitig Essen ;-)

                    Jetzt sollte es passen:

                    function HandleScreensaverUpdate(): void {
                        try {
                            if (screensaverEnabled && config.weatherEntity != null && existsObject(config.weatherEntity)) {
                                var icon = getState(config.weatherEntity + '.ICON').val;
                    
                                let temperature =
                                    existsState(config.weatherEntity + '.ACTUAL') ? getState(config.weatherEntity + '.ACTUAL').val :
                                        existsState(config.weatherEntity + '.TEMP') ? getState(config.weatherEntity + '.TEMP').val : 'null';
                    
                                if (config.alternativeScreensaverLayout) {
                                    temperature = parseInt(Math.round(temperature).toFixed());
                                }
                    
                                let payloadString =
                                    'weatherUpdate~' + Icons.GetIcon(GetAccuWeatherIcon(parseInt(icon))) + '~'
                                    + temperature + ' ' + config.temperatureUnit + '~';
                    
                                vwIconColor[0] = GetAccuWeatherIconColor(parseInt(icon));
                                if (Debug) console.log(GetAccuWeatherIconColor(parseInt(icon)));
                    
                                if (weatherForecast) {
                                    // Accu-Weather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                                    for (let i = 2; i < 6; i++) {
                                        let TempMax = getState('accuweather.0.Summary.TempMax_d' + i).val;
                                        let DayOfWeek = getState('accuweather.0.Summary.DayOfWeek_d' + i).val;
                                        let WeatherIcon = GetAccuWeatherIcon(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                        vwIconColor[i-1] = GetAccuWeatherIconColor(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                        if (Debug) console.log(vwIconColor[i-1]);
                                        payloadString += DayOfWeek + '~' + Icons.GetIcon(WeatherIcon) + '~' + TempMax + ' ' + config.temperatureUnit + '~';
                                    }
                                } else {
                                    payloadString += GetScreenSaverEntityString(config.firstScreensaverEntity);
                                    payloadString += GetScreenSaverEntityString(config.secondScreensaverEntity);
                                    payloadString += GetScreenSaverEntityString(config.thirdScreensaverEntity);
                                    payloadString += GetScreenSaverEntityString(config.fourthScreensaverEntity);
                                    
                                    const colorScale0:  RGB = { red:   99, green: 190, blue: 123 };
                                    const colorScale1:  RGB = { red:  129, green: 199, blue: 126 };
                                    const colorScale2:  RGB = { red:  161, green: 208, blue: 127 };
                                    const colorScale3:  RGB = { red:  129, green: 217, blue: 126 };
                                    const colorScale4:  RGB = { red:  222, green: 226, blue: 131 };
                                    const colorScale5:  RGB = { red:  254, green: 235, blue: 132 };
                                    const colorScale6:  RGB = { red:  255, green: 210, blue: 129 };
                                    const colorScale7:  RGB = { red:  251, green: 185, blue: 124 };
                                    const colorScale8:  RGB = { red:  251, green: 158, blue: 117 };
                                    const colorScale9:  RGB = { red:  248, green: 131, blue: 111 };
                                    const colorScale10: RGB = { red:  248, green: 105, blue: 107 };
                    
                                    if (config.firstScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                        if (typeof getState(config.firstScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                            vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                        } else if (typeof config.firstScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                                            let iconvalmin = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                            let iconvalmax = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                            let iconvalbest = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                            let valueScale = getState(config.firstScreensaverEntity.ScreensaverEntity).val;
                    
                                            if (iconvalmin == 0 && iconvalmax == 1) {
                                                vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                            } else {
                                                if (iconvalbest == iconvalmin) {
                                                    valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                                } else {
                                                    if (valueScale < iconvalbest) {
                                                        valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                                    } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                        valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                                    } else {
                                                      valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                                    }
                                                }
                                                let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                                if (Debug) console.log(valueScaletemp);
                                                switch (valueScaletemp) {
                                                    case '0':
                                                        vwIconColor[1] = rgb_dec565(colorScale0);
                                                        break;
                                                    case '1':
                                                        vwIconColor[1] = rgb_dec565(colorScale1);
                                                        break;
                                                    case '2':
                                                        vwIconColor[1] = rgb_dec565(colorScale2);
                                                        break;
                                                    case '3':
                                                        vwIconColor[1] = rgb_dec565(colorScale3);
                                                        break;
                                                    case '4':
                                                        vwIconColor[1] = rgb_dec565(colorScale4);
                                                        break;
                                                    case '5':
                                                        vwIconColor[1] = rgb_dec565(colorScale5);
                                                        break;
                                                    case '6':
                                                        vwIconColor[1] = rgb_dec565(colorScale6);
                                                        break;
                                                    case '7':
                                                        vwIconColor[1] = rgb_dec565(colorScale7);
                                                        break;                                 
                                                    case '8':
                                                        vwIconColor[1] = rgb_dec565(colorScale8);
                                                        break;
                                                    case '9':
                                                        vwIconColor[1] = rgb_dec565(colorScale9);
                                                        break;
                                                    case '10':
                                                        vwIconColor[1] = rgb_dec565(colorScale10);
                                                        break;
                                                } 
                                            }
                                            if (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                                vwIconColor[1] = rgb_dec565(config.firstScreensaverEntity.ScreensaverEntityIconColor);
                                            }
                                        } else {
                                            vwIconColor[1] = rgb_dec565(sctF1Icon);
                                        }
                                    } else {
                                        vwIconColor[1] = rgb_dec565(sctF1Icon);    
                                    }
                    
                                    if (config.secondScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                        if (typeof getState(config.secondScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                            vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                        } else if (typeof config.secondScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                    
                                            let iconvalmin = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                            let iconvalmax = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                            let iconvalbest = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                            let valueScale = getState(config.secondScreensaverEntity.ScreensaverEntity).val;
                    
                                            if (iconvalmin == 0 && iconvalmax == 1) {
                                                vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                            } else {
                                                if (iconvalbest == iconvalmin) {
                                                    valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                                } else {
                                                    if (valueScale < iconvalbest) {
                                                        valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                                    } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                        valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                                    } else {
                                                      valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                                    }
                                                }
                                                let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                                if (Debug) console.log(valueScaletemp);
                                                switch (valueScaletemp) {
                                                    case '0':
                                                        vwIconColor[2] = rgb_dec565(colorScale0);
                                                        break;
                                                    case '1':
                                                        vwIconColor[2] = rgb_dec565(colorScale1);
                                                        break;
                                                    case '2':
                                                        vwIconColor[2] = rgb_dec565(colorScale2);
                                                        break;
                                                    case '3':
                                                        vwIconColor[2] = rgb_dec565(colorScale3);
                                                        break;
                                                    case '4':
                                                        vwIconColor[2] = rgb_dec565(colorScale4);
                                                        break;
                                                    case '5':
                                                        vwIconColor[2] = rgb_dec565(colorScale5);
                                                        break;
                                                    case '6':
                                                        vwIconColor[2] = rgb_dec565(colorScale6);
                                                        break;
                                                    case '7':
                                                        vwIconColor[2] = rgb_dec565(colorScale7);
                                                        break;                                 
                                                    case '8':
                                                        vwIconColor[2] = rgb_dec565(colorScale8);
                                                        break;
                                                    case '9':
                                                        vwIconColor[2] = rgb_dec565(colorScale9);
                                                        break;
                                                    case '10':
                                                        vwIconColor[2] = rgb_dec565(colorScale10);
                                                        break;
                                                } 
                                            }
                                            if (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                                vwIconColor[2] = rgb_dec565(config.secondScreensaverEntity.ScreensaverEntityIconColor);
                                            }
                                        } else {
                                            vwIconColor[2] = rgb_dec565(sctF2Icon);                        
                                        }
                                    } else {
                                        vwIconColor[2] = rgb_dec565(sctF2Icon);    
                                    }
                    
                                    if (config.thirdScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                        if (typeof getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                            vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                        } else if (typeof config.thirdScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                    
                                            let iconvalmin = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                            let iconvalmax = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                            let iconvalbest = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                            let valueScale = getState(config.thirdScreensaverEntity.ScreensaverEntity).val;
                    
                                            if (iconvalmin == 0 && iconvalmax == 1) {
                                                vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                            } else {
                                                if (iconvalbest == iconvalmin) {
                                                    valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                                } else {
                                                    if (valueScale < iconvalbest) {
                                                        valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                                    } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                        valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                                    } else {
                                                      valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                                    }
                                                }
                                                let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                                if (Debug) console.log(valueScaletemp);
                                                switch (valueScaletemp) {
                                                    case '0':
                                                        vwIconColor[3] = rgb_dec565(colorScale0);
                                                        break;
                                                    case '1':
                                                        vwIconColor[3] = rgb_dec565(colorScale1);
                                                        break;
                                                    case '2':
                                                        vwIconColor[3] = rgb_dec565(colorScale2);
                                                        break;
                                                    case '3':
                                                        vwIconColor[3] = rgb_dec565(colorScale3);
                                                        break;
                                                    case '4':
                                                        vwIconColor[3] = rgb_dec565(colorScale4);
                                                        break;
                                                    case '5':
                                                        vwIconColor[3] = rgb_dec565(colorScale5);
                                                        break;
                                                    case '6':
                                                        vwIconColor[3] = rgb_dec565(colorScale6);
                                                        break;
                                                    case '7':
                                                        vwIconColor[3] = rgb_dec565(colorScale7);
                                                        break;                                 
                                                    case '8':
                                                        vwIconColor[3] = rgb_dec565(colorScale8);
                                                        break;
                                                    case '9':
                                                        vwIconColor[3] = rgb_dec565(colorScale9);
                                                        break;
                                                    case '10':
                                                        vwIconColor[3] = rgb_dec565(colorScale10);
                                                        break;
                                                } 
                                            }
                                            if (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                                vwIconColor[3] = rgb_dec565(config.thirdScreensaverEntity.ScreensaverEntityIconColor);
                                            }
                                        } else {
                                            vwIconColor[3] = rgb_dec565(sctF2Icon);                        
                                        }
                                    } else {
                                        vwIconColor[3] = rgb_dec565(sctF2Icon);    
                                    }
                    
                                    if (config.fourthScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                        if (typeof getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                            vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                        } else if (typeof config.fourthScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                    
                                            let iconvalmin = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                            let iconvalmax = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                            let iconvalbest = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                            let valueScale = getState(config.fourthScreensaverEntity.ScreensaverEntity).val;
                    
                                            if (iconvalmin == 0 && iconvalmax == 1) {
                                                vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                            } else {
                                                if (iconvalbest == iconvalmin) {
                                                    valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                                } else {
                                                    if (valueScale < iconvalbest) {
                                                        valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                                    } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                        valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                                    } else {
                                                      valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                                    }
                                                }
                                                let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                                if (Debug) console.log(valueScaletemp);
                                                switch (valueScaletemp) {
                                                    case '0':
                                                        vwIconColor[4] = rgb_dec565(colorScale0);
                                                        break;
                                                    case '1':
                                                        vwIconColor[4] = rgb_dec565(colorScale1);
                                                        break;
                                                    case '2':
                                                        vwIconColor[4] = rgb_dec565(colorScale2);
                                                        break;
                                                    case '3':
                                                        vwIconColor[4] = rgb_dec565(colorScale3);
                                                        break;
                                                    case '4':
                                                        vwIconColor[4] = rgb_dec565(colorScale4);
                                                        break;
                                                    case '5':
                                                        vwIconColor[4] = rgb_dec565(colorScale5);
                                                        break;
                                                    case '6':
                                                        vwIconColor[4] = rgb_dec565(colorScale6);
                                                        break;
                                                    case '7':
                                                        vwIconColor[4] = rgb_dec565(colorScale7);
                                                        break;                                 
                                                    case '8':
                                                        vwIconColor[4] = rgb_dec565(colorScale8);
                                                        break;
                                                    case '9':
                                                        vwIconColor[4] = rgb_dec565(colorScale9);
                                                        break;
                                                    case '10':
                                                        vwIconColor[4] = rgb_dec565(colorScale10);
                                                        break;
                                                } 
                                            }
                                            if (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                                vwIconColor[4] = rgb_dec565(config.fourthScreensaverEntity.ScreensaverEntityIconColor);
                                            }
                                        } else {
                                            vwIconColor[4] = rgb_dec565(sctF2Icon);                        
                                        }
                                    } else {
                                        vwIconColor[4] = rgb_dec565(sctF2Icon);    
                                    }
                                }
                    
                                //AltLayout
                                if (config.alternativeScreensaverLayout) {
                                    payloadString += parseInt(getState(config.fourthScreensaverEntity.ScreensaverEntity).val) + '~'; 
                                    payloadString += config.fourthScreensaverEntity.ScreensaverEntityUnitText + '~'
                                } else {
                                    payloadString += '~~'            
                                }
                                
                                let hwBtn1Col: any = config.mrIcon1ScreensaverEntity.ScreensaverEntityOffColor;
                                if (config.mrIcon1ScreensaverEntity.ScreensaverEntity != null) {
                                    if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                                        let hwBtn1: string = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                                        if (hwBtn1 == 'ON') {
                                            hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                                        }
                                        payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                                    } else if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                                        let hwBtn1: boolean = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                                        if (hwBtn1) {
                                            hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                                        }
                                        payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                                    }  
                                } else {
                                    hwBtn1Col = Black;
                                    payloadString += '~~';
                                }
                    
                                let hwBtn2Col: any = config.mrIcon2ScreensaverEntity.ScreensaverEntityOffColor;
                                if (config.mrIcon2ScreensaverEntity.ScreensaverEntity != null) {
                                    if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                                        let hwBtn2: string = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                                        if (hwBtn2 == 'ON') {
                                            hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;                
                                        }
                                        payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                                    } else if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                                        let hwBtn2: boolean = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                                        if (hwBtn2) {
                                            hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;               
                                        }
                                        payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                                    }  
                                } else {
                                    hwBtn2Col = Black;
                                    payloadString += '~~';
                                }
                                HandleScreensaverColors();
                                
                                SendToPanel(<Payload>{ payload: payloadString });
                                
                            }
                        } catch (err) {
                            console.log('HandleScreensaverUpdate: ' + err.message);
                        }        
                    }
                    

                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    N 1 Antwort Letzte Antwort
                    0
                    • ArmilarA Armilar

                      @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                      @armilar
                      Merci für die Unterstützung! Ich bin einfach kein Entwickler, merk ich. Danke deswegen für die Unterstützung!

                      Was bleibt ist das Phänomen mit der Sprache. Im Wetterforecast werden die Wochentage auch Englisch angezeigt.

                      Hast du da noch irgendwelche Erleuchtungen?
                      Danke und Grüße
                      Bastian

                      Schätze es liegt wirklich an deinem System. Auch accuweather würde es z.B. bei accuweather.0.Summary.DayOfWeek bei dir als Englisch interpretieren. Ist bei mir deutsch. Suche mal, was man noch alles umstellen kann.

                      C Offline
                      C Offline
                      chiob314
                      schrieb am zuletzt editiert von
                      #344

                      @armilar Ist dein OS, wo iobroker drauf läuft, nativ auf deutsch installiert worden? Ich habe es aus diversen Gründen auf Englisch installiert, habe Locales nachinstalliert, alles auf deutsch umgestellt, und jetzt bekomme ich diese Datumsanzeige:

                      2022 M10 15, Sat

                      1 Antwort Letzte Antwort
                      0
                      • C chiob314

                        @armilar
                        Merci für die Unterstützung! Ich bin einfach kein Entwickler, merk ich. Danke deswegen für die Unterstützung!

                        Was bleibt ist das Phänomen mit der Sprache. Im Wetterforecast werden die Wochentage auch Englisch angezeigt.

                        Hast du da noch irgendwelche Erleuchtungen?
                        Danke und Grüße
                        Bastian

                        ArmilarA Offline
                        ArmilarA Offline
                        Armilar
                        Most Active Forum Testing
                        schrieb am zuletzt editiert von
                        #345

                        @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                        @armilar
                        Merci für die Unterstützung! Ich bin einfach kein Entwickler, merk ich. Danke deswegen für die Unterstützung!

                        Was bleibt ist das Phänomen mit der Sprache. Im Wetterforecast werden die Wochentage auch Englisch angezeigt.

                        Hast du da noch irgendwelche Erleuchtungen?
                        Danke und Grüße
                        Bastian

                        Was ist denn das für ein System?

                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        C 1 Antwort Letzte Antwort
                        0
                        • ArmilarA Armilar

                          @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                          @armilar
                          Merci für die Unterstützung! Ich bin einfach kein Entwickler, merk ich. Danke deswegen für die Unterstützung!

                          Was bleibt ist das Phänomen mit der Sprache. Im Wetterforecast werden die Wochentage auch Englisch angezeigt.

                          Hast du da noch irgendwelche Erleuchtungen?
                          Danke und Grüße
                          Bastian

                          Was ist denn das für ein System?

                          C Offline
                          C Offline
                          chiob314
                          schrieb am zuletzt editiert von
                          #346

                          @armilar ubuntu 20.04, tagesaktuell gepatcht

                          ArmilarA 1 Antwort Letzte Antwort
                          0
                          • ArmilarA Armilar

                            @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

                            @armilar

                            Danke :)

                            Haut aber noch nicht ganz hin. Es nimmt immer die Farbe von fourthScreensaverEntity und zeigt diese bei firstScreensaverEntity an. D.h. 2-4 sind weiterhin ohne Farbe.

                            Was soll ich sagen: Bugfixing und gleichzeitig Essen ;-)

                            Jetzt sollte es passen:

                            function HandleScreensaverUpdate(): void {
                                try {
                                    if (screensaverEnabled && config.weatherEntity != null && existsObject(config.weatherEntity)) {
                                        var icon = getState(config.weatherEntity + '.ICON').val;
                            
                                        let temperature =
                                            existsState(config.weatherEntity + '.ACTUAL') ? getState(config.weatherEntity + '.ACTUAL').val :
                                                existsState(config.weatherEntity + '.TEMP') ? getState(config.weatherEntity + '.TEMP').val : 'null';
                            
                                        if (config.alternativeScreensaverLayout) {
                                            temperature = parseInt(Math.round(temperature).toFixed());
                                        }
                            
                                        let payloadString =
                                            'weatherUpdate~' + Icons.GetIcon(GetAccuWeatherIcon(parseInt(icon))) + '~'
                                            + temperature + ' ' + config.temperatureUnit + '~';
                            
                                        vwIconColor[0] = GetAccuWeatherIconColor(parseInt(icon));
                                        if (Debug) console.log(GetAccuWeatherIconColor(parseInt(icon)));
                            
                                        if (weatherForecast) {
                                            // Accu-Weather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                                            for (let i = 2; i < 6; i++) {
                                                let TempMax = getState('accuweather.0.Summary.TempMax_d' + i).val;
                                                let DayOfWeek = getState('accuweather.0.Summary.DayOfWeek_d' + i).val;
                                                let WeatherIcon = GetAccuWeatherIcon(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                                vwIconColor[i-1] = GetAccuWeatherIconColor(getState('accuweather.0.Summary.WeatherIcon_d' + i).val);
                                                if (Debug) console.log(vwIconColor[i-1]);
                                                payloadString += DayOfWeek + '~' + Icons.GetIcon(WeatherIcon) + '~' + TempMax + ' ' + config.temperatureUnit + '~';
                                            }
                                        } else {
                                            payloadString += GetScreenSaverEntityString(config.firstScreensaverEntity);
                                            payloadString += GetScreenSaverEntityString(config.secondScreensaverEntity);
                                            payloadString += GetScreenSaverEntityString(config.thirdScreensaverEntity);
                                            payloadString += GetScreenSaverEntityString(config.fourthScreensaverEntity);
                                            
                                            const colorScale0:  RGB = { red:   99, green: 190, blue: 123 };
                                            const colorScale1:  RGB = { red:  129, green: 199, blue: 126 };
                                            const colorScale2:  RGB = { red:  161, green: 208, blue: 127 };
                                            const colorScale3:  RGB = { red:  129, green: 217, blue: 126 };
                                            const colorScale4:  RGB = { red:  222, green: 226, blue: 131 };
                                            const colorScale5:  RGB = { red:  254, green: 235, blue: 132 };
                                            const colorScale6:  RGB = { red:  255, green: 210, blue: 129 };
                                            const colorScale7:  RGB = { red:  251, green: 185, blue: 124 };
                                            const colorScale8:  RGB = { red:  251, green: 158, blue: 117 };
                                            const colorScale9:  RGB = { red:  248, green: 131, blue: 111 };
                                            const colorScale10: RGB = { red:  248, green: 105, blue: 107 };
                            
                                            if (config.firstScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                                if (typeof getState(config.firstScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                                    vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                                } else if (typeof config.firstScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                                                    let iconvalmin = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                                    let iconvalmax = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                                    let iconvalbest = (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.firstScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                                    let valueScale = getState(config.firstScreensaverEntity.ScreensaverEntity).val;
                            
                                                    if (iconvalmin == 0 && iconvalmax == 1) {
                                                        vwIconColor[1] = (getState(config.firstScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                                    } else {
                                                        if (iconvalbest == iconvalmin) {
                                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                                        } else {
                                                            if (valueScale < iconvalbest) {
                                                                valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                                            } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                                valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                                            } else {
                                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                                            }
                                                        }
                                                        let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                                        if (Debug) console.log(valueScaletemp);
                                                        switch (valueScaletemp) {
                                                            case '0':
                                                                vwIconColor[1] = rgb_dec565(colorScale0);
                                                                break;
                                                            case '1':
                                                                vwIconColor[1] = rgb_dec565(colorScale1);
                                                                break;
                                                            case '2':
                                                                vwIconColor[1] = rgb_dec565(colorScale2);
                                                                break;
                                                            case '3':
                                                                vwIconColor[1] = rgb_dec565(colorScale3);
                                                                break;
                                                            case '4':
                                                                vwIconColor[1] = rgb_dec565(colorScale4);
                                                                break;
                                                            case '5':
                                                                vwIconColor[1] = rgb_dec565(colorScale5);
                                                                break;
                                                            case '6':
                                                                vwIconColor[1] = rgb_dec565(colorScale6);
                                                                break;
                                                            case '7':
                                                                vwIconColor[1] = rgb_dec565(colorScale7);
                                                                break;                                 
                                                            case '8':
                                                                vwIconColor[1] = rgb_dec565(colorScale8);
                                                                break;
                                                            case '9':
                                                                vwIconColor[1] = rgb_dec565(colorScale9);
                                                                break;
                                                            case '10':
                                                                vwIconColor[1] = rgb_dec565(colorScale10);
                                                                break;
                                                        } 
                                                    }
                                                    if (config.firstScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                                        vwIconColor[1] = rgb_dec565(config.firstScreensaverEntity.ScreensaverEntityIconColor);
                                                    }
                                                } else {
                                                    vwIconColor[1] = rgb_dec565(sctF1Icon);
                                                }
                                            } else {
                                                vwIconColor[1] = rgb_dec565(sctF1Icon);    
                                            }
                            
                                            if (config.secondScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                                if (typeof getState(config.secondScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                                    vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                                } else if (typeof config.secondScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                            
                                                    let iconvalmin = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                                    let iconvalmax = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                                    let iconvalbest = (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.secondScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                                    let valueScale = getState(config.secondScreensaverEntity.ScreensaverEntity).val;
                            
                                                    if (iconvalmin == 0 && iconvalmax == 1) {
                                                        vwIconColor[2] = (getState(config.secondScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                                    } else {
                                                        if (iconvalbest == iconvalmin) {
                                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                                        } else {
                                                            if (valueScale < iconvalbest) {
                                                                valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                                            } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                                valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                                            } else {
                                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                                            }
                                                        }
                                                        let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                                        if (Debug) console.log(valueScaletemp);
                                                        switch (valueScaletemp) {
                                                            case '0':
                                                                vwIconColor[2] = rgb_dec565(colorScale0);
                                                                break;
                                                            case '1':
                                                                vwIconColor[2] = rgb_dec565(colorScale1);
                                                                break;
                                                            case '2':
                                                                vwIconColor[2] = rgb_dec565(colorScale2);
                                                                break;
                                                            case '3':
                                                                vwIconColor[2] = rgb_dec565(colorScale3);
                                                                break;
                                                            case '4':
                                                                vwIconColor[2] = rgb_dec565(colorScale4);
                                                                break;
                                                            case '5':
                                                                vwIconColor[2] = rgb_dec565(colorScale5);
                                                                break;
                                                            case '6':
                                                                vwIconColor[2] = rgb_dec565(colorScale6);
                                                                break;
                                                            case '7':
                                                                vwIconColor[2] = rgb_dec565(colorScale7);
                                                                break;                                 
                                                            case '8':
                                                                vwIconColor[2] = rgb_dec565(colorScale8);
                                                                break;
                                                            case '9':
                                                                vwIconColor[2] = rgb_dec565(colorScale9);
                                                                break;
                                                            case '10':
                                                                vwIconColor[2] = rgb_dec565(colorScale10);
                                                                break;
                                                        } 
                                                    }
                                                    if (config.secondScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                                        vwIconColor[2] = rgb_dec565(config.secondScreensaverEntity.ScreensaverEntityIconColor);
                                                    }
                                                } else {
                                                    vwIconColor[2] = rgb_dec565(sctF2Icon);                        
                                                }
                                            } else {
                                                vwIconColor[2] = rgb_dec565(sctF2Icon);    
                                            }
                            
                                            if (config.thirdScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                                if (typeof getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                                    vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                                } else if (typeof config.thirdScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                            
                                                    let iconvalmin = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                                    let iconvalmax = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                                    let iconvalbest = (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                                    let valueScale = getState(config.thirdScreensaverEntity.ScreensaverEntity).val;
                            
                                                    if (iconvalmin == 0 && iconvalmax == 1) {
                                                        vwIconColor[3] = (getState(config.thirdScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                                    } else {
                                                        if (iconvalbest == iconvalmin) {
                                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                                        } else {
                                                            if (valueScale < iconvalbest) {
                                                                valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                                            } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                                valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                                            } else {
                                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                                            }
                                                        }
                                                        let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                                        if (Debug) console.log(valueScaletemp);
                                                        switch (valueScaletemp) {
                                                            case '0':
                                                                vwIconColor[3] = rgb_dec565(colorScale0);
                                                                break;
                                                            case '1':
                                                                vwIconColor[3] = rgb_dec565(colorScale1);
                                                                break;
                                                            case '2':
                                                                vwIconColor[3] = rgb_dec565(colorScale2);
                                                                break;
                                                            case '3':
                                                                vwIconColor[3] = rgb_dec565(colorScale3);
                                                                break;
                                                            case '4':
                                                                vwIconColor[3] = rgb_dec565(colorScale4);
                                                                break;
                                                            case '5':
                                                                vwIconColor[3] = rgb_dec565(colorScale5);
                                                                break;
                                                            case '6':
                                                                vwIconColor[3] = rgb_dec565(colorScale6);
                                                                break;
                                                            case '7':
                                                                vwIconColor[3] = rgb_dec565(colorScale7);
                                                                break;                                 
                                                            case '8':
                                                                vwIconColor[3] = rgb_dec565(colorScale8);
                                                                break;
                                                            case '9':
                                                                vwIconColor[3] = rgb_dec565(colorScale9);
                                                                break;
                                                            case '10':
                                                                vwIconColor[3] = rgb_dec565(colorScale10);
                                                                break;
                                                        } 
                                                    }
                                                    if (config.thirdScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                                        vwIconColor[3] = rgb_dec565(config.thirdScreensaverEntity.ScreensaverEntityIconColor);
                                                    }
                                                } else {
                                                    vwIconColor[3] = rgb_dec565(sctF2Icon);                        
                                                }
                                            } else {
                                                vwIconColor[3] = rgb_dec565(sctF2Icon);    
                                            }
                            
                                            if (config.fourthScreensaverEntity.ScreensaverEntityIconColor != undefined) {
                                                if (typeof getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 'boolean') {
                                                    vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == true) ? rgb_dec565(colorScale10) : rgb_dec565(colorScale0);
                                                } else if (typeof config.fourthScreensaverEntity.ScreensaverEntityIconColor == 'object') {
                            
                                                    let iconvalmin = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min : 0 ;
                                                    let iconvalmax = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_max : 100 ;
                                                    let iconvalbest = (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best != undefined) ? config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_best : iconvalmin ;
                                                    let valueScale = getState(config.fourthScreensaverEntity.ScreensaverEntity).val;
                            
                                                    if (iconvalmin == 0 && iconvalmax == 1) {
                                                        vwIconColor[4] = (getState(config.fourthScreensaverEntity.ScreensaverEntity).val == 1) ? rgb_dec565(colorScale0) : rgb_dec565(colorScale10);
                                                    } else {
                                                        if (iconvalbest == iconvalmin) {
                                                            valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)
                                                        } else {
                                                            if (valueScale < iconvalbest) {
                                                                valueScale = scale(valueScale,iconvalmin, iconvalbest, 0, 10)    
                                                            } else if (valueScale > iconvalbest || iconvalbest != iconvalmin) {
                                                                valueScale = scale(valueScale,iconvalbest, iconvalmax, 10, 0)    
                                                            } else {
                                                              valueScale = scale(valueScale,iconvalmin, iconvalmax, 10, 0)  
                                                            }
                                                        }
                                                        let valueScaletemp = (Math.round(valueScale)).toFixed(); 
                                                        if (Debug) console.log(valueScaletemp);
                                                        switch (valueScaletemp) {
                                                            case '0':
                                                                vwIconColor[4] = rgb_dec565(colorScale0);
                                                                break;
                                                            case '1':
                                                                vwIconColor[4] = rgb_dec565(colorScale1);
                                                                break;
                                                            case '2':
                                                                vwIconColor[4] = rgb_dec565(colorScale2);
                                                                break;
                                                            case '3':
                                                                vwIconColor[4] = rgb_dec565(colorScale3);
                                                                break;
                                                            case '4':
                                                                vwIconColor[4] = rgb_dec565(colorScale4);
                                                                break;
                                                            case '5':
                                                                vwIconColor[4] = rgb_dec565(colorScale5);
                                                                break;
                                                            case '6':
                                                                vwIconColor[4] = rgb_dec565(colorScale6);
                                                                break;
                                                            case '7':
                                                                vwIconColor[4] = rgb_dec565(colorScale7);
                                                                break;                                 
                                                            case '8':
                                                                vwIconColor[4] = rgb_dec565(colorScale8);
                                                                break;
                                                            case '9':
                                                                vwIconColor[4] = rgb_dec565(colorScale9);
                                                                break;
                                                            case '10':
                                                                vwIconColor[4] = rgb_dec565(colorScale10);
                                                                break;
                                                        } 
                                                    }
                                                    if (config.fourthScreensaverEntity.ScreensaverEntityIconColor.val_min == undefined) {
                                                        vwIconColor[4] = rgb_dec565(config.fourthScreensaverEntity.ScreensaverEntityIconColor);
                                                    }
                                                } else {
                                                    vwIconColor[4] = rgb_dec565(sctF2Icon);                        
                                                }
                                            } else {
                                                vwIconColor[4] = rgb_dec565(sctF2Icon);    
                                            }
                                        }
                            
                                        //AltLayout
                                        if (config.alternativeScreensaverLayout) {
                                            payloadString += parseInt(getState(config.fourthScreensaverEntity.ScreensaverEntity).val) + '~'; 
                                            payloadString += config.fourthScreensaverEntity.ScreensaverEntityUnitText + '~'
                                        } else {
                                            payloadString += '~~'            
                                        }
                                        
                                        let hwBtn1Col: any = config.mrIcon1ScreensaverEntity.ScreensaverEntityOffColor;
                                        if (config.mrIcon1ScreensaverEntity.ScreensaverEntity != null) {
                                            if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                                                let hwBtn1: string = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                                                if (hwBtn1 == 'ON') {
                                                    hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                                                }
                                                payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                                            } else if (typeof (getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                                                let hwBtn1: boolean = getState(config.mrIcon1ScreensaverEntity.ScreensaverEntity).val;
                                                if (hwBtn1) {
                                                    hwBtn1Col = config.mrIcon1ScreensaverEntity.ScreensaverEntityOnColor;                
                                                }
                                                payloadString += Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn1Col) + '~';
                                            }  
                                        } else {
                                            hwBtn1Col = Black;
                                            payloadString += '~~';
                                        }
                            
                                        let hwBtn2Col: any = config.mrIcon2ScreensaverEntity.ScreensaverEntityOffColor;
                                        if (config.mrIcon2ScreensaverEntity.ScreensaverEntity != null) {
                                            if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'string') {
                                                let hwBtn2: string = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                                                if (hwBtn2 == 'ON') {
                                                    hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;                
                                                }
                                                payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                                            } else if (typeof (getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val) == 'boolean') {
                                                let hwBtn2: boolean = getState(config.mrIcon2ScreensaverEntity.ScreensaverEntity).val;
                                                if (hwBtn2) {
                                                    hwBtn2Col = config.mrIcon2ScreensaverEntity.ScreensaverEntityOnColor;               
                                                }
                                                payloadString += Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIcon) + '~' + rgb_dec565(hwBtn2Col) + '~';
                                            }  
                                        } else {
                                            hwBtn2Col = Black;
                                            payloadString += '~~';
                                        }
                                        HandleScreensaverColors();
                                        
                                        SendToPanel(<Payload>{ payload: payloadString });
                                        
                                    }
                                } catch (err) {
                                    console.log('HandleScreensaverUpdate: ' + err.message);
                                }        
                            }
                            

                            N Offline
                            N Offline
                            nevermind
                            schrieb am zuletzt editiert von
                            #347

                            @armilar

                            Yes:) Danke dir!

                            ArmilarA 1 Antwort Letzte Antwort
                            0
                            • N nevermind

                              @armilar

                              Yes:) Danke dir!

                              ArmilarA Offline
                              ArmilarA Offline
                              Armilar
                              Most Active Forum Testing
                              schrieb am zuletzt editiert von
                              #348

                              @nevermind sagte in SONOFF NSPanel mit Lovelace UI:

                              @armilar

                              Yes:) Danke dir!

                              :+1:

                              Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                              https://github.com/joBr99/nspanel-lovelace-ui/wiki

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              1 Antwort Letzte Antwort
                              0
                              • C chiob314

                                @armilar ubuntu 20.04, tagesaktuell gepatcht

                                ArmilarA Offline
                                ArmilarA Offline
                                Armilar
                                Most Active Forum Testing
                                schrieb am zuletzt editiert von
                                #349

                                @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                                @armilar ubuntu 20.04, tagesaktuell gepatcht

                                was zeigt

                                $ locale
                                

                                und

                                $ locale -a
                                

                                an?

                                Nee, habe aktuell ein ubuntu22.04 laufen. Mache alle Installationen immer selbst...

                                Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                C 1 Antwort Letzte Antwort
                                0
                                • ArmilarA Armilar

                                  @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                                  @armilar ubuntu 20.04, tagesaktuell gepatcht

                                  was zeigt

                                  $ locale
                                  

                                  und

                                  $ locale -a
                                  

                                  an?

                                  Nee, habe aktuell ein ubuntu22.04 laufen. Mache alle Installationen immer selbst...

                                  C Offline
                                  C Offline
                                  chiob314
                                  schrieb am zuletzt editiert von
                                  #350

                                  @armilar

                                  administrator@mrtn-iobroker:~$ locale
                                  LANG=de_DE.UTF-8
                                  LANGUAGE=
                                  LC_CTYPE="de_DE.UTF-8"
                                  LC_NUMERIC="de_DE.UTF-8"
                                  LC_TIME="de_DE.UTF-8"
                                  LC_COLLATE="de_DE.UTF-8"
                                  LC_MONETARY="de_DE.UTF-8"
                                  LC_MESSAGES="de_DE.UTF-8"
                                  LC_PAPER="de_DE.UTF-8"
                                  LC_NAME="de_DE.UTF-8"
                                  LC_ADDRESS="de_DE.UTF-8"
                                  LC_TELEPHONE="de_DE.UTF-8"
                                  LC_MEASUREMENT="de_DE.UTF-8"
                                  LC_IDENTIFICATION="de_DE.UTF-8"
                                  LC_ALL=
                                  administrator@mrtn-iobroker:~$ locale -a
                                  C
                                  C.UTF-8
                                  de_DE.utf8
                                  en_US.utf8
                                  POSIX
                                  
                                  
                                  ArmilarA 1 Antwort Letzte Antwort
                                  0
                                  • C chiob314

                                    @armilar

                                    administrator@mrtn-iobroker:~$ locale
                                    LANG=de_DE.UTF-8
                                    LANGUAGE=
                                    LC_CTYPE="de_DE.UTF-8"
                                    LC_NUMERIC="de_DE.UTF-8"
                                    LC_TIME="de_DE.UTF-8"
                                    LC_COLLATE="de_DE.UTF-8"
                                    LC_MONETARY="de_DE.UTF-8"
                                    LC_MESSAGES="de_DE.UTF-8"
                                    LC_PAPER="de_DE.UTF-8"
                                    LC_NAME="de_DE.UTF-8"
                                    LC_ADDRESS="de_DE.UTF-8"
                                    LC_TELEPHONE="de_DE.UTF-8"
                                    LC_MEASUREMENT="de_DE.UTF-8"
                                    LC_IDENTIFICATION="de_DE.UTF-8"
                                    LC_ALL=
                                    administrator@mrtn-iobroker:~$ locale -a
                                    C
                                    C.UTF-8
                                    de_DE.utf8
                                    en_US.utf8
                                    POSIX
                                    
                                    
                                    ArmilarA Offline
                                    ArmilarA Offline
                                    Armilar
                                    Most Active Forum Testing
                                    schrieb am zuletzt editiert von
                                    #351

                                    @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                                    @armilar

                                    administrator@mrtn-iobroker:~$ locale
                                    LANG=de_DE.UTF-8
                                    LANGUAGE=
                                    LC_CTYPE="de_DE.UTF-8"
                                    LC_NUMERIC="de_DE.UTF-8"
                                    LC_TIME="de_DE.UTF-8"
                                    LC_COLLATE="de_DE.UTF-8"
                                    LC_MONETARY="de_DE.UTF-8"
                                    LC_MESSAGES="de_DE.UTF-8"
                                    LC_PAPER="de_DE.UTF-8"
                                    LC_NAME="de_DE.UTF-8"
                                    LC_ADDRESS="de_DE.UTF-8"
                                    LC_TELEPHONE="de_DE.UTF-8"
                                    LC_MEASUREMENT="de_DE.UTF-8"
                                    LC_IDENTIFICATION="de_DE.UTF-8"
                                    LC_ALL=
                                    administrator@mrtn-iobroker:~$ locale -a
                                    C
                                    C.UTF-8
                                    de_DE.utf8
                                    en_US.utf8
                                    POSIX
                                    
                                    

                                    da gibt es von meiner Seite kein Veto...

                                    Wie sieht die Einstellung im ioBroker aus?

                                    d8589df1-8740-4d88-8112-1935102dfbac-image.png

                                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    C 2 Antworten Letzte Antwort
                                    0
                                    • ArmilarA Armilar

                                      @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                                      @armilar

                                      administrator@mrtn-iobroker:~$ locale
                                      LANG=de_DE.UTF-8
                                      LANGUAGE=
                                      LC_CTYPE="de_DE.UTF-8"
                                      LC_NUMERIC="de_DE.UTF-8"
                                      LC_TIME="de_DE.UTF-8"
                                      LC_COLLATE="de_DE.UTF-8"
                                      LC_MONETARY="de_DE.UTF-8"
                                      LC_MESSAGES="de_DE.UTF-8"
                                      LC_PAPER="de_DE.UTF-8"
                                      LC_NAME="de_DE.UTF-8"
                                      LC_ADDRESS="de_DE.UTF-8"
                                      LC_TELEPHONE="de_DE.UTF-8"
                                      LC_MEASUREMENT="de_DE.UTF-8"
                                      LC_IDENTIFICATION="de_DE.UTF-8"
                                      LC_ALL=
                                      administrator@mrtn-iobroker:~$ locale -a
                                      C
                                      C.UTF-8
                                      de_DE.utf8
                                      en_US.utf8
                                      POSIX
                                      
                                      

                                      da gibt es von meiner Seite kein Veto...

                                      Wie sieht die Einstellung im ioBroker aus?

                                      d8589df1-8740-4d88-8112-1935102dfbac-image.png

                                      C Offline
                                      C Offline
                                      chiob314
                                      schrieb am zuletzt editiert von
                                      #352

                                      @armilar
                                      5935af2f-6e96-4ce9-a3d9-89621bac29da-grafik.png

                                      Eigentlich auch soweit ok....

                                      ArmilarA 1 Antwort Letzte Antwort
                                      0
                                      • C chiob314

                                        @armilar
                                        5935af2f-6e96-4ce9-a3d9-89621bac29da-grafik.png

                                        Eigentlich auch soweit ok....

                                        ArmilarA Offline
                                        ArmilarA Offline
                                        Armilar
                                        Most Active Forum Testing
                                        schrieb am zuletzt editiert von
                                        #353

                                        @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                                        @armilar
                                        5935af2f-6e96-4ce9-a3d9-89621bac29da-grafik.png

                                        Eigentlich auch soweit ok....

                                        Dann verstehe ich das aber irgendwie auch nicht mehr... :confused:

                                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        1 Antwort Letzte Antwort
                                        0
                                        • ArmilarA Armilar

                                          @chiob314 sagte in SONOFF NSPanel mit Lovelace UI:

                                          @armilar

                                          administrator@mrtn-iobroker:~$ locale
                                          LANG=de_DE.UTF-8
                                          LANGUAGE=
                                          LC_CTYPE="de_DE.UTF-8"
                                          LC_NUMERIC="de_DE.UTF-8"
                                          LC_TIME="de_DE.UTF-8"
                                          LC_COLLATE="de_DE.UTF-8"
                                          LC_MONETARY="de_DE.UTF-8"
                                          LC_MESSAGES="de_DE.UTF-8"
                                          LC_PAPER="de_DE.UTF-8"
                                          LC_NAME="de_DE.UTF-8"
                                          LC_ADDRESS="de_DE.UTF-8"
                                          LC_TELEPHONE="de_DE.UTF-8"
                                          LC_MEASUREMENT="de_DE.UTF-8"
                                          LC_IDENTIFICATION="de_DE.UTF-8"
                                          LC_ALL=
                                          administrator@mrtn-iobroker:~$ locale -a
                                          C
                                          C.UTF-8
                                          de_DE.utf8
                                          en_US.utf8
                                          POSIX
                                          
                                          

                                          da gibt es von meiner Seite kein Veto...

                                          Wie sieht die Einstellung im ioBroker aus?

                                          d8589df1-8740-4d88-8112-1935102dfbac-image.png

                                          C Offline
                                          C Offline
                                          chiob314
                                          schrieb am zuletzt editiert von
                                          #354

                                          @armilar Dann sind wir ja schon zu zweit. (danke mal bis hierher!!)

                                          Vielleicht gibt es ja noch von anderen Kollegen hier ein paar Ideen, was das sein könnte...

                                          C ArmilarA T 3 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          311

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe