Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  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.1k

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

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

SONOFF NSPanel mit Lovelace UI

Scheduled Pinned Locked Moved Hardware
lovelace uinspanelsonoff
7.7k Posts 271 Posters 6.7m Views 253 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Offline
    T Offline
    TT-Tom
    wrote on last edited by
    #4683

    Update v4.3.3.27
    v43327.png

    Durch Änderung des Payload, sollte das Problem mit zu langen Alias Verzeichnissen und daraus resultierenden langen Zeichenketten behoben sein. Es ist trotzdem sinnvoll die Verzeichnisse kurz zuhalten, statt Erdgeschoss -> EG oder Schlafzimmer -> SZ nutzen.

    Die Verbesserung des Fallback verdanken wir dem Hinweis von @ticaki aus diesem Post

    Wie kann ich das Update durchführen?

    Wenn aktuelle Version ab v4.3.3.10, dann unteren Teil des NSPanelTs.ts ab:

    // _________________________________ DE: Ab hier keine Konfiguration mehr _____________________________________
    // _________________________________ EN:  No more configuration from here _____________________________________
    

    austauschen

    https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts

    Wenn aktuelle Version bis v4.3.3.9, dann Updateaneitung befolgen:
    https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Starthilfe-FAQ#hilfe-bei-update--upgrade

    VG
    @Armilar & TT-Tom 😊

    Gruß Tom
    https://github.com/tt-tom17
    Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

    NSPanel Script Wiki
    https://github.com/joBr99/nspanel-lovelace-ui/wiki

    NSPanel Adapter Wiki
    https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

    1 Reply Last reply
    0
    • T ticaki

      @armilar sagte in SONOFF NSPanel mit Lovelace UI:

      @ticaki

      8da3d070-cd19-4bf3-84dd-76dd59708f4e-image.png

      Da steht in deiner config ein <unknown>... Das dürfte eigentlich auch nicht aus dem Script kommen...

      Ja das kommt von vscode 🙂 habs entfernt .

      Es geht noch immer nicht folgendes habe ich jetzt ausprobiert:

      • channels mit alias in menu und gerät gesplitet das eine jeweils getestet mit temperature, info & value.temperature der andere immer als thermostat - in beiden den vollen Satz aliase
      • Temperatur als channel mit role temperature & value.temperature sowie Bad als subchannel role thermostate mit darunter liegenden Aliase

      alles mit deinen reduzierten Vorlagen.

      Ich hab ein 14 Sekunden Video aufgenommen, wenn ich da durch den Fehler klicke gehts am ende. Ist aber schlecht zu beschreiben.
      habs als gif hinbekommen:

      ezgif.com-optimize.gif

      T Offline
      T Offline
      TT-Tom
      wrote on last edited by TT-Tom
      #4684

      @ticaki
      Guten Morgen,

      Ich habe es nochmal getestet. Hast du für die cardGrid (SensorGrid) einen separaten Alias für die Raumtemperatur angelegt. Er muss einen anderen Channelnamen haben. Die Verknüpfung zum Raumfühler kann die selbe sein, wie beim Thermostat.

      Bildschirmfoto 2023-12-29 um 06.38.58.png

      pageItem von der cardGrid

       <PageItem>{ navigate: true, id: 'alias.0.NSPanel.allgemein.thermometer', targetPage: 'Bad_Thermostat',name:'temp', useValue: true, fontSize: 1, colorScale: {'val_min': 10, 'val_max': 35, 'val_best': 25} },
      

      cardThermo als Subpage

      let Bad_Thermostat = <PageThermo>
      {
          'type': 'cardThermo',
          'heading': 'Bad',
          'subPage': true,
          'useColor': true,
          'parent': Startseite,
          'items': [<PageItem>{ 
                      id: 'alias.0.NSPanel.Thermostat',
                      minValue: 100, 
                      maxValue: 300,
                      stepValue: 1
                   }]
      };
      

      Gruß Tom
      https://github.com/tt-tom17
      Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

      NSPanel Script Wiki
      https://github.com/joBr99/nspanel-lovelace-ui/wiki

      NSPanel Adapter Wiki
      https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

      1 Reply Last reply
      0
      • T Do not disturb
        T Do not disturb
        ticaki
        wrote on last edited by ticaki
        #4685

        @tt-tom

        Tagchen,

        geht leider immer noch nicht:

        let SensorGrid = <PageGrid>{
            'type': 'cardGrid',
            'heading': 'Temperatur Innen',
            'useColor': true,
            'items': [
                <PageItem>{ navigate: true, id: 'alias.0.NSPanel.1.usr.Temperatur.M.Bad', targetPage: 'Bad_Thermostat',name:'temp', useValue: true, fontSize: 1, colorScale: {'val_min': 10, 'val_max': 35, 'val_best': 25} },
                //<PageItem>{navigate: true, id: 'alias.0.NSPanel.1.usr.Temperatur.M.Bad', targetPage: 'Bad_Themostat', name: 'Bad', useValue: true, onColor: White, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 22} },
            ]};
        
        let Bad_Thermostat = <PageThermo>
        {
            'type': 'cardThermo',
            'heading': 'Bad',
            'subPage': true,
            'useColor': true,
            'parent': SensorGrid,
            //'home': 'SensorGrid',
            'items': [<PageItem>{ 
                        id: 'alias.0.NSPanel.1.usr.Temperatur.G.Bad',
                        minValue: 100, 
                        maxValue: 300,
                        stepValue: 5
                     }]
        };
        

        Bildschirmfoto 2023-12-29 um 11.32.48.png

        Geändert hat sich: Links wo oben im gif der alias.0 steht, steht jetzt nur 0

        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

        Spenden

        ArmilarA T 2 Replies Last reply
        0
        • T ticaki

          @tt-tom

          Tagchen,

          geht leider immer noch nicht:

          let SensorGrid = <PageGrid>{
              'type': 'cardGrid',
              'heading': 'Temperatur Innen',
              'useColor': true,
              'items': [
                  <PageItem>{ navigate: true, id: 'alias.0.NSPanel.1.usr.Temperatur.M.Bad', targetPage: 'Bad_Thermostat',name:'temp', useValue: true, fontSize: 1, colorScale: {'val_min': 10, 'val_max': 35, 'val_best': 25} },
                  //<PageItem>{navigate: true, id: 'alias.0.NSPanel.1.usr.Temperatur.M.Bad', targetPage: 'Bad_Themostat', name: 'Bad', useValue: true, onColor: White, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 22} },
              ]};
          
          let Bad_Thermostat = <PageThermo>
          {
              'type': 'cardThermo',
              'heading': 'Bad',
              'subPage': true,
              'useColor': true,
              'parent': SensorGrid,
              //'home': 'SensorGrid',
              'items': [<PageItem>{ 
                          id: 'alias.0.NSPanel.1.usr.Temperatur.G.Bad',
                          minValue: 100, 
                          maxValue: 300,
                          stepValue: 5
                       }]
          };
          

          Bildschirmfoto 2023-12-29 um 11.32.48.png

          Geändert hat sich: Links wo oben im gif der alias.0 steht, steht jetzt nur 0

          ArmilarA Offline
          ArmilarA Offline
          Armilar
          Most Active Forum Testing
          wrote on last edited by
          #4686

          @ticaki

          Der Alias alias.0.NSPanel.1.usr.Temperatur.M.Bad im Navigationspfad ist bei dir ein "Thermostat"

          Das darf kein "Thermostat" sein, sondern eine Temperatur des Raumes...

          Also ein Alias vom Channel "info" oder "temperatur"
          0a187ba0-bd84-4476-b685-2163c756a61d-image.png
          oder
          b05b5f93-fd3e-4af8-bfee-4093855d2010-image.png

          Auf deinem Video konnte ich gestern noch sehen, dass die Pfeile auf der cardThermo zu beiden Seiten gingen, was darauf hinweist, dass es eine Top-Level-Page ist...

          Sollte, sofern die Variable "Bad_Thermostat" im supPages Array steht den Pfeil nach oben bringen

          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 Reply Last reply
          1
          • T ticaki

            @tt-tom

            Tagchen,

            geht leider immer noch nicht:

            let SensorGrid = <PageGrid>{
                'type': 'cardGrid',
                'heading': 'Temperatur Innen',
                'useColor': true,
                'items': [
                    <PageItem>{ navigate: true, id: 'alias.0.NSPanel.1.usr.Temperatur.M.Bad', targetPage: 'Bad_Thermostat',name:'temp', useValue: true, fontSize: 1, colorScale: {'val_min': 10, 'val_max': 35, 'val_best': 25} },
                    //<PageItem>{navigate: true, id: 'alias.0.NSPanel.1.usr.Temperatur.M.Bad', targetPage: 'Bad_Themostat', name: 'Bad', useValue: true, onColor: White, colorScale: {'val_min': -20, 'val_max': 40, 'val_best': 22} },
                ]};
            
            let Bad_Thermostat = <PageThermo>
            {
                'type': 'cardThermo',
                'heading': 'Bad',
                'subPage': true,
                'useColor': true,
                'parent': SensorGrid,
                //'home': 'SensorGrid',
                'items': [<PageItem>{ 
                            id: 'alias.0.NSPanel.1.usr.Temperatur.G.Bad',
                            minValue: 100, 
                            maxValue: 300,
                            stepValue: 5
                         }]
            };
            

            Bildschirmfoto 2023-12-29 um 11.32.48.png

            Geändert hat sich: Links wo oben im gif der alias.0 steht, steht jetzt nur 0

            T Offline
            T Offline
            TT-Tom
            wrote on last edited by TT-Tom
            #4687

            @ticaki sagte in SONOFF NSPanel mit Lovelace UI:

            @tt-tom

            Bildschirmfoto 2023-12-29 um 11.32.48.png

            wenn ich dein Bild richtig sehe hast du zwar den Cannel (M.Bad)auf value.temperatur, aber die Datenpunkte vom Thermostat mit drin. lösche bitte alle Datenpunkte bis auf ACTUAL. Der Fehler kommt sobald du den Datenpunkt SET mit im Channel hast.

            Gruß Tom
            https://github.com/tt-tom17
            Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

            NSPanel Script Wiki
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            NSPanel Adapter Wiki
            https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

            T 1 Reply Last reply
            1
            • T TT-Tom

              @ticaki sagte in SONOFF NSPanel mit Lovelace UI:

              @tt-tom

              Bildschirmfoto 2023-12-29 um 11.32.48.png

              wenn ich dein Bild richtig sehe hast du zwar den Cannel (M.Bad)auf value.temperatur, aber die Datenpunkte vom Thermostat mit drin. lösche bitte alle Datenpunkte bis auf ACTUAL. Der Fehler kommt sobald du den Datenpunkt SET mit im Channel hast.

              T Do not disturb
              T Do not disturb
              ticaki
              wrote on last edited by
              #4688

              @tt-tom

              Vielen Dank das wars 🙂

              Hiermit geht es:
              Bildschirmfoto 2023-12-29 um 12.03.09.png

              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

              Spenden

              T 1 Reply Last reply
              1
              • T ticaki

                @tt-tom

                Vielen Dank das wars 🙂

                Hiermit geht es:
                Bildschirmfoto 2023-12-29 um 12.03.09.png

                T Offline
                T Offline
                TT-Tom
                wrote on last edited by
                #4689

                @ticaki
                war eine schwere Geburt, aber so gehts Glücklich ins neue Jahr 😊

                Gruß Tom
                https://github.com/tt-tom17
                Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                NSPanel Script Wiki
                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                NSPanel Adapter Wiki
                https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                1 Reply Last reply
                2
                • T Offline
                  T Offline
                  TT-Tom
                  wrote on last edited by TT-Tom
                  #4690

                  ACHTUNG ACHTUNG

                  die Version 4.3.3.27 hat ein Bug in der inSelPop Funktion. Wir ziehen die Version jetzt zurück auf V4.3.3.26. wer schon das Update durchgeführt hat greift auf sein Backup zurück oder lädt im laufe des Tages die alte Version von Github zurück.

                  Wie kann ich das Update / Rücksprung durchführen?

                  Wenn aktuelle Version ab v4.3.3.10, dann unteren Teil des NSPanelTs.ts ab:

                  // _________________________________ DE: Ab hier keine Konfiguration mehr _____________________________________
                  // _________________________________ EN:  No more configuration from here _____________________________________
                  

                  austauschen

                  https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts

                  Wenn aktuelle Version bis v4.3.3.9, dann Updateaneitung befolgen:
                  https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Starthilfe-FAQ#hilfe-bei-update--upgrade

                  VG
                  @Armilar & TT-Tom 😊

                  Gruß Tom
                  https://github.com/tt-tom17
                  Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                  NSPanel Script Wiki
                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                  NSPanel Adapter Wiki
                  https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                  ArmilarA 1 Reply Last reply
                  1
                  • T TT-Tom

                    ACHTUNG ACHTUNG

                    die Version 4.3.3.27 hat ein Bug in der inSelPop Funktion. Wir ziehen die Version jetzt zurück auf V4.3.3.26. wer schon das Update durchgeführt hat greift auf sein Backup zurück oder lädt im laufe des Tages die alte Version von Github zurück.

                    Wie kann ich das Update / Rücksprung durchführen?

                    Wenn aktuelle Version ab v4.3.3.10, dann unteren Teil des NSPanelTs.ts ab:

                    // _________________________________ DE: Ab hier keine Konfiguration mehr _____________________________________
                    // _________________________________ EN:  No more configuration from here _____________________________________
                    

                    austauschen

                    https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts

                    Wenn aktuelle Version bis v4.3.3.9, dann Updateaneitung befolgen:
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Starthilfe-FAQ#hilfe-bei-update--upgrade

                    VG
                    @Armilar & TT-Tom 😊

                    ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    wrote on last edited by
                    #4691

                    @tt-tom

                    Hier ist die v4.3.3.26 - für den Fallback

                    https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/aeaa995a0a6e424ddd8ede248f2596b380a96a44/ioBroker/NsPanelTs.ts

                    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 Reply Last reply
                    1
                    • T Do not disturb
                      T Do not disturb
                      ticaki
                      wrote on last edited by ticaki
                      #4692

                      @tt-tom sagte in SONOFF NSPanel mit Lovelace UI:

                      @ticaki
                      war eine schwere Geburt, aber so gehts Glücklich ins neue Jahr 😊

                      Hätte ich nicht alles über Skripte gelöst, wäre ich sicherlich zu faul gewesen um im M Ordner mehr als ACTUAL anzulegen.

                      Danke für die Geduld.

                      Wegen der zu langen Aliase komme ich damit schon an die Grenze: alias.0.NSPanel.1.usr.Temperatur.G.Kinderzimmer_1

                      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                      Spenden

                      ArmilarA 1 Reply Last reply
                      0
                      • T ticaki

                        @tt-tom sagte in SONOFF NSPanel mit Lovelace UI:

                        @ticaki
                        war eine schwere Geburt, aber so gehts Glücklich ins neue Jahr 😊

                        Hätte ich nicht alles über Skripte gelöst, wäre ich sicherlich zu faul gewesen um im M Ordner mehr als ACTUAL anzulegen.

                        Danke für die Geduld.

                        Wegen der zu langen Aliase komme ich damit schon an die Grenze: alias.0.NSPanel.1.usr.Temperatur.G.Kinderzimmer_1

                        ArmilarA Offline
                        ArmilarA Offline
                        Armilar
                        Most Active Forum Testing
                        wrote on last edited by
                        #4693

                        @ticaki

                        Die langen Aliase sollten eigentlich bald Geschichte sein...

                        Wir nehmen jetzt eine andere eindeutige ID zur Übermittlung. Leider hatte die Auswirkungen auf das inSel-Popup

                        Daher jetzt das Downgrade auf die v4.3.3.26
                        232276cf-b3ac-4580-84b8-9f619481b635-image.png

                        Mit der v4.3.3.28 (wir informieren, wenn die bereitsteht) werden auch "sehr lange Aliase" möglich sein...

                        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 Reply Last reply
                        2
                        • T Do not disturb
                          T Do not disturb
                          ticaki
                          wrote on last edited by ticaki
                          #4694

                          Einen weiteren Verbesserungsvorschlag:
                          Mein MQTT-Adapter läuft als Client und der Port Check gibt da ne unnötige Warnung aus. Hab keine Lust das jedesmal selbst einzufügen 🙂

                                                  let mqttInstance = adapterArray.indexOf(instanceName);
                                                  
                                                  const mqttConfig = getObject(`system.adapter.${adapterArray[mqttInstance]}`)
                                                  if (mqttConfig && mqttConfig.native && mqttConfig.native.type == 'client') {
                                                      log('- MQTT-Port-Check OK: Instance of Adapter: ' +adapterArray[mqttInstance] + ' is running as client!','info');
                                                  } else {
                                                      for (let j: number = 1; j < portArray.length; j++) {
                                                          if (portArray[j] == portArray[mqttInstance] && adapterArray[j] == adapterArray[mqttInstance]) {
                                                              log('- MQTT-Port-Check OK: Instance of Adapter: ' + adapterArray[j] + ' is running on Port:' + portArray[j], 'info');
                                                          } else if (portArray[j] == portArray[mqttInstance] && adapterArray[j] != adapterArray[mqttInstance]) {     
                                                              log('Instance of Adapter: ' + adapterArray[j] + ' is running on same Port:' + portArray[j] + ' as ' + adapterArray[mqttInstance], 'warn');
                                                              log('Please Change Port of Instance: ' + adapterArray[j], 'warn');
                                                          }
                                                      }
                                                  }
                                                  log('End MQTT-Port-Check ---------------------------------------','info');
                          

                          Scheinbar ist instanceName das selbe wie adapterArray[mqttInstance]

                          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                          Spenden

                          1 Reply Last reply
                          2
                          • ArmilarA Offline
                            ArmilarA Offline
                            Armilar
                            Most Active Forum Testing
                            wrote on last edited by Armilar
                            #4695

                            @ticaki

                            habe es mit in die DEV aufgenommen...

                            War heute mit ordentlich mit dem Fix beschäftigt - da habe ich rechts und links nichts mehr bemerkt 😀

                            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.

                            T 1 Reply Last reply
                            1
                            • ArmilarA Armilar

                              @ticaki

                              habe es mit in die DEV aufgenommen...

                              War heute mit ordentlich mit dem Fix beschäftigt - da habe ich rechts und links nichts mehr bemerkt 😀

                              T Do not disturb
                              T Do not disturb
                              ticaki
                              wrote on last edited by ticaki
                              #4696

                              @armilar

                              👍

                              Hab auch ein bissle hinbekommen:
                              Klimanalge ist steuerbar (mit 2 set)
                              Fenster offen über 3 Menüs anzeigbar dabei ist mir jedoch ein "Fehler" aufgefallen... ist auf jeden Fall komisch. Die Reaktion der Icons unterscheidet sich.

                              let ObergeschossWindow = <PageGrid>{
                                  'type': 'cardGrid',
                                  'heading': 'Menü',
                                  'useColor': true,
                                  'subPage': true,
                                  'parent': MenuGrid,
                                  'items': [
                                      <PageItem>{ navigate: true, targetPage: 'WohnzimmerWindow', id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', onColor: MSGreen, offColor: MSRed, icon2:'window-open-variant', icon: 'window-closed-variant' },
                                      <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', onColor: MSGreen, offColor: MSRed},
                                      <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', onColor: MSGreen, offColor: MSRed},
                                  ]};
                              

                              Beim ersten PageItem muss ich die Icons vorgeben weil dort false/true für Icons umgereht wird. Betrifft auch die andern window in denen ich navigate/targetPage nutze

                              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                              Spenden

                              T 1 Reply Last reply
                              0
                              • T ticaki

                                @armilar

                                👍

                                Hab auch ein bissle hinbekommen:
                                Klimanalge ist steuerbar (mit 2 set)
                                Fenster offen über 3 Menüs anzeigbar dabei ist mir jedoch ein "Fehler" aufgefallen... ist auf jeden Fall komisch. Die Reaktion der Icons unterscheidet sich.

                                let ObergeschossWindow = <PageGrid>{
                                    'type': 'cardGrid',
                                    'heading': 'Menü',
                                    'useColor': true,
                                    'subPage': true,
                                    'parent': MenuGrid,
                                    'items': [
                                        <PageItem>{ navigate: true, targetPage: 'WohnzimmerWindow', id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', onColor: MSGreen, offColor: MSRed, icon2:'window-open-variant', icon: 'window-closed-variant' },
                                        <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', onColor: MSGreen, offColor: MSRed},
                                        <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', onColor: MSGreen, offColor: MSRed},
                                    ]};
                                

                                Beim ersten PageItem muss ich die Icons vorgeben weil dort false/true für Icons umgereht wird. Betrifft auch die andern window in denen ich navigate/targetPage nutze

                                T Offline
                                T Offline
                                TT-Tom
                                wrote on last edited by TT-Tom
                                #4697

                                @ticaki

                                Bei dem Wert true wird Windowopen dargestellt.
                                Wenn der Channel von Typ window ist brauchst du keine Icon und Farbe angeben, das übernimmt das Script für dich in beiden Fällen. (Navi und Standard).

                                Siehe dir mal im Script die Function CreateEntity an.
                                Es wird der Channel Typ ausgewertet und die Datenpunkte darunter (z.B.ACTUAL)

                                PageItem>{ navigate: true, targetPage: 'WohnzimmerWindow', id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', useColor: true },
                                        <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', useColor: true},
                                        <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', useColor: true },
                                    ]};
                                

                                Also die „room“ müssen Channel Typ window sein und darunter ein Datenpunkt ACTUAL Typ boolean.
                                Dann sollte es mit dem PageItem funktionieren.

                                Gruß Tom
                                https://github.com/tt-tom17
                                Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                                NSPanel Script Wiki
                                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                NSPanel Adapter Wiki
                                https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                                1 Reply Last reply
                                0
                                • T Do not disturb
                                  T Do not disturb
                                  ticaki
                                  wrote on last edited by ticaki
                                  #4698

                                  @tt-tom

                                  Ich hab mal ein Bild gemacht mit folgenden einstellungen. Vielleicht verstehst du es dann besser:

                                  Fenster sind alle zu!

                                  'items': [
                                          <PageItem>{ navigate: true, targetPage: 'WohnzimmerWindow', id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', onColor: MSGreen, offColor: MSRed, icon2:'window-open-variant', icon: 'window-closed-variant' },
                                          <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', onColor: MSGreen, offColor: MSRed},
                                          <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', onColor: MSGreen, offColor: MSRed},
                                      ]};
                                  

                                  IMG_0244.jpeg

                                  'items': [
                                          <PageItem>{ navigate: true, targetPage: 'WohnzimmerWindow', id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', onColor: MSGreen, offColor: MSRed },
                                          <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', onColor: MSGreen, offColor: MSRed},
                                          <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', onColor: MSGreen, offColor: MSRed},
                                      ]};
                                  

                                  IMG_0245.jpeg

                                  Das Icon bei Wohnzimmer ist offen

                                  Jetzt ohne navigate

                                  'items': [
                                          <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', onColor: MSGreen, offColor: MSRed },
                                          <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', onColor: MSGreen, offColor: MSRed},
                                          <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', onColor: MSGreen, offColor: MSRed},
                                      ]};
                                  

                                  IMG_0246.jpeg

                                  Odner sehe in dem Bereich so aus: (BUTTONTEXT hab ich im Code gefunden, das verhalten war aber schon vorher so)

                                  Bildschirmfoto 2023-12-30 um 01.53.08.png

                                  Es geht ja für mich, wundert mich nur wieso das durch navigate das icon von auf zu zu wechselt

                                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                  Spenden

                                  T 1 Reply Last reply
                                  0
                                  • T ticaki

                                    @tt-tom

                                    Ich hab mal ein Bild gemacht mit folgenden einstellungen. Vielleicht verstehst du es dann besser:

                                    Fenster sind alle zu!

                                    'items': [
                                            <PageItem>{ navigate: true, targetPage: 'WohnzimmerWindow', id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', onColor: MSGreen, offColor: MSRed, icon2:'window-open-variant', icon: 'window-closed-variant' },
                                            <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', onColor: MSGreen, offColor: MSRed},
                                            <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', onColor: MSGreen, offColor: MSRed},
                                        ]};
                                    

                                    IMG_0244.jpeg

                                    'items': [
                                            <PageItem>{ navigate: true, targetPage: 'WohnzimmerWindow', id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', onColor: MSGreen, offColor: MSRed },
                                            <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', onColor: MSGreen, offColor: MSRed},
                                            <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', onColor: MSGreen, offColor: MSRed},
                                        ]};
                                    

                                    IMG_0245.jpeg

                                    Das Icon bei Wohnzimmer ist offen

                                    Jetzt ohne navigate

                                    'items': [
                                            <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Wohnzimmer.room', onColor: MSGreen, offColor: MSRed },
                                            <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Schlafzimmer.room', onColor: MSGreen, offColor: MSRed},
                                            <PageItem>{ id: 'alias.0.NSPanel.1.usr.Fenster.Obergeschoss.Bad.room', onColor: MSGreen, offColor: MSRed},
                                        ]};
                                    

                                    IMG_0246.jpeg

                                    Odner sehe in dem Bereich so aus: (BUTTONTEXT hab ich im Code gefunden, das verhalten war aber schon vorher so)

                                    Bildschirmfoto 2023-12-30 um 01.53.08.png

                                    Es geht ja für mich, wundert mich nur wieso das durch navigate das icon von auf zu zu wechselt

                                    T Offline
                                    T Offline
                                    TT-Tom
                                    wrote on last edited by TT-Tom
                                    #4699

                                    @ticaki

                                    Guten Morgen,

                                    ja kann ich bestätigen, werden wir anpassen, damit die Logik stimmt.

                                    folgende Codezeilen müssen in der Function CreateEntity angepasst werden

                                                            case 'window':
                                                                iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                                                iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                     
                                                                buttonText = pageItem.buttonText !== undefined ? pageItem.buttonText : existsState(pageItem.id + '.BUTTONTEXT') ? getState(pageItem.id + '.BUTTONTEXT').val : 'PRESS';
                                                                if (existsState(pageItem.id + '.COLORDEC')) {
                                                                    iconColor = getState(pageItem.id + '.COLORDEC').val;
                                                                } else {
                                                                    if (val === true || val === 'true') {
                                                                        iconColor = GetIconColor(pageItem, true, useColors);
                                                                    } else {
                                                                        iconColor = GetIconColor(pageItem, false, useColors);
                                                                    }
                                                                }
                                                                if (val === true || val === 'true') { iconId = iconId2 };                       
                                                                break;
                                     
                                    

                                    und im zweiten Teil

                                                    case 'window':
                                                        type = 'text';
                                                        let windowState;
                                     
                                                        if (existsState(pageItem.id + '.ACTUAL')) {
                                                            if (getState(pageItem.id + '.ACTUAL').val) {
                                                                iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                                                iconColor = GetIconColor(pageItem, true, useColors);
                                                                windowState = findLocale('window', 'opened');
                                                            } else {
                                                                iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                                                iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                                                                iconColor = GetIconColor(pageItem, false, useColors);
                                                                windowState = findLocale('window', 'closed');
                                                            }
                                                        }
                                     
                                                        if (Debug) log('CreateEntity Icon role door/window ~' + type + '~' + pageItem.id + '~' + iconId + '~' + iconColor + '~' + name + '~' + windowState, 'info');
                                                        return '~' + type + '~' + pageItem.id + '~' + iconId + '~' + iconColor + '~' + name + '~' + windowState;
                                    
                                    

                                    Danke für die Info. Ich mach jetzt mal die Augen zu, bis nachher 😴

                                    Gruß Tom
                                    https://github.com/tt-tom17
                                    Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                                    NSPanel Script Wiki
                                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                    NSPanel Adapter Wiki
                                    https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                                    T 1 Reply Last reply
                                    2
                                    • T TT-Tom

                                      @ticaki

                                      Guten Morgen,

                                      ja kann ich bestätigen, werden wir anpassen, damit die Logik stimmt.

                                      folgende Codezeilen müssen in der Function CreateEntity angepasst werden

                                                              case 'window':
                                                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                                                  iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                       
                                                                  buttonText = pageItem.buttonText !== undefined ? pageItem.buttonText : existsState(pageItem.id + '.BUTTONTEXT') ? getState(pageItem.id + '.BUTTONTEXT').val : 'PRESS';
                                                                  if (existsState(pageItem.id + '.COLORDEC')) {
                                                                      iconColor = getState(pageItem.id + '.COLORDEC').val;
                                                                  } else {
                                                                      if (val === true || val === 'true') {
                                                                          iconColor = GetIconColor(pageItem, true, useColors);
                                                                      } else {
                                                                          iconColor = GetIconColor(pageItem, false, useColors);
                                                                      }
                                                                  }
                                                                  if (val === true || val === 'true') { iconId = iconId2 };                       
                                                                  break;
                                       
                                      

                                      und im zweiten Teil

                                                      case 'window':
                                                          type = 'text';
                                                          let windowState;
                                       
                                                          if (existsState(pageItem.id + '.ACTUAL')) {
                                                              if (getState(pageItem.id + '.ACTUAL').val) {
                                                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                                                  iconColor = GetIconColor(pageItem, true, useColors);
                                                                  windowState = findLocale('window', 'opened');
                                                              } else {
                                                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                                                  iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : iconId;
                                                                  iconColor = GetIconColor(pageItem, false, useColors);
                                                                  windowState = findLocale('window', 'closed');
                                                              }
                                                          }
                                       
                                                          if (Debug) log('CreateEntity Icon role door/window ~' + type + '~' + pageItem.id + '~' + iconId + '~' + iconColor + '~' + name + '~' + windowState, 'info');
                                                          return '~' + type + '~' + pageItem.id + '~' + iconId + '~' + iconColor + '~' + name + '~' + windowState;
                                      
                                      

                                      Danke für die Info. Ich mach jetzt mal die Augen zu, bis nachher 😴

                                      T Do not disturb
                                      T Do not disturb
                                      ticaki
                                      wrote on last edited by
                                      #4700

                                      @tt-tom

                                      Danke, kann bestätigen das ACTUAL == true jetzt durchgehend für on* steht

                                      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                      Spenden

                                      1 Reply Last reply
                                      0
                                      • T Do not disturb
                                        T Do not disturb
                                        ticaki
                                        wrote on last edited by
                                        #4701

                                        Noch was, ich hab mir ein Skript geschrieben, das mir die Datenpunkte/Aliase zu Fenster offen erstellt und diese aktualisiert. Wenn das jemand gebrauchen kann https://github.com/ticaki/iobroker-skript-sammlung/blob/main/NS_Panel_Windows.ts

                                        Ist nicht sehr schön oder benutzerfreundlich. Wenns aber jemand verwenden will, investiere ich da gerne noch mehr Zeit um es "schick" zu machen. Für mich reicht es so. 🙂

                                        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                        Spenden

                                        K T 2 Replies Last reply
                                        3
                                        • T ticaki

                                          Noch was, ich hab mir ein Skript geschrieben, das mir die Datenpunkte/Aliase zu Fenster offen erstellt und diese aktualisiert. Wenn das jemand gebrauchen kann https://github.com/ticaki/iobroker-skript-sammlung/blob/main/NS_Panel_Windows.ts

                                          Ist nicht sehr schön oder benutzerfreundlich. Wenns aber jemand verwenden will, investiere ich da gerne noch mehr Zeit um es "schick" zu machen. Für mich reicht es so. 🙂

                                          K Offline
                                          K Offline
                                          Kuckuckmann
                                          wrote on last edited by
                                          #4702

                                          @ticaki
                                          Hey @ticaki ,

                                          vielen Dank für das Angebot. Wenn Du es noch bissel schick machst, dann kann ich es gerne mit einer entsprechenden Beschreibung in unsere Wiki im Bereich Skripte und Anleitungen hinzufügen.

                                          LG

                                          NSPanel Dokumentation im GitHub Wiki:

                                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                          1 Reply Last reply
                                          2
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          588

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe