Skip to content
  • 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
  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.9k

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

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.
  • C c3b

    @tt-tom Hi Leutz
    Ich noch mal. Ich bin leider noch nicht weiter. Ich habe die drei Datenpunkte angelegt und stecke jetzt bei den Alias fest. Sobald ich einen Alias als Tastensensor anlege, kommt eine leere Seite, anstatt der Zuordnungsliste. Dann kann ich ihn nur noch löschen. Sperrt der iobroker Datenpunkte, wenn sie schon einmal angelegt waren? Ich habe es schon ein paar mal versucht und immer wieder gelöscht.
    Kennt das Problem jemand? Hab den iobroker schon einmal neu gestartet. Bringt aber nichts. Wenn ich einen anderen Namen nehme, geht es. Ich bekomme aber den DP value nicht angelegt. Deshalb habe ich den DP auch immer wieder gelöscht.

    Im Protokoll steht folgender Eintrag:

    	Alias alias.0.Küche.WLED.Gerät_2.PRESS has no target 9
    javascript.0
    	2023-01-09 20:44:35.442	warn	Could not add alias subscription: Alias alias.0.Küche.WLED.Gerät_2.PRESS has no target 12
    javascript.0
    	2023-01-09 20:44:35.442	warn	Alias alias.0.Küche.WLED.Gerät_2.PRESS has no target 12
    

    Ist ja auch klar, da ich die Zuordnungstabelle nicht angezeigt bekomme.

    LG aus dem Sauerland

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

    @c3b sagte in SONOFF NSPanel mit Lovelace UI:

    mt eine leere Seite, anstatt der Zuordnungsliste. Dann kann ich ihn nur noch löschen. Sperrt der iobroker Datenpunkte, wenn sie schon einmal angelegt waren? Ich habe es schon ein paar mal versucht und immer wieder gelöscht.
    Kennt das Problem jemand? Hab den iobroker schon einmal neu gestartet. Bringt aber nichts. Wenn ich einen anderen Namen nehme, geht es. Ich bekomme aber den DP value nicht angelegt. Deshalb habe ich den DP auch immer wieder gelöscht.
    Im Protokoll steht folgender Eintrag:

    Du hast bestimmt die Version 1.1.2 vom Geräte-Manager installiert. Die ist sowas von kaputt...

    Mach mal ein Downgrade von dem Adapter auf die 1.1.1

    Danach kannst du den .VALUE anlegen

    EDIT: Ist zwar nicht das Problem, aber versuche Umlaute in Alias-Namen zu vermeiden. Kueche statt Küche. Im PageItem kannst du wieder name: 'Küche...' verwenden

    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

      @ronny130286

      Nee, habe ich jetzt mit der Code-Änderung auch... nicht mal mit Taster

      R Offline
      R Offline
      ronny130286
      schrieb am zuletzt editiert von ronny130286
      #1608

      @armilar

      dann ist das bei mir durch den Alias, wo es mir aufgefallen ist dieser sieht so aus: c684c2b0-ac99-4daf-a10c-0d3073e832c2-image.png

      21:08:33.181	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.SET
      21:08:33.182	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.ACTUAL
      
      ArmilarA 2 Antworten Letzte Antwort
      0
      • R ronny130286

        @armilar

        dann ist das bei mir durch den Alias, wo es mir aufgefallen ist dieser sieht so aus: c684c2b0-ac99-4daf-a10c-0d3073e832c2-image.png

        21:08:33.181	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.SET
        21:08:33.182	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.ACTUAL
        
        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von
        #1609

        @ronny130286

        schießt bei meinen sogar 4x

        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.

        R 1 Antwort Letzte Antwort
        0
        • R ronny130286

          @armilar

          dann ist das bei mir durch den Alias, wo es mir aufgefallen ist dieser sieht so aus: c684c2b0-ac99-4daf-a10c-0d3073e832c2-image.png

          21:08:33.181	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.SET
          21:08:33.182	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.ACTUAL
          
          ArmilarA Offline
          ArmilarA Offline
          Armilar
          Most Active Forum Testing
          schrieb am zuletzt editiert von Armilar
          #1610

          @ronny130286

          bau mal ein else vor den ACTUAL

                     if (existsState(pageItem.id + '.SET')  && !existsState(pageItem.id + '.STATE')) { //Bei MonoButton
                          console.log('.SET hat getriggert');
                          val = getState(pageItem.id + '.SET').val;
                          RegisterEntityWatcher(pageItem.id + '.SET');
                      } 
                      else if (existsState(pageItem.id + '.ACTUAL')) {
                          val = getState(pageItem.id + '.ACTUAL').val;
                          RegisterEntityWatcher(pageItem.id + '.ACTUAL');
                      }
          

          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.

          R 1 Antwort Letzte Antwort
          0
          • ArmilarA Armilar

            @ronny130286

            schießt bei meinen sogar 4x

            R Offline
            R Offline
            ronny130286
            schrieb am zuletzt editiert von ronny130286
            #1611

            @armilar

            ist der Zustand gewollt?
            Weil erzeugt wird es hier:

                        if (existsState(pageItem.id + '.GET')) {
                            val = getState(pageItem.id + '.GET').val;
                            RegisterEntityWatcher(pageItem.id + '.GET');
                        }
            	    if (existsState(pageItem.id + ".STATE")) {
            		val = getState(pageItem.id + ".STATE").val;
            		RegisterEntityWatcher(pageItem.id + ".STATE");
                        }
                        if (existsState(pageItem.id + '.SET') && !existsState(pageItem.id + ".STATE")) {
                            val = getState(pageItem.id + '.SET').val;
                            RegisterEntityWatcher(pageItem.id + '.SET');
                        }
                        if (existsState(pageItem.id + '.ACTUAL')) {
                            val = getState(pageItem.id + '.ACTUAL').val;
                            RegisterEntityWatcher(pageItem.id + '.ACTUAL');
                        }
                        if (existsState(pageItem.id + '.ON_ACTUAL')) {
                            val = getState(pageItem.id + '.ON_ACTUAL').val;
                            RegisterEntityWatcher(pageItem.id + '.ON_ACTUAL');
                        } 
                        if (existsState(pageItem.id + '.ON_SET')) {
                            val = getState(pageItem.id + '.ON_SET').val;
                            RegisterEntityWatcher(pageItem.id + '.ON_SET');
                        }
                        if (existsState(pageItem.id + '.ON')) {
                            val = getState(pageItem.id + '.ON').val;
                            RegisterEntityWatcher(pageItem.id + '.ON');
                        }
            

            wenn du alle 6 Bedingungen hast im Alias, dann würde er sogar 6 mal auslösen.
            ich habs mal so versucht:

                        let onlyOneState = 0;
             
                        if (existsState(pageItem.id + '.GET')) {
                            onlyOneState = 1;
                            val = getState(pageItem.id + '.GET').val;
                            RegisterEntityWatcher(pageItem.id + '.GET');
                        }
            	    if (existsState(pageItem.id + ".STATE") && onlyOneState==0) {
                            onlyOneState = 1;
            		val = getState(pageItem.id + ".STATE").val;
            		RegisterEntityWatcher(pageItem.id + ".STATE");
                        }
                        if (existsState(pageItem.id + '.SET') && !existsState(pageItem.id + ".STATE") && onlyOneState==0) {
                            onlyOneState = 1;
                            val = getState(pageItem.id + '.SET').val;
                            RegisterEntityWatcher(pageItem.id + '.SET');
                        }
                        if (existsState(pageItem.id + '.ACTUAL') && onlyOneState==0) {
                            onlyOneState = 1;
                            val = getState(pageItem.id + '.ACTUAL').val;
                            RegisterEntityWatcher(pageItem.id + '.ACTUAL');
                        }
                        if (existsState(pageItem.id + '.ON_ACTUAL') && onlyOneState==0) {
                            onlyOneState = 1;
                            val = getState(pageItem.id + '.ON_ACTUAL').val;
                            RegisterEntityWatcher(pageItem.id + '.ON_ACTUAL');
                        } 
                        if (existsState(pageItem.id + '.ON_SET') && onlyOneState==0) {
                            onlyOneState = 1;
                            val = getState(pageItem.id + '.ON_SET').val;
                            RegisterEntityWatcher(pageItem.id + '.ON_SET');
                        }
                        if (existsState(pageItem.id + '.ON') && onlyOneState==0) {
                            onlyOneState = 1;
                            val = getState(pageItem.id + '.ON').val;
                            RegisterEntityWatcher(pageItem.id + '.ON');
                        }
            

            Dort macht er immer nur einmal (das war er als erstes sieht) oder überall aus If => Else If machen

            1 Antwort Letzte Antwort
            0
            • ArmilarA Armilar

              @ronny130286

              bau mal ein else vor den ACTUAL

                         if (existsState(pageItem.id + '.SET')  && !existsState(pageItem.id + '.STATE')) { //Bei MonoButton
                              console.log('.SET hat getriggert');
                              val = getState(pageItem.id + '.SET').val;
                              RegisterEntityWatcher(pageItem.id + '.SET');
                          } 
                          else if (existsState(pageItem.id + '.ACTUAL')) {
                              val = getState(pageItem.id + '.ACTUAL').val;
                              RegisterEntityWatcher(pageItem.id + '.ACTUAL');
                          }
              
              R Offline
              R Offline
              ronny130286
              schrieb am zuletzt editiert von ronny130286
              #1612

              @armilar

              das Else behebt es an der Stelle natürlich auch, aber wenn ich mir die Doku ansehe:
              60d773de-d08d-41b3-939a-a7abc6394b8f-image.png
              dann brauchst noch mehr Else

              ich bin mir halt nicht sicher ob man es in einer bestimmten Konstellation für ein Objekt (siehe Dimmer Bild) benötigt.

              ArmilarA 1 Antwort Letzte Antwort
              0
              • R ronny130286

                @armilar

                das Else behebt es an der Stelle natürlich auch, aber wenn ich mir die Doku ansehe:
                60d773de-d08d-41b3-939a-a7abc6394b8f-image.png
                dann brauchst noch mehr Else

                ich bin mir halt nicht sicher ob man es in einer bestimmten Konstellation für ein Objekt (siehe Dimmer Bild) benötigt.

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

                @ronny130286

                Mein Gedanke war, warum sollte es in einer Funktion die immer korrekt gelaufen ist, auf einmal Probleme geben?

                Ich habe in der HandleButtonEvent:

                            case 'OnOff':
                                if (existsObject(id)) {
                                    let action = false
                                    if (words[4] == '1')
                                        action = true;
                                    let o = getObject(id);
                                    switch (o.common.role) {
                                        case 'level.mode.fan':
                                        case 'socket':
                                        case 'light':
                
                                            let pageItem = findPageItem(id);	
                							if(pageItem.monobutton != undefined && pageItem.monobutton == true){	
                								triggerButton(id + ".SET")	
                							}	
                							else {	
                								setIfExists(id + '.SET', action);
                							}		
                							break;
                

                die Funktion toggleState wieder herausgenommen und gegen das ursprüngliche setIfExists(id + '.SET', action); ersetzt. War vorher auch nicht im Code. Jetzt läufts wieder. Vermute bei dir liegt es dann in der triggerButton.

                EDIT: Mit dem einmaligen durchlaufen, kamen viele wichtige Events nicht mehr an.

                Ich versuche die mal Events analog des Sliders durch ein Timeout laufen zu lassen und nur das letzte jeweilige Event auszuwerten.

                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.

                R 1 Antwort Letzte Antwort
                0
                • C Offline
                  C Offline
                  c3b
                  schrieb am zuletzt editiert von
                  #1614

                  @armilar Hi
                  Wiedermal ein Volltreffer. Downgrade und es funktioniert. Das mit den Umlauten hatte ich schon vermutet. Geht zwar, hab es aber doch geändert.
                  So wie ich das sehe, habe ich jetzt ein Problem mit dem Eintrag "index01"

                  let WLED: PageGrid =
                  {
                      "type": "cardGrid",
                        "heading": "WLED",
                      "useColor": true,
                      "subPage": false,
                      "parent": Index01,
                      "items": [
                          <PageItem>{ id: "alias.0.WLED.POWER", name: "Power", icon: "power", onColor: Blue, offColor: HMIOff},
                          <PageItem>{ id: "alias.0.WLED.Synch", name: "Sync", icon: "sync", onColor: Blue, offColor: White},
                    	<PageItem>{ id: "alias.0.WLED.Timer", name: "Timer", icon: "moon-waxing-crescent", onColor: Blue, offColor: White},
                          <PageItem>{ id: "alias.0.WLED.Presets", icon: "heart-outline", name: "Presets", onColor: White, modeList: ['Preset 0', 'Add Preset']},
                          <PageItem>{ id: "alias.0.WLED.Colors", icon: "palette", name: "Colors", onColor: White, 
                                      modeList: ['Default', '* Color 1', '* Color Gradient', '* Colors 1&2', '* Colors Only', '* Random Cycle', 'Analogus','April Night', 'Aqua Flash', 'Atlantica', 'Aurora', 'Beach', 'Beech', 'Blink Red', 'Breeze', 'C9', 'C9 New', 'Candy', 'Candy2', 'Cloud', 'Cyane', 'Departure', 'Drywet', 'Fairy Reaf', 'Fire', 'Forest', 'etc']},
                          <PageItem>{ id: "alias.0.WLED.Effects", icon: "emoticon-outline", name: "Effects", onColor: White, 
                                      modeList: ['Solid', 'Android', 'Aurora', 'Blends', 'Blink', 'Blink Rainbow', 'Bouncing Balls','Bpm', 'Breathe', 'Candle', 'Candle Multi', 'Candy Cane', 'Chase', 'Chase 1', 'Chase 2', 'Chase 3', 'Chase Flash', 'Chase Flash Rnd', 'Chase Rainbow', 'Chase Random', 'Chunchun', 'Colorful', 'Colorloop', 'Colortwinkles', 'Colorwaves', 'Dancing Shadows', 'etc']},
                          //<PageItem>{ id: "alias.0.NSPanel_1.WLED.Example.Segments", icon: "layers", name: "Segments", onColor: White, modeList: ['Segment 0', 'Add Segment']},
                      ]
                  };
                  

                  Soll das ein Aufruf einer Subpage index01 sein?
                  Als nächstes mekkert er die Pageitem colors, effects und presets an. Das habe ich noch nicht ganz verstanden. Es steht dort zwar, dass die Einträge gleich sein sollen. Woher weiß ich denn, welche ich habe? Momentan habe ich nur ein preset auf dem WLED. Dann sollte dortdoch auch nur einer stehen. Oder watt?

                  Eigentlich wollte ich auf einer Seite zwei Lichtschalter und als drittes den WLED-Stripe anzeigen. Wenn ich mit let WLED: Pagegrid anfange, definiere ich doch eine separate Seite, welche ich auch aufrufen muss. Kann man nicht als drittes einen Eintrag definieren und bei Anwahl auf den Eintrag die Subpage WLED aufrufen? So wie bei den RGB aufrufen auch?

                  LG aus dem Sauerland

                  ArmilarA C 2 Antworten Letzte Antwort
                  0
                  • ArmilarA Armilar

                    @ronny130286

                    Mein Gedanke war, warum sollte es in einer Funktion die immer korrekt gelaufen ist, auf einmal Probleme geben?

                    Ich habe in der HandleButtonEvent:

                                case 'OnOff':
                                    if (existsObject(id)) {
                                        let action = false
                                        if (words[4] == '1')
                                            action = true;
                                        let o = getObject(id);
                                        switch (o.common.role) {
                                            case 'level.mode.fan':
                                            case 'socket':
                                            case 'light':
                    
                                                let pageItem = findPageItem(id);	
                    							if(pageItem.monobutton != undefined && pageItem.monobutton == true){	
                    								triggerButton(id + ".SET")	
                    							}	
                    							else {	
                    								setIfExists(id + '.SET', action);
                    							}		
                    							break;
                    

                    die Funktion toggleState wieder herausgenommen und gegen das ursprüngliche setIfExists(id + '.SET', action); ersetzt. War vorher auch nicht im Code. Jetzt läufts wieder. Vermute bei dir liegt es dann in der triggerButton.

                    EDIT: Mit dem einmaligen durchlaufen, kamen viele wichtige Events nicht mehr an.

                    Ich versuche die mal Events analog des Sliders durch ein Timeout laufen zu lassen und nur das letzte jeweilige Event auszuwerten.

                    R Offline
                    R Offline
                    ronny130286
                    schrieb am zuletzt editiert von ronny130286
                    #1615

                    @armilar said in SONOFF NSPanel mit Lovelace UI:

                    ieder herausgenommen und gegen das ursprüngliche setIfExists(id + '.SET', action); ersetzt. War vorher auch nicht im Co

                    Ich habe bei mir noch ein altes Panel gefunden mit Version 3.4 und dort sieht die CreateEntity Funtkion anfangs so aus:

                    function CreateEntity(pageItem: PageItem, placeId: number, useColors: boolean = false): string {
                        try {
                            var iconId = '0';
                            if (pageItem.id == 'delete') {
                                return '~delete~~~~~';
                            }
                    
                            var name: string;
                            var type: string;
                    
                            // ioBroker
                            if (existsObject(pageItem.id) || pageItem.navigate === true) {
                                var iconColor = rgb_dec565(config.defaultColor);
                    
                                if (pageItem.navigate) {
                                    type = 'button';
                                    iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button');
                                    iconColor = GetIconColor(pageItem, true, useColors);
                                    let buttonText = pageItem.buttonText !== undefined ? pageItem.buttonText : 'PRESS';
                                    return '~' + type + '~' + 'navigate.' + pageItem.id + '~' + iconId + '~' + iconColor + '~' + pageItem.name + '~' + buttonText;
                                }
                    
                                let o = getObject(pageItem.id)
                                var val = null;
                    
                                if (existsState(pageItem.id + '.GET')) {
                                    val = getState(pageItem.id + '.GET').val;
                                    RegisterEntityWatcher(pageItem.id + '.GET');
                    			}
                    	    else if (existsState(pageItem.id + '.SET')) {
                                    val = getState(pageItem.id + '.SET').val;
                                    RegisterEntityWatcher(pageItem.id + '.SET');
                                }
                    
                                // Fallback if no name is given
                                name = pageItem.name !== undefined ? pageItem.name : o.common.name.de;
                    
                                switch (o.common.role) {
                                    case 'socket':
                    

                    das Panel hat trotz Trigger Button das Problem nicht => auch mein MonoTaster im neuen Script 3.8.1 hat das Problem nicht, nur normale Schalter haben das Problem, wohl gemerkt wenn der Alias ein .SET und ein .ACTUAL gleichzeitig hat.

                    Ich lade nochmal das Script von github und teste es nochmal ohne meine Monobuttonänderung und berichte 😉

                    EDIT: Hat leider den gleichen Effekt 😞
                    Ich habe mal .ACTUAL aus meinem Alias gelöscht, aber dann zeigt er keinen Status mehr an.

                    EDIT: hier nochmal ein kleines Video: 20230109-223235_npQAjIVi.mp4
                    Log:

                    22:34:12.110	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Weihnachten.SET => Normaler Schalter
                    22:34:12.116	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Weihnachten.ACTUAL => Normaler Schalter
                    22:34:12.117	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.SET => Normaler Schalter
                    22:34:12.118	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.ACTUAL => Normaler Schalter
                    22:34:12.118	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Buero.STATE => Monobutton
                    
                    ArmilarA 1 Antwort Letzte Antwort
                    0
                    • C c3b

                      @armilar Hi
                      Wiedermal ein Volltreffer. Downgrade und es funktioniert. Das mit den Umlauten hatte ich schon vermutet. Geht zwar, hab es aber doch geändert.
                      So wie ich das sehe, habe ich jetzt ein Problem mit dem Eintrag "index01"

                      let WLED: PageGrid =
                      {
                          "type": "cardGrid",
                            "heading": "WLED",
                          "useColor": true,
                          "subPage": false,
                          "parent": Index01,
                          "items": [
                              <PageItem>{ id: "alias.0.WLED.POWER", name: "Power", icon: "power", onColor: Blue, offColor: HMIOff},
                              <PageItem>{ id: "alias.0.WLED.Synch", name: "Sync", icon: "sync", onColor: Blue, offColor: White},
                        	<PageItem>{ id: "alias.0.WLED.Timer", name: "Timer", icon: "moon-waxing-crescent", onColor: Blue, offColor: White},
                              <PageItem>{ id: "alias.0.WLED.Presets", icon: "heart-outline", name: "Presets", onColor: White, modeList: ['Preset 0', 'Add Preset']},
                              <PageItem>{ id: "alias.0.WLED.Colors", icon: "palette", name: "Colors", onColor: White, 
                                          modeList: ['Default', '* Color 1', '* Color Gradient', '* Colors 1&2', '* Colors Only', '* Random Cycle', 'Analogus','April Night', 'Aqua Flash', 'Atlantica', 'Aurora', 'Beach', 'Beech', 'Blink Red', 'Breeze', 'C9', 'C9 New', 'Candy', 'Candy2', 'Cloud', 'Cyane', 'Departure', 'Drywet', 'Fairy Reaf', 'Fire', 'Forest', 'etc']},
                              <PageItem>{ id: "alias.0.WLED.Effects", icon: "emoticon-outline", name: "Effects", onColor: White, 
                                          modeList: ['Solid', 'Android', 'Aurora', 'Blends', 'Blink', 'Blink Rainbow', 'Bouncing Balls','Bpm', 'Breathe', 'Candle', 'Candle Multi', 'Candy Cane', 'Chase', 'Chase 1', 'Chase 2', 'Chase 3', 'Chase Flash', 'Chase Flash Rnd', 'Chase Rainbow', 'Chase Random', 'Chunchun', 'Colorful', 'Colorloop', 'Colortwinkles', 'Colorwaves', 'Dancing Shadows', 'etc']},
                              //<PageItem>{ id: "alias.0.NSPanel_1.WLED.Example.Segments", icon: "layers", name: "Segments", onColor: White, modeList: ['Segment 0', 'Add Segment']},
                          ]
                      };
                      

                      Soll das ein Aufruf einer Subpage index01 sein?
                      Als nächstes mekkert er die Pageitem colors, effects und presets an. Das habe ich noch nicht ganz verstanden. Es steht dort zwar, dass die Einträge gleich sein sollen. Woher weiß ich denn, welche ich habe? Momentan habe ich nur ein preset auf dem WLED. Dann sollte dortdoch auch nur einer stehen. Oder watt?

                      Eigentlich wollte ich auf einer Seite zwei Lichtschalter und als drittes den WLED-Stripe anzeigen. Wenn ich mit let WLED: Pagegrid anfange, definiere ich doch eine separate Seite, welche ich auch aufrufen muss. Kann man nicht als drittes einen Eintrag definieren und bei Anwahl auf den Eintrag die Subpage WLED aufrufen? So wie bei den RGB aufrufen auch?

                      LG aus dem Sauerland

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

                      @c3b

                      Parent muss nur definiert werden, wenn es eine niedrigere Ebene gibt als die Seite "WLED". Da es aber ja keine Subpage ist ( "subPage": false, ) muss "parent" auf undefined stehen

                      also:

                      let WLED: PageGrid =
                      {
                          "type": "cardGrid",
                          "heading": "WLED",
                          "useColor": true,
                          "subPage": false,
                          "parent": undefined,
                          "prev": undefined,
                          "next": undefined,
                          "home": undefined,
                          "items": [
                              <PageItem>{ id: "alias.0.WLED.POWER", name: "Power", icon: "power", onColor: Blue, offColor: HMIOff},
                              <PageItem>{ id: "alias.0.WLED.Synch", name: "Sync", icon: "sync", onColor: Blue, offColor: White},
                        	<PageItem>{ id: "alias.0.WLED.Timer", name: "Timer", icon: "moon-waxing-crescent", onColor: Blue, offColor: White},
                              <PageItem>{ id: "alias.0.WLED.Presets", icon: "heart-outline", name: "Presets", onColor: White, modeList: ['Preset 0', 'Add Preset']},
                              <PageItem>{ id: "alias.0.WLED.Colors", icon: "palette", name: "Colors", onColor: White, 
                                          modeList: ['Default', '* Color 1', '* Color Gradient', '* Colors 1&2', '* Colors Only', '* Random Cycle', 'Analogus','April Night', 'Aqua Flash', 'Atlantica', 'Aurora', 'Beach', 'Beech', 'Blink Red', 'Breeze', 'C9', 'C9 New', 'Candy', 'Candy2', 'Cloud', 'Cyane', 'Departure', 'Drywet', 'Fairy Reaf', 'Fire', 'Forest', 'etc']},
                              <PageItem>{ id: "alias.0.WLED.Effects", icon: "emoticon-outline", name: "Effects", onColor: White, 
                                          modeList: ['Solid', 'Android', 'Aurora', 'Blends', 'Blink', 'Blink Rainbow', 'Bouncing Balls','Bpm', 'Breathe', 'Candle', 'Candle Multi', 'Candy Cane', 'Chase', 'Chase 1', 'Chase 2', 'Chase 3', 'Chase Flash', 'Chase Flash Rnd', 'Chase Rainbow', 'Chase Random', 'Chunchun', 'Colorful', 'Colorloop', 'Colortwinkles', 'Colorwaves', 'Dancing Shadows', 'etc']},
                              //<PageItem>{ id: "alias.0.NSPanel_1.WLED.Example.Segments", icon: "layers", name: "Segments", onColor: White, modeList: ['Segment 0', 'Add Segment']},
                          ]
                      };
                      

                      Edit: Du hast doch eine Version ab 3.8.X, oder?

                      Falls ja, muss jede Seite um 3 weitere Parameter erweitert werden.

                      Falls nein, wird die Auswahlliste nicht funktionieren

                      siehe auch: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Navigation

                      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

                        @c3b

                        Parent muss nur definiert werden, wenn es eine niedrigere Ebene gibt als die Seite "WLED". Da es aber ja keine Subpage ist ( "subPage": false, ) muss "parent" auf undefined stehen

                        also:

                        let WLED: PageGrid =
                        {
                            "type": "cardGrid",
                            "heading": "WLED",
                            "useColor": true,
                            "subPage": false,
                            "parent": undefined,
                            "prev": undefined,
                            "next": undefined,
                            "home": undefined,
                            "items": [
                                <PageItem>{ id: "alias.0.WLED.POWER", name: "Power", icon: "power", onColor: Blue, offColor: HMIOff},
                                <PageItem>{ id: "alias.0.WLED.Synch", name: "Sync", icon: "sync", onColor: Blue, offColor: White},
                          	<PageItem>{ id: "alias.0.WLED.Timer", name: "Timer", icon: "moon-waxing-crescent", onColor: Blue, offColor: White},
                                <PageItem>{ id: "alias.0.WLED.Presets", icon: "heart-outline", name: "Presets", onColor: White, modeList: ['Preset 0', 'Add Preset']},
                                <PageItem>{ id: "alias.0.WLED.Colors", icon: "palette", name: "Colors", onColor: White, 
                                            modeList: ['Default', '* Color 1', '* Color Gradient', '* Colors 1&2', '* Colors Only', '* Random Cycle', 'Analogus','April Night', 'Aqua Flash', 'Atlantica', 'Aurora', 'Beach', 'Beech', 'Blink Red', 'Breeze', 'C9', 'C9 New', 'Candy', 'Candy2', 'Cloud', 'Cyane', 'Departure', 'Drywet', 'Fairy Reaf', 'Fire', 'Forest', 'etc']},
                                <PageItem>{ id: "alias.0.WLED.Effects", icon: "emoticon-outline", name: "Effects", onColor: White, 
                                            modeList: ['Solid', 'Android', 'Aurora', 'Blends', 'Blink', 'Blink Rainbow', 'Bouncing Balls','Bpm', 'Breathe', 'Candle', 'Candle Multi', 'Candy Cane', 'Chase', 'Chase 1', 'Chase 2', 'Chase 3', 'Chase Flash', 'Chase Flash Rnd', 'Chase Rainbow', 'Chase Random', 'Chunchun', 'Colorful', 'Colorloop', 'Colortwinkles', 'Colorwaves', 'Dancing Shadows', 'etc']},
                                //<PageItem>{ id: "alias.0.NSPanel_1.WLED.Example.Segments", icon: "layers", name: "Segments", onColor: White, modeList: ['Segment 0', 'Add Segment']},
                            ]
                        };
                        

                        Edit: Du hast doch eine Version ab 3.8.X, oder?

                        Falls ja, muss jede Seite um 3 weitere Parameter erweitert werden.

                        Falls nein, wird die Auswahlliste nicht funktionieren

                        siehe auch: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Navigation

                        C Offline
                        C Offline
                        c3b
                        schrieb am zuletzt editiert von
                        #1617

                        @armilar Hi
                        Das habe ich mir gedacht. Als undefined geht es. Aber wie du schon schreibst und ich es vorher vermutet hatte als eigene Seite. Also kann ich bei true und angabe einer Subpage diese als Unterseite aufrufen. Ich sehe dann aber nur den Powerbutton, den Syncbutton und den Timerbutton. Die anderen drei hatte ich zum testen erst einmal ausgeblendet, da sie einen Fehler bringen. Somit sehe ich auch keinen Farbkreis so wie beim RGB weil ich colors ja ausgeblendet habe.
                        Also kümmere ich mich noch um die drei Einträge.

                        LG aus dem Sauerland

                        ArmilarA 1 Antwort Letzte Antwort
                        0
                        • C Offline
                          C Offline
                          c3b
                          schrieb am zuletzt editiert von
                          #1618

                          @armilar Hi
                          Was meinst du mit 3.8.x?

                          R 1 Antwort Letzte Antwort
                          0
                          • C c3b

                            @armilar Hi
                            Was meinst du mit 3.8.x?

                            R Offline
                            R Offline
                            ronny130286
                            schrieb am zuletzt editiert von ronny130286
                            #1619

                            @c3b
                            Die Script Version (siehe ReleaseNotes) wenn du das Script nimmst: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts hättest du 3.8.1

                            1 Antwort Letzte Antwort
                            0
                            • C c3b

                              @armilar Hi
                              Das habe ich mir gedacht. Als undefined geht es. Aber wie du schon schreibst und ich es vorher vermutet hatte als eigene Seite. Also kann ich bei true und angabe einer Subpage diese als Unterseite aufrufen. Ich sehe dann aber nur den Powerbutton, den Syncbutton und den Timerbutton. Die anderen drei hatte ich zum testen erst einmal ausgeblendet, da sie einen Fehler bringen. Somit sehe ich auch keinen Farbkreis so wie beim RGB weil ich colors ja ausgeblendet habe.
                              Also kümmere ich mich noch um die drei Einträge.

                              LG aus dem Sauerland

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

                              @c3b

                              Kurzes Beispiel einer Seitennavi über 4 Level um die Parameter zu verstehen:

                              let Level_0_Grundstueck: PageGrid =
                              {
                                  'type': "cardGrid",
                                  'heading': "Grundstück",
                                  'useColor': true,
                                  'subPage': false,
                                  'parent': undefined,
                                  'prev': undefined,
                                  'next': undefined,
                                  'home': undefined, 
                                  'items': [
                                      <PageItem>{ navigate: true, id: null, targetPage: 'Level_1_Gartenhaus', name: 'Gartenhaus' ,icon: 'storefront-outline', offColor: MSRed, onColor: MSGreen},
                                  ]
                              };
                              
                                      let Level_1_Gartenhaus: PageGrid =
                                      {
                                          'type': 'cardGrid',
                                          'heading': 'Gartenhaus',
                                          'useColor': true,
                                          'subPage': true,
                                          'parent': Level_0_Grundstueck,
                                          'prev': undefined,
                                          'next': undefined,
                                          'home': 'Level_0_Grundstueck', 
                                          'items': [
                                              <PageItem>{ navigate: true, id: null, targetPage: 'Level_2_GH_Licht', name: 'Licht' , icon: 'lightbulb', offColor: HMIOff, onColor: HMIOn},
                                          ]
                                      };
                              
                                              let Level_2_GH_Licht: PageGrid =
                                              {
                                                  'type': 'cardGrid',
                                                  'heading': 'Gartenhaus Licht',
                                                  'useColor': true,
                                                  'subPage': true,
                                                  'parent': Level_1_Gartenhaus,
                                                  'prev': undefined,
                                                  'next': undefined,
                                                  'home': 'Level_0_Grundstueck', 
                                                  'items': [
                                                      <PageItem>{ navigate: true, id: null, targetPage: 'Level_3_GH_WLED', name: 'WLED' , icon: 'led-strip-variant', offColor: HMIOff, onColor: HMIOn},
                                                  ]
                                              };
                              
                                                      let Level_3_GH_WLED: PageGrid =
                                                      {
                                                          'type': 'cardGrid',
                                                          'heading': 'WLED Stripes WZ',
                                                          'useColor': true,
                                                          'subPage': false,
                                                          'parent': Level_2_GH_Licht,
                                                          'prev': undefined,
                                                          'next': undefined,
                                                          'home': 'Level_1_Gartenhaus',
                                                          'items': [
                                                              <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.On', name: 'Power', icon: 'power', onColor: HMIOn, offColor: HMIOff},
                                                              <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Sync', name: 'Sync', icon: 'sync', onColor: HMIOn, offColor: White},
                                                              <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Presets', icon: 'heart-outline', name: 'Presets', onColor: White, modeList: ['Preset 0', 'Add Preset']},
                                                              <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Colors', icon: 'palette', name: 'Colors', onColor: White, 
                                                                          modeList: ['Default', '* Color 1', '* Color Gradient', '* Colors 1&2', '* Colors Only', '* Random Cycle', 'Analogus','April Night', 'Aqua Flash', 'Atlantica', 'Aurora', 
                                                                                  'Beach', 'Beech', 'Blink Red', 'Breeze', 'C9', 'C9 New', 'Candy', 'Candy2', 'Cloud', 
                                                                                  'Cyane', 'Departure', 'Drywet', 'Fairy Reaf', 'Fire', 'Forest', 'etc'
                                                                                  ]},
                                                              <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Effects', icon: 'emoticon-outline', name: 'Effects', onColor: White, 
                                                                          modeList: ['Solid', 'Android', 'Aurora', 'Blends', 'Blink', 'Blink Rainbow', 'Bouncing Balls','Bpm', 'Breathe', 'Candle', 'Candle Multi', 
                                                                                  'Candy Cane', 'Chase', 'Chase 1', 'Chase 2', 'Chase 3', 'Chase Flash', 'Chase Flash Rnd', 'Chase Rainbow', 'Chase Random', 
                                                                                  'Chunchun', 'Colorful', 'Colorloop', 'Colortwinkles', 'Colorwaves', 'Dancing Shadows', 'etc'
                                                                                  ]},
                                                              <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Segments', icon: 'layers', name: 'Segments', onColor: White, modeList: ['Segment 0', 'Add Segment']},
                                                          ]
                                                      };
                              

                              Level_0_Grundstueck ist die einzige Mainpage und muss in der Config unter pages eingetragen werden.

                              Alle anderen sind Subpages und müssen in der Config unter subPages aufgeführt 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.

                              C 1 Antwort Letzte Antwort
                              0
                              • ArmilarA Offline
                                ArmilarA Offline
                                Armilar
                                Most Active Forum Testing
                                schrieb am zuletzt editiert von Armilar
                                #1621

                                @c3b

                                wie @ronny130286 schon erwähnte:

                                Die Release Notes zur 3.8.1:
                                https://forum.iobroker.net/post/923200

                                Die popupInSel für diese WLED-Auswahl ist erst seit dem 06.01.2023 im Script ...

                                Wenn die Deine Script-Version also älter ist, muss zunächst ein Upgrade erfolgen...

                                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

                                  @c3b

                                  Kurzes Beispiel einer Seitennavi über 4 Level um die Parameter zu verstehen:

                                  let Level_0_Grundstueck: PageGrid =
                                  {
                                      'type': "cardGrid",
                                      'heading': "Grundstück",
                                      'useColor': true,
                                      'subPage': false,
                                      'parent': undefined,
                                      'prev': undefined,
                                      'next': undefined,
                                      'home': undefined, 
                                      'items': [
                                          <PageItem>{ navigate: true, id: null, targetPage: 'Level_1_Gartenhaus', name: 'Gartenhaus' ,icon: 'storefront-outline', offColor: MSRed, onColor: MSGreen},
                                      ]
                                  };
                                  
                                          let Level_1_Gartenhaus: PageGrid =
                                          {
                                              'type': 'cardGrid',
                                              'heading': 'Gartenhaus',
                                              'useColor': true,
                                              'subPage': true,
                                              'parent': Level_0_Grundstueck,
                                              'prev': undefined,
                                              'next': undefined,
                                              'home': 'Level_0_Grundstueck', 
                                              'items': [
                                                  <PageItem>{ navigate: true, id: null, targetPage: 'Level_2_GH_Licht', name: 'Licht' , icon: 'lightbulb', offColor: HMIOff, onColor: HMIOn},
                                              ]
                                          };
                                  
                                                  let Level_2_GH_Licht: PageGrid =
                                                  {
                                                      'type': 'cardGrid',
                                                      'heading': 'Gartenhaus Licht',
                                                      'useColor': true,
                                                      'subPage': true,
                                                      'parent': Level_1_Gartenhaus,
                                                      'prev': undefined,
                                                      'next': undefined,
                                                      'home': 'Level_0_Grundstueck', 
                                                      'items': [
                                                          <PageItem>{ navigate: true, id: null, targetPage: 'Level_3_GH_WLED', name: 'WLED' , icon: 'led-strip-variant', offColor: HMIOff, onColor: HMIOn},
                                                      ]
                                                  };
                                  
                                                          let Level_3_GH_WLED: PageGrid =
                                                          {
                                                              'type': 'cardGrid',
                                                              'heading': 'WLED Stripes WZ',
                                                              'useColor': true,
                                                              'subPage': false,
                                                              'parent': Level_2_GH_Licht,
                                                              'prev': undefined,
                                                              'next': undefined,
                                                              'home': 'Level_1_Gartenhaus',
                                                              'items': [
                                                                  <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.On', name: 'Power', icon: 'power', onColor: HMIOn, offColor: HMIOff},
                                                                  <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Sync', name: 'Sync', icon: 'sync', onColor: HMIOn, offColor: White},
                                                                  <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Presets', icon: 'heart-outline', name: 'Presets', onColor: White, modeList: ['Preset 0', 'Add Preset']},
                                                                  <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Colors', icon: 'palette', name: 'Colors', onColor: White, 
                                                                              modeList: ['Default', '* Color 1', '* Color Gradient', '* Colors 1&2', '* Colors Only', '* Random Cycle', 'Analogus','April Night', 'Aqua Flash', 'Atlantica', 'Aurora', 
                                                                                      'Beach', 'Beech', 'Blink Red', 'Breeze', 'C9', 'C9 New', 'Candy', 'Candy2', 'Cloud', 
                                                                                      'Cyane', 'Departure', 'Drywet', 'Fairy Reaf', 'Fire', 'Forest', 'etc'
                                                                                      ]},
                                                                  <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Effects', icon: 'emoticon-outline', name: 'Effects', onColor: White, 
                                                                              modeList: ['Solid', 'Android', 'Aurora', 'Blends', 'Blink', 'Blink Rainbow', 'Bouncing Balls','Bpm', 'Breathe', 'Candle', 'Candle Multi', 
                                                                                      'Candy Cane', 'Chase', 'Chase 1', 'Chase 2', 'Chase 3', 'Chase Flash', 'Chase Flash Rnd', 'Chase Rainbow', 'Chase Random', 
                                                                                      'Chunchun', 'Colorful', 'Colorloop', 'Colortwinkles', 'Colorwaves', 'Dancing Shadows', 'etc'
                                                                                      ]},
                                                                  <PageItem>{ id: 'alias.0.NSPanel_1.WLED.Example.Segments', icon: 'layers', name: 'Segments', onColor: White, modeList: ['Segment 0', 'Add Segment']},
                                                              ]
                                                          };
                                  

                                  Level_0_Grundstueck ist die einzige Mainpage und muss in der Config unter pages eingetragen werden.

                                  Alle anderen sind Subpages und müssen in der Config unter subPages aufgeführt sein.

                                  C Offline
                                  C Offline
                                  c3b
                                  schrieb am zuletzt editiert von
                                  #1622

                                  @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                                  let Level_3_GH_WLED: PageGrid =

                                  Das habe ich verstanden. Warum steht dann aber bei Level 3:

                                                          let Level_3_GH_WLED: PageGrid =
                                  
                                                          {
                                  
                                                              'type': 'cardGrid',
                                  
                                                              'heading': 'WLED Stripes WZ',
                                  
                                                              'useColor': true,
                                  
                                                              'subPage': false,
                                  
                                                              'parent': Level_2_GH_Licht,
                                  
                                                              'prev': undefined,
                                  
                                                              'next': undefined,
                                  
                                                              'home': 'Level_1_Gartenhaus',
                                  

                                  bei Subpge ein false? Das ist doch auch eine Unterseite. home und parent ist klar.

                                  ArmilarA 1 Antwort Letzte Antwort
                                  0
                                  • C c3b

                                    @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                                    let Level_3_GH_WLED: PageGrid =

                                    Das habe ich verstanden. Warum steht dann aber bei Level 3:

                                                            let Level_3_GH_WLED: PageGrid =
                                    
                                                            {
                                    
                                                                'type': 'cardGrid',
                                    
                                                                'heading': 'WLED Stripes WZ',
                                    
                                                                'useColor': true,
                                    
                                                                'subPage': false,
                                    
                                                                'parent': Level_2_GH_Licht,
                                    
                                                                'prev': undefined,
                                    
                                                                'next': undefined,
                                    
                                                                'home': 'Level_1_Gartenhaus',
                                    

                                    bei Subpge ein false? Das ist doch auch eine Unterseite. home und parent ist klar.

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

                                    @c3b

                                    Hast eine Fehler gefunden 👍

                                    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

                                      @c3b

                                      Hast eine Fehler gefunden 👍

                                      C Offline
                                      C Offline
                                      c3b
                                      schrieb am zuletzt editiert von
                                      #1624

                                      @armilar ok. Ich habe das Skript 3.6.0.4.

                                      Wie ist denn so die richtige vorgehensweise? Ich nehme das komplette 3.8.x oder halt das aktuellst und muss dann meine Einträge komplett neu eingeben oder so wie beschrieben die Änderungen hineinkopieren. Woher weiß ich aber, welche Änderungen es gibt? Ihr seid so schnell, dass man gar nicht alles mitbekommt. Was aber total ge..l ist. Ihr seid echt klasse. 👍

                                      ArmilarA 1 Antwort Letzte Antwort
                                      0
                                      • R ronny130286

                                        @armilar said in SONOFF NSPanel mit Lovelace UI:

                                        ieder herausgenommen und gegen das ursprüngliche setIfExists(id + '.SET', action); ersetzt. War vorher auch nicht im Co

                                        Ich habe bei mir noch ein altes Panel gefunden mit Version 3.4 und dort sieht die CreateEntity Funtkion anfangs so aus:

                                        function CreateEntity(pageItem: PageItem, placeId: number, useColors: boolean = false): string {
                                            try {
                                                var iconId = '0';
                                                if (pageItem.id == 'delete') {
                                                    return '~delete~~~~~';
                                                }
                                        
                                                var name: string;
                                                var type: string;
                                        
                                                // ioBroker
                                                if (existsObject(pageItem.id) || pageItem.navigate === true) {
                                                    var iconColor = rgb_dec565(config.defaultColor);
                                        
                                                    if (pageItem.navigate) {
                                                        type = 'button';
                                                        iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button');
                                                        iconColor = GetIconColor(pageItem, true, useColors);
                                                        let buttonText = pageItem.buttonText !== undefined ? pageItem.buttonText : 'PRESS';
                                                        return '~' + type + '~' + 'navigate.' + pageItem.id + '~' + iconId + '~' + iconColor + '~' + pageItem.name + '~' + buttonText;
                                                    }
                                        
                                                    let o = getObject(pageItem.id)
                                                    var val = null;
                                        
                                                    if (existsState(pageItem.id + '.GET')) {
                                                        val = getState(pageItem.id + '.GET').val;
                                                        RegisterEntityWatcher(pageItem.id + '.GET');
                                        			}
                                        	    else if (existsState(pageItem.id + '.SET')) {
                                                        val = getState(pageItem.id + '.SET').val;
                                                        RegisterEntityWatcher(pageItem.id + '.SET');
                                                    }
                                        
                                                    // Fallback if no name is given
                                                    name = pageItem.name !== undefined ? pageItem.name : o.common.name.de;
                                        
                                                    switch (o.common.role) {
                                                        case 'socket':
                                        

                                        das Panel hat trotz Trigger Button das Problem nicht => auch mein MonoTaster im neuen Script 3.8.1 hat das Problem nicht, nur normale Schalter haben das Problem, wohl gemerkt wenn der Alias ein .SET und ein .ACTUAL gleichzeitig hat.

                                        Ich lade nochmal das Script von github und teste es nochmal ohne meine Monobuttonänderung und berichte 😉

                                        EDIT: Hat leider den gleichen Effekt 😞
                                        Ich habe mal .ACTUAL aus meinem Alias gelöscht, aber dann zeigt er keinen Status mehr an.

                                        EDIT: hier nochmal ein kleines Video: 20230109-223235_npQAjIVi.mp4
                                        Log:

                                        22:34:12.110	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Weihnachten.SET => Normaler Schalter
                                        22:34:12.116	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Weihnachten.ACTUAL => Normaler Schalter
                                        22:34:12.117	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.SET => Normaler Schalter
                                        22:34:12.118	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Terrasse.ACTUAL => Normaler Schalter
                                        22:34:12.118	info	javascript.0 (3893) script.js.NSPanel.NSPanelTest: RegEntityWatcher wurde aufgerufen: alias.0.Licht.Buero.STATE => Monobutton
                                        
                                        ArmilarA Offline
                                        ArmilarA Offline
                                        Armilar
                                        Most Active Forum Testing
                                        schrieb am zuletzt editiert von
                                        #1625

                                        @ronny130286

                                        Versuch mal das:

                                                    UnsubscribeWatcher();
                                        
                                                    if (existsState(pageItem.id + '.GET')) {
                                                        val = getState(pageItem.id + '.GET').val;
                                                        RegisterEntityWatcher(pageItem.id + '.GET');
                                                    }
                                                    if (existsState(pageItem.id + ".STATE")) {
                                                        val = getState(pageItem.id + ".STATE").val;
                                                        RegisterEntityWatcher(pageItem.id + ".STATE");
                                                    }
                                                    if (existsState(pageItem.id + '.SET') && !existsState(pageItem.id + ".STATE")) {
                                                        val = getState(pageItem.id + '.SET').val;
                                                        RegisterEntityWatcher(pageItem.id + '.SET');
                                                    }
                                                    if (existsState(pageItem.id + '.ACTUAL')) {
                                                        val = getState(pageItem.id + '.ACTUAL').val;
                                                        RegisterEntityWatcher(pageItem.id + '.ACTUAL');
                                                    }
                                                    if (existsState(pageItem.id + '.ON_ACTUAL')) {
                                                        val = getState(pageItem.id + '.ON_ACTUAL').val;
                                                        RegisterEntityWatcher(pageItem.id + '.ON_ACTUAL');
                                                    } 
                                                    if (existsState(pageItem.id + '.ON_SET')) {
                                                        val = getState(pageItem.id + '.ON_SET').val;
                                                        RegisterEntityWatcher(pageItem.id + '.ON_SET');
                                                    }
                                                    if (existsState(pageItem.id + '.ON')) {
                                                        val = getState(pageItem.id + '.ON').val;
                                                        RegisterEntityWatcher(pageItem.id + '.ON');
                                                    }
                                        

                                        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.

                                        R 1 Antwort Letzte Antwort
                                        0
                                        • C c3b

                                          @armilar ok. Ich habe das Skript 3.6.0.4.

                                          Wie ist denn so die richtige vorgehensweise? Ich nehme das komplette 3.8.x oder halt das aktuellst und muss dann meine Einträge komplett neu eingeben oder so wie beschrieben die Änderungen hineinkopieren. Woher weiß ich aber, welche Änderungen es gibt? Ihr seid so schnell, dass man gar nicht alles mitbekommt. Was aber total ge..l ist. Ihr seid echt klasse. 👍

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

                                          @c3b

                                          https://forum.iobroker.net/post/920094

                                          Versuche es mal so:

                                          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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          745

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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