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

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

Community Forum

  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.2k

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

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

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.
  • T ticaki

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

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

    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
    schrieb am zuletzt editiert von
    #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 Antwort Letzte Antwort
    2
    • T Nicht stören
      T Nicht stören
      ticaki
      schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
      2
      • ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von 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 :grinning:

        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 Antwort Letzte Antwort
        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 :grinning:

          T Nicht stören
          T Nicht stören
          ticaki
          schrieb am zuletzt editiert von ticaki
          #4696

          @armilar

          :+1:

          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 Antwort Letzte Antwort
          0
          • T ticaki

            @armilar

            :+1:

            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
            schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
            0
            • T Nicht stören
              T Nicht stören
              ticaki
              schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
              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
                schrieb am zuletzt editiert von 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 :sleeping:

                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 Antwort Letzte Antwort
                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 :sleeping:

                  T Nicht stören
                  T Nicht stören
                  ticaki
                  schrieb am zuletzt editiert von
                  #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 Antwort Letzte Antwort
                  0
                  • T Nicht stören
                    T Nicht stören
                    ticaki
                    schrieb am zuletzt editiert von
                    #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 Antworten Letzte Antwort
                    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
                      schrieb am zuletzt editiert von
                      #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 Antwort Letzte Antwort
                      2
                      • 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. :)

                        T Offline
                        T Offline
                        TT-Tom
                        schrieb am zuletzt editiert von TT-Tom
                        #4703

                        @ticaki

                        ich habe ein Blockly mal erstellt und Trigger auf ACTUAL mit einem Selektor.

                        c5e613b2-ba1f-4b6e-bd6f-48d10cec4ee6-image.png

                        <xml xmlns="https://developers.google.com/blockly/xml">
                         <variables>
                           <variable id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</variable>
                           <variable id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</variable>
                           <variable id="9/yJg%I-v6N#IQN8st6m">i</variable>
                         </variables>
                         <block type="on_ext" id="U::/4wmI3}Z@$SKGvvg=" x="88" y="63">
                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                           <field name="CONDITION">ne</field>
                           <field name="ACK_CONDITION"></field>
                           <value name="OID0">
                             <shadow type="field_oid" id="7Ap7C6jIj.Mb{_iqs{{c">
                               <field name="oid">default</field>
                             </shadow>
                             <block type="selector" id="96E5N_xE!C=N626d0a_!">
                               <field name="TEXT">alias.0.Fenster.*.ACTUAL</field>
                             </block>
                           </value>
                           <statement name="STATEMENT">
                             <block type="variables_set" id="o,82sN(nBal}d`S@FhlR">
                               <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                               <value name="VALUE">
                                 <block type="logic_boolean" id="];3BCyF%j]5d6+iW7SW4">
                                   <field name="BOOL">FALSE</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="variables_set" id="^tJ|0)6.8hOKTt~3bSY9">
                                   <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                   <value name="VALUE">
                                     <block type="math_number" id=")NrEP9EVPkpU]lvaOIow">
                                       <field name="NUM">0</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="controls_forEach" id="zvEO{_Dt/YKLr5SA*4qm">
                                       <field name="VAR" id="9/yJg%I-v6N#IQN8st6m">i</field>
                                       <value name="LIST">
                                         <block type="selector" id="`nXP$958BtmgM?C9iXJ,">
                                           <field name="TEXT">alias.0.Fenster.*.ACTUAL</field>
                                         </block>
                                       </value>
                                       <statement name="DO">
                                         <block type="controls_if" id="|Tcfi[X*+Z+I^XU`W}c!">
                                           <value name="IF0">
                                             <block type="get_value_var" id="B+{iQL0J8Uf/auyLg4;o">
                                               <field name="ATTR">val</field>
                                               <value name="OID">
                                                 <shadow type="text" id="nv_xNDwj^vZd(VS@iL;U">
                                                   <field name="TEXT">i</field>
                                                 </shadow>
                                                 <block type="variables_get" id="-R.oMz[v.gJ{a/*nGZsC">
                                                   <field name="VAR" id="9/yJg%I-v6N#IQN8st6m">i</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <statement name="DO0">
                                             <block type="math_change" id="%GBC0#O-FVUS`64Eg8Li">
                                               <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                               <value name="DELTA">
                                                 <shadow type="math_number" id="O`wb$_E?4FjD*66Z.#Gz">
                                                   <field name="NUM">1</field>
                                                 </shadow>
                                                 <block type="math_number" id="Z0%Qp}aXwh|l3tUTm:KU">
                                                   <field name="NUM">1</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="variables_set" id="-%h(cYD!_^|7$j1?7-a;">
                                                   <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                                                   <value name="VALUE">
                                                     <block type="logic_boolean" id="JyKdvLU=OeWD@`O7AQVi">
                                                       <field name="BOOL">TRUE</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                         </block>
                                       </statement>
                                       <next>
                                         <block type="update" id="VyzVl0%MBx@R,H+HEEGI">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                           <field name="OID">0_userdata.0.NSPanel.Allgemein.Fenster.Anzahl_offene</field>
                                           <field name="WITH_DELAY">FALSE</field>
                                           <value name="VALUE">
                                             <block type="convert_tostring" id="p[AN%(l=kC~8Cq!%kyQy">
                                               <value name="VALUE">
                                                 <block type="variables_get" id="d`73i^f,-$v2QCbRQy$g">
                                                   <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="update" id="v2F]Z/TZY!PunG*kfkwO">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                               <field name="OID">0_userdata.0.NSPanel.Allgemein.Fenster.Status_offene</field>
                                               <field name="WITH_DELAY">FALSE</field>
                                               <value name="VALUE">
                                                 <block type="variables_get" id=",$^vy#7#dLe!?DtT8N|U">
                                                   <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="debug" id="M({M!_ScK2[_^j=8BB,k">
                                                   <field name="Severity">log</field>
                                                   <value name="TEXT">
                                                     <shadow type="text" id="mzN-~@]E)uw@:W_};^IK">
                                                       <field name="TEXT">test</field>
                                                     </shadow>
                                                     <block type="text_join" id="fj*OT/+j;9m96a+a?y|Z">
                                                       <mutation items="3"></mutation>
                                                       <value name="ADD0">
                                                         <block type="variables_get" id="])A_QS+y+K{m/p[dOVM$">
                                                           <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD1">
                                                         <block type="text" id="XEdD(OQYXlXrVeP1Bw|k">
                                                           <field name="TEXT"> Fenster offen </field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD2">
                                                         <block type="on_source" id="]/!CU#MQ~Ci#!Y]o1~BA" disabled="true">
                                                           <field name="ATTR">id</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </statement>
                         </block>
                        </xml>
                        

                        die Ordnerstruktur sieht bei mir so aus
                        22e26016-ea88-49aa-ad62-bb0ab0feaa39-image.png

                        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 Antwort Letzte Antwort
                        0
                        • T TT-Tom

                          @ticaki

                          ich habe ein Blockly mal erstellt und Trigger auf ACTUAL mit einem Selektor.

                          c5e613b2-ba1f-4b6e-bd6f-48d10cec4ee6-image.png

                          <xml xmlns="https://developers.google.com/blockly/xml">
                           <variables>
                             <variable id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</variable>
                             <variable id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</variable>
                             <variable id="9/yJg%I-v6N#IQN8st6m">i</variable>
                           </variables>
                           <block type="on_ext" id="U::/4wmI3}Z@$SKGvvg=" x="88" y="63">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                             <field name="CONDITION">ne</field>
                             <field name="ACK_CONDITION"></field>
                             <value name="OID0">
                               <shadow type="field_oid" id="7Ap7C6jIj.Mb{_iqs{{c">
                                 <field name="oid">default</field>
                               </shadow>
                               <block type="selector" id="96E5N_xE!C=N626d0a_!">
                                 <field name="TEXT">alias.0.Fenster.*.ACTUAL</field>
                               </block>
                             </value>
                             <statement name="STATEMENT">
                               <block type="variables_set" id="o,82sN(nBal}d`S@FhlR">
                                 <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                                 <value name="VALUE">
                                   <block type="logic_boolean" id="];3BCyF%j]5d6+iW7SW4">
                                     <field name="BOOL">FALSE</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="variables_set" id="^tJ|0)6.8hOKTt~3bSY9">
                                     <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                     <value name="VALUE">
                                       <block type="math_number" id=")NrEP9EVPkpU]lvaOIow">
                                         <field name="NUM">0</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="controls_forEach" id="zvEO{_Dt/YKLr5SA*4qm">
                                         <field name="VAR" id="9/yJg%I-v6N#IQN8st6m">i</field>
                                         <value name="LIST">
                                           <block type="selector" id="`nXP$958BtmgM?C9iXJ,">
                                             <field name="TEXT">alias.0.Fenster.*.ACTUAL</field>
                                           </block>
                                         </value>
                                         <statement name="DO">
                                           <block type="controls_if" id="|Tcfi[X*+Z+I^XU`W}c!">
                                             <value name="IF0">
                                               <block type="get_value_var" id="B+{iQL0J8Uf/auyLg4;o">
                                                 <field name="ATTR">val</field>
                                                 <value name="OID">
                                                   <shadow type="text" id="nv_xNDwj^vZd(VS@iL;U">
                                                     <field name="TEXT">i</field>
                                                   </shadow>
                                                   <block type="variables_get" id="-R.oMz[v.gJ{a/*nGZsC">
                                                     <field name="VAR" id="9/yJg%I-v6N#IQN8st6m">i</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <statement name="DO0">
                                               <block type="math_change" id="%GBC0#O-FVUS`64Eg8Li">
                                                 <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                                 <value name="DELTA">
                                                   <shadow type="math_number" id="O`wb$_E?4FjD*66Z.#Gz">
                                                     <field name="NUM">1</field>
                                                   </shadow>
                                                   <block type="math_number" id="Z0%Qp}aXwh|l3tUTm:KU">
                                                     <field name="NUM">1</field>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="variables_set" id="-%h(cYD!_^|7$j1?7-a;">
                                                     <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                                                     <value name="VALUE">
                                                       <block type="logic_boolean" id="JyKdvLU=OeWD@`O7AQVi">
                                                         <field name="BOOL">TRUE</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </next>
                                               </block>
                                             </statement>
                                           </block>
                                         </statement>
                                         <next>
                                           <block type="update" id="VyzVl0%MBx@R,H+HEEGI">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                             <field name="OID">0_userdata.0.NSPanel.Allgemein.Fenster.Anzahl_offene</field>
                                             <field name="WITH_DELAY">FALSE</field>
                                             <value name="VALUE">
                                               <block type="convert_tostring" id="p[AN%(l=kC~8Cq!%kyQy">
                                                 <value name="VALUE">
                                                   <block type="variables_get" id="d`73i^f,-$v2QCbRQy$g">
                                                     <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="update" id="v2F]Z/TZY!PunG*kfkwO">
                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                 <field name="OID">0_userdata.0.NSPanel.Allgemein.Fenster.Status_offene</field>
                                                 <field name="WITH_DELAY">FALSE</field>
                                                 <value name="VALUE">
                                                   <block type="variables_get" id=",$^vy#7#dLe!?DtT8N|U">
                                                     <field name="VAR" id="`3q~tn|]r(LvC{19,zEY">Status_offeneFenster</field>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="debug" id="M({M!_ScK2[_^j=8BB,k">
                                                     <field name="Severity">log</field>
                                                     <value name="TEXT">
                                                       <shadow type="text" id="mzN-~@]E)uw@:W_};^IK">
                                                         <field name="TEXT">test</field>
                                                       </shadow>
                                                       <block type="text_join" id="fj*OT/+j;9m96a+a?y|Z">
                                                         <mutation items="3"></mutation>
                                                         <value name="ADD0">
                                                           <block type="variables_get" id="])A_QS+y+K{m/p[dOVM$">
                                                             <field name="VAR" id="1#Xk,SKr8Zq2_0q?X|J9">offeneFenster</field>
                                                           </block>
                                                         </value>
                                                         <value name="ADD1">
                                                           <block type="text" id="XEdD(OQYXlXrVeP1Bw|k">
                                                             <field name="TEXT"> Fenster offen </field>
                                                           </block>
                                                         </value>
                                                         <value name="ADD2">
                                                           <block type="on_source" id="]/!CU#MQ~Ci#!Y]o1~BA" disabled="true">
                                                             <field name="ATTR">id</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                           </block>
                          </xml>
                          

                          die Ordnerstruktur sieht bei mir so aus
                          22e26016-ea88-49aa-ad62-bb0ab0feaa39-image.png

                          T Nicht stören
                          T Nicht stören
                          ticaki
                          schrieb am zuletzt editiert von ticaki
                          #4704

                          @tt-tom

                          Das Skript sucht per Selektor die Fenster und baut dann das hier, incl Stockwerk und Räumen.
                          Die nimmt es aus der enum id für den raum "enum.rooms.Haus.second_floor" ist das Stockwerk. "enum.rooms.Haus.second_floor.Bad" ist der Raum.
                          Den Namen nimmt es auf adapter.0.diesemDatenpunkt. Den Sensoren müssen Räumen und Funktionen zugewiesen sein:Bildschirmfoto 2023-12-30 um 18.24.32.png

                          Bildschirmfoto 2023-12-30 um 18.22.17.png

                          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                          Spenden

                          1 Antwort Letzte Antwort
                          1
                          • T Offline
                            T Offline
                            TT-Tom
                            schrieb am zuletzt editiert von
                            #4705

                            @ticaki

                            für die User ist es immer gut, wenn das Script alle Arbeit abnimmt und die Config sich in Grenzen hält. Persönlich bin ich eher der Bastler und teste hier intensiv. Schön das du unsere Crew hier so gut unterstützt. Danke nochmal.

                            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 Antwort Letzte Antwort
                            1
                            • T TT-Tom

                              @ticaki

                              für die User ist es immer gut, wenn das Script alle Arbeit abnimmt und die Config sich in Grenzen hält. Persönlich bin ich eher der Bastler und teste hier intensiv. Schön das du unsere Crew hier so gut unterstützt. Danke nochmal.

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

                              Update - v4.3.3.28

                              3af08d6c-ab02-41a4-af1b-f98d6231d5af-image.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.
                              • Fix: Die Icons des Fenster-Alias sind von der Logik gedreht
                              • Es wird beim Port-Check berücksichtigt, wenn ein MQTT-Client installiert ist
                              • Fix: Der Fallback, wenn ein Name nicht im Alias vorhanden ist, wurde erweitert

                              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 _______________
                              
                              

                              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

                              :fireworks: :champagne: Wir wünschen euch allen einen guten Rutsch ins neue Jahr 2024 :champagne: :fireworks:

                              VG
                              @Armilar, @TT-Tom & @Kuckuckmann 😊

                              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.

                              D 1 Antwort Letzte Antwort
                              4
                              • O Offline
                                O Offline
                                OlliGut
                                schrieb am zuletzt editiert von OlliGut
                                #4707

                                Hallo zusammen,
                                ich würde gerne meine Bose Soundtouch mit dem NSPanel steuern. Ich habe auf dem IOBroker den Soundtouch Adapter installiert und eine Instanz angelegt. Da es die vorkonfigurierten MediaCards nur für Sonos, Alexa etc gibt. wollte ich einfach eine Standard-MediaCard nutzen.

                                let Bose = <PageMedia>
                                {
                                    "type": "cardMedia",
                                    "heading": "Bose",
                                    "useColor": true,
                                    "items": [<PageItem>{   
                                                id: AliasPath + 'Media.Bose', 
                                                adapterPlayerInstance: "bosesoundtouch.0.",
                                                mediaDevice: "192.168.178.32",
                                                speakerList: ["Wohnzimmer"],
                                                colorMediaIcon: colorSpotify,
                                                colorMediaArtist: Yellow,
                                                colorMediaTitle: Yellow,
                                                autoCreateALias : true
                                             }]
                                };
                                

                                Aber schon ein erster Versuch schlägt fehl: "Cannot read properties of undefined (reading 'id')"
                                Was eigentlich logisch ist, weil es den Pfad unter Alias auch nicht gibt; allerdings wird er auch nicht angelegt, obwohl ich das Autoanlegen aktiviert habe.
                                Hat vielleicht jemand so einen Adapter bereits gebaut und könnte mir etwas helfen, oder wie sollte ich vorgehen, wenn ich das selber machen müsste?
                                Für einen Tipp bedanke ich mich im Voraus und wünsche allen schonmal einen guten Rutsch.
                                Gruß Olli

                                T 1 Antwort Letzte Antwort
                                0
                                • ArmilarA Armilar

                                  Update - v4.3.3.28

                                  3af08d6c-ab02-41a4-af1b-f98d6231d5af-image.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.
                                  • Fix: Die Icons des Fenster-Alias sind von der Logik gedreht
                                  • Es wird beim Port-Check berücksichtigt, wenn ein MQTT-Client installiert ist
                                  • Fix: Der Fallback, wenn ein Name nicht im Alias vorhanden ist, wurde erweitert

                                  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 _______________
                                  
                                  

                                  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

                                  :fireworks: :champagne: Wir wünschen euch allen einen guten Rutsch ins neue Jahr 2024 :champagne: :fireworks:

                                  VG
                                  @Armilar, @TT-Tom & @Kuckuckmann 😊

                                  D Offline
                                  D Offline
                                  DerT
                                  Forum Testing
                                  schrieb am zuletzt editiert von
                                  #4708

                                  Hallo Zusammen,

                                  ich hab das ganze mal Testweise bei mir aufgebaut und eine Frage zu den Hardware Buttons.

                                  Irgendwie steig ich beim Beispiel nicht ganz durch..

                                  //-------EN: Start Settings for Hardware Button, if used in software (Rule2) --------------------------------------
                                      // DE: Konfiguration des linken Schalters des NSPanels
                                      // EN: Configuration of the left switch of the NSPanel
                                      button1: {
                                          // DE: Mögliche Werte wenn Rule2 definiert: 'page', 'toggle', 'set' - Wenn nicht definiert --> mode: null
                                          // EN: Possible values if Rule2 defined: 'page', 'toggle', 'set' - If not defined --> mode: null
                                          mode: 'page',
                                          // DE: Zielpage - Verwendet wenn mode = page
                                          // EN: Target page - Used if mode = page
                                          page: null,
                                          // DE: Zielentity - Verwendet wenn mode = set oder toggle
                                          // EN: Target entity - Used if mode = set or toggle
                                          entity: null,
                                          // DE: Zielwert - Verwendet wenn mode = set
                                          // EN: Target value - Used if mode = set
                                          setValue: null
                                      },
                                  
                                      // DE: Konfiguration des rechten Schalters des NSPanels
                                      // EN: Configuration of the right switch of the NSPanel
                                      button2: {
                                          mode: null,
                                          page: null,
                                          entity: null,
                                          setValue: null
                                      },
                                  //--------- DE: Ende - Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
                                  
                                  

                                  Gibt es dazu noch irgendwo was im Wiki das ich nicht gefunden habe? Die Regel habe ich eingestellt.
                                  Konkret habe ich zwei Szenarien die ich gerne mal testen würde.

                                  1. Mit den Buttons durch die Menüs navigieren
                                  2. Temperatur an einem Thermostat reduzieren bzw. erhöhen.
                                  T 1 Antwort Letzte Antwort
                                  0
                                  • D DerT

                                    Hallo Zusammen,

                                    ich hab das ganze mal Testweise bei mir aufgebaut und eine Frage zu den Hardware Buttons.

                                    Irgendwie steig ich beim Beispiel nicht ganz durch..

                                    //-------EN: Start Settings for Hardware Button, if used in software (Rule2) --------------------------------------
                                        // DE: Konfiguration des linken Schalters des NSPanels
                                        // EN: Configuration of the left switch of the NSPanel
                                        button1: {
                                            // DE: Mögliche Werte wenn Rule2 definiert: 'page', 'toggle', 'set' - Wenn nicht definiert --> mode: null
                                            // EN: Possible values if Rule2 defined: 'page', 'toggle', 'set' - If not defined --> mode: null
                                            mode: 'page',
                                            // DE: Zielpage - Verwendet wenn mode = page
                                            // EN: Target page - Used if mode = page
                                            page: null,
                                            // DE: Zielentity - Verwendet wenn mode = set oder toggle
                                            // EN: Target entity - Used if mode = set or toggle
                                            entity: null,
                                            // DE: Zielwert - Verwendet wenn mode = set
                                            // EN: Target value - Used if mode = set
                                            setValue: null
                                        },
                                    
                                        // DE: Konfiguration des rechten Schalters des NSPanels
                                        // EN: Configuration of the right switch of the NSPanel
                                        button2: {
                                            mode: null,
                                            page: null,
                                            entity: null,
                                            setValue: null
                                        },
                                    //--------- DE: Ende - Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
                                    
                                    

                                    Gibt es dazu noch irgendwo was im Wiki das ich nicht gefunden habe? Die Regel habe ich eingestellt.
                                    Konkret habe ich zwei Szenarien die ich gerne mal testen würde.

                                    1. Mit den Buttons durch die Menüs navigieren
                                    2. Temperatur an einem Thermostat reduzieren bzw. erhöhen.
                                    T Offline
                                    T Offline
                                    TT-Tom
                                    schrieb am zuletzt editiert von TT-Tom
                                    #4709

                                    @dert sagte in SONOFF NSPanel mit Lovelace UI:

                                    Mit den Buttons durch die Menüs navigieren

                                    du kannst mit der Rule1 den Tasten ein Befehl zuweisen. Zum Beispiel Home, das hat die selbe Funktion, wenn im Display auf das Haus drückst.
                                    Siehe Beispiel im Wiki.

                                    Temperatur an einem Thermostat reduzieren bzw. erhöhen.

                                    Du kannst nur auf einen festen Wert setzen.

                                        button1: {
                                            mode: 'set',
                                            page: null,
                                            entity: 'alias.0.NSPanel.Thermostat.SET',
                                            setValue: 25
                                        },
                                    

                                    Kannst aber auch gerne ein Issues aufmachen. Thema: Button1 mode: Set -> setValue up/down. Dann schauen wir uns das im neuen Jahr mal an.

                                    Schönen Rutsch in 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

                                    ArmilarA 1 Antwort Letzte Antwort
                                    1
                                    • T TT-Tom

                                      @dert sagte in SONOFF NSPanel mit Lovelace UI:

                                      Mit den Buttons durch die Menüs navigieren

                                      du kannst mit der Rule1 den Tasten ein Befehl zuweisen. Zum Beispiel Home, das hat die selbe Funktion, wenn im Display auf das Haus drückst.
                                      Siehe Beispiel im Wiki.

                                      Temperatur an einem Thermostat reduzieren bzw. erhöhen.

                                      Du kannst nur auf einen festen Wert setzen.

                                          button1: {
                                              mode: 'set',
                                              page: null,
                                              entity: 'alias.0.NSPanel.Thermostat.SET',
                                              setValue: 25
                                          },
                                      

                                      Kannst aber auch gerne ein Issues aufmachen. Thema: Button1 mode: Set -> setValue up/down. Dann schauen wir uns das im neuen Jahr mal an.

                                      Schönen Rutsch in neue Jahr

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

                                      @DerT

                                      Kann auch ein true liefern (links down/rechts up)... ist bloß eine Frage, wie man den Wert später auswertet...

                                      Selbst wenn der Wert nur 1 wäre, könnte ein Blockly den Setpoint-Datenpunkt inkrementieren oder dekrementieren.

                                      Das Navigationsbeispiel ist hier:

                                      https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Navigation#navigation-mit-den-hardware-buttons

                                      bzw.:
                                      https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker---FAQ-&-Anleitungen#13d-mit-den-hardwarebuttons-vor-und-zurück-navigieren

                                      Ich bin dann mal feiern ;-)

                                      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
                                      1
                                      • jayjojaysonJ Offline
                                        jayjojaysonJ Offline
                                        jayjojayson
                                        schrieb am zuletzt editiert von
                                        #4711

                                        Hallo, erstmal ein gesundes und glückliches neues Jahr für alle.

                                        Ich nutze das neue Script nun auch schon ein bisschen und funktioniert auch alles soweit super, aber ich bekomme einen Fehler einfach nicht weg und weiß nicht woran das liegen kann. Hat einer von euch vielleicht eine Idee?

                                        	javascript.0 (5055) script.js.NSPanels.Panel2: error at function HandleScreensaverUpdate: parseFormat is not a function
                                        

                                        Eigentlich habe ich nichts geändert, bis auf den ScreensaverEntity 4, hier will ich meinen aktuellen Solarertrag anzeigen.

                                        Etwas weiter unten in den Einstellungen kann man die beiden virtuellen button im Screen konfigurieren
                                        mrIcon1ScreensaverEntity und mrIcon2ScreensaverEntity. Wenn ich dort Datenpunkte hinterlege, zeigt er mir auch gleich Fehler an. Muss man irgendwo Relay.1 und Relay.2 extra setzen?

                                        //---- Anfang     Screensaver Einstellungen / Screensaver settings ---------------------
                                            leftScreensaverEntity:
                                                [
                                                     // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                                        
                                                ],
                                        
                                            bottomScreensaverEntity :  
                                                [
                                                    // bottomScreensaverEntity 1
                                                    {
                                                        ScreensaverEntity: 'accuweather.0.Daily.Day1.Sunrise',
                                                        ScreensaverEntityFactor: 1,
                                                        ScreensaverEntityDecimalPlaces: 0,
                                                        ScreensaverEntityDateFormat: { hour: '2-digit', minute: '2-digit' }, // Description at Wiki-Pages
                                                        ScreensaverEntityIconOn: 'weather-sunset-up',
                                                        ScreensaverEntityIconOff: null,
                                                        ScreensaverEntityText: 'Sonne',
                                                        ScreensaverEntityUnitText: '%',
                                                        ScreensaverEntityIconColor: MSYellow //{'val_min': 0, 'val_max': 100}
                                                    },
                                                    // bottomScreensaverEntity 2
                                                    {
                                                        ScreensaverEntity: 'accuweather.0.Current.WindSpeed',
                                                        ScreensaverEntityFactor: (1000/3600),
                                                        ScreensaverEntityDecimalPlaces: 1,
                                                        ScreensaverEntityIconOn: 'weather-windy',
                                                        ScreensaverEntityIconOff: null,
                                                        ScreensaverEntityText: "Wind",
                                                        ScreensaverEntityUnitText: 'm/s',
                                                        ScreensaverEntityIconColor: { 'val_min': 0, 'val_max': 120 }
                                                    },
                                                    // bottomScreensaverEntity 3
                                                    {
                                                        ScreensaverEntity: 'accuweather.0.Current.WindGust',
                                                        ScreensaverEntityFactor: (1000/3600),
                                                        ScreensaverEntityDecimalPlaces: 1,
                                                        ScreensaverEntityIconOn: 'weather-tornado',
                                                        ScreensaverEntityIconOff: null,
                                                        ScreensaverEntityText: 'Böen',
                                                        ScreensaverEntityUnitText: 'm/s',
                                                        ScreensaverEntityIconColor: { 'val_min': 0, 'val_max': 120 }
                                                    },
                                                    // bottomScreensaverEntity 4
                                                    {
                                                        ScreensaverEntity: 'growatt.0.782463.devices.ACJ0B1802L.deviceData.eToday',
                                                        ScreensaverEntityFactor: 1,
                                                        ScreensaverEntityDecimalPlaces: 0,
                                                        ScreensaverEntityIconOn: 'solar-power',
                                                        ScreensaverEntityIconOff: null,
                                                        ScreensaverEntityText: 'Strom',
                                                        ScreensaverEntityUnitText: 'kWh',
                                                        ScreensaverEntityIconColor: White
                                                    },
                                                    // bottomScreensaverEntity 5 (for Alternative and Advanced Screensaver)
                                                    {
                                                        ScreensaverEntity: 'accuweather.0.Current.RelativeHumidity',
                                                        ScreensaverEntityFactor: 1,
                                                        ScreensaverEntityDecimalPlaces: 1,
                                                        ScreensaverEntityIconOn: 'water-percent',
                                                        ScreensaverEntityIconOff: null,
                                                        ScreensaverEntityText: 'Feuchte',
                                                        ScreensaverEntityUnitText: '%',
                                                        ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 65}
                                                    },
                                                    // bottomScreensaverEntity 6 (for Advanced Screensaver)
                                                    {
                                                     ScreensaverEntity: NSPanel_Path + 'Relay.1',
                                                     ScreensaverEntityIconOn: 'coach-lamp-variant',
                                                     ScreensaverEntityText: 'Street',
                                                     ScreensaverEntityOnColor: Yellow,
                                                     ScreensaverEntityOffColor: White,
                                                     ScreensaverEntityOnText: 'Is ON',
                                                     ScreensaverEntityOffText: 'Not ON'
                                                 },
                                         	        // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                                                ],
                                        
                                            indicatorScreensaverEntity:
                                                [
                                        		// Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                                                ],
                                        
                                                // Status Icon 
                                            mrIcon1ScreensaverEntity: 
                                                { 
                                                    ScreensaverEntity: NSPanel_Path + 'Relay.1', 
                                                    ScreensaverEntityIconOn: 'lightbulb',
                                                    ScreensaverEntityIconOff: null, 
                                                    ScreensaverEntityValue: null,
                                                    ScreensaverEntityValueDecimalPlace : 0,
                                                    ScreensaverEntityValueUnit: null,
                                                    ScreensaverEntityOnColor: On, 
                                                    ScreensaverEntityOffColor: HMIOff 
                                                },
                                            mrIcon2ScreensaverEntity: 
                                                { 
                                                    ScreensaverEntity: NSPanel_Path + 'Relay.2', 
                                                    ScreensaverEntityIconOn: 'lightbulb',
                                                    ScreensaverEntityIconOff: null, 
                                                    ScreensaverEntityValue: null,
                                                    ScreensaverEntityValueDecimalPlace : 0,
                                                    ScreensaverEntityValueUnit: null, 
                                                    ScreensaverEntityOnColor: On, 
                                                    ScreensaverEntityOffColor: HMIOff 
                                                },
                                        // ------ Ende der Screensaver Einstellungen --------------------
                                        
                                        T 1 Antwort Letzte Antwort
                                        0
                                        • jayjojaysonJ jayjojayson

                                          Hallo, erstmal ein gesundes und glückliches neues Jahr für alle.

                                          Ich nutze das neue Script nun auch schon ein bisschen und funktioniert auch alles soweit super, aber ich bekomme einen Fehler einfach nicht weg und weiß nicht woran das liegen kann. Hat einer von euch vielleicht eine Idee?

                                          	javascript.0 (5055) script.js.NSPanels.Panel2: error at function HandleScreensaverUpdate: parseFormat is not a function
                                          

                                          Eigentlich habe ich nichts geändert, bis auf den ScreensaverEntity 4, hier will ich meinen aktuellen Solarertrag anzeigen.

                                          Etwas weiter unten in den Einstellungen kann man die beiden virtuellen button im Screen konfigurieren
                                          mrIcon1ScreensaverEntity und mrIcon2ScreensaverEntity. Wenn ich dort Datenpunkte hinterlege, zeigt er mir auch gleich Fehler an. Muss man irgendwo Relay.1 und Relay.2 extra setzen?

                                          //---- Anfang     Screensaver Einstellungen / Screensaver settings ---------------------
                                              leftScreensaverEntity:
                                                  [
                                                       // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                                          
                                                  ],
                                          
                                              bottomScreensaverEntity :  
                                                  [
                                                      // bottomScreensaverEntity 1
                                                      {
                                                          ScreensaverEntity: 'accuweather.0.Daily.Day1.Sunrise',
                                                          ScreensaverEntityFactor: 1,
                                                          ScreensaverEntityDecimalPlaces: 0,
                                                          ScreensaverEntityDateFormat: { hour: '2-digit', minute: '2-digit' }, // Description at Wiki-Pages
                                                          ScreensaverEntityIconOn: 'weather-sunset-up',
                                                          ScreensaverEntityIconOff: null,
                                                          ScreensaverEntityText: 'Sonne',
                                                          ScreensaverEntityUnitText: '%',
                                                          ScreensaverEntityIconColor: MSYellow //{'val_min': 0, 'val_max': 100}
                                                      },
                                                      // bottomScreensaverEntity 2
                                                      {
                                                          ScreensaverEntity: 'accuweather.0.Current.WindSpeed',
                                                          ScreensaverEntityFactor: (1000/3600),
                                                          ScreensaverEntityDecimalPlaces: 1,
                                                          ScreensaverEntityIconOn: 'weather-windy',
                                                          ScreensaverEntityIconOff: null,
                                                          ScreensaverEntityText: "Wind",
                                                          ScreensaverEntityUnitText: 'm/s',
                                                          ScreensaverEntityIconColor: { 'val_min': 0, 'val_max': 120 }
                                                      },
                                                      // bottomScreensaverEntity 3
                                                      {
                                                          ScreensaverEntity: 'accuweather.0.Current.WindGust',
                                                          ScreensaverEntityFactor: (1000/3600),
                                                          ScreensaverEntityDecimalPlaces: 1,
                                                          ScreensaverEntityIconOn: 'weather-tornado',
                                                          ScreensaverEntityIconOff: null,
                                                          ScreensaverEntityText: 'Böen',
                                                          ScreensaverEntityUnitText: 'm/s',
                                                          ScreensaverEntityIconColor: { 'val_min': 0, 'val_max': 120 }
                                                      },
                                                      // bottomScreensaverEntity 4
                                                      {
                                                          ScreensaverEntity: 'growatt.0.782463.devices.ACJ0B1802L.deviceData.eToday',
                                                          ScreensaverEntityFactor: 1,
                                                          ScreensaverEntityDecimalPlaces: 0,
                                                          ScreensaverEntityIconOn: 'solar-power',
                                                          ScreensaverEntityIconOff: null,
                                                          ScreensaverEntityText: 'Strom',
                                                          ScreensaverEntityUnitText: 'kWh',
                                                          ScreensaverEntityIconColor: White
                                                      },
                                                      // bottomScreensaverEntity 5 (for Alternative and Advanced Screensaver)
                                                      {
                                                          ScreensaverEntity: 'accuweather.0.Current.RelativeHumidity',
                                                          ScreensaverEntityFactor: 1,
                                                          ScreensaverEntityDecimalPlaces: 1,
                                                          ScreensaverEntityIconOn: 'water-percent',
                                                          ScreensaverEntityIconOff: null,
                                                          ScreensaverEntityText: 'Feuchte',
                                                          ScreensaverEntityUnitText: '%',
                                                          ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 65}
                                                      },
                                                      // bottomScreensaverEntity 6 (for Advanced Screensaver)
                                                      {
                                                       ScreensaverEntity: NSPanel_Path + 'Relay.1',
                                                       ScreensaverEntityIconOn: 'coach-lamp-variant',
                                                       ScreensaverEntityText: 'Street',
                                                       ScreensaverEntityOnColor: Yellow,
                                                       ScreensaverEntityOffColor: White,
                                                       ScreensaverEntityOnText: 'Is ON',
                                                       ScreensaverEntityOffText: 'Not ON'
                                                   },
                                           	        // Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                                                  ],
                                          
                                              indicatorScreensaverEntity:
                                                  [
                                          		// Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400 
                                                  ],
                                          
                                                  // Status Icon 
                                              mrIcon1ScreensaverEntity: 
                                                  { 
                                                      ScreensaverEntity: NSPanel_Path + 'Relay.1', 
                                                      ScreensaverEntityIconOn: 'lightbulb',
                                                      ScreensaverEntityIconOff: null, 
                                                      ScreensaverEntityValue: null,
                                                      ScreensaverEntityValueDecimalPlace : 0,
                                                      ScreensaverEntityValueUnit: null,
                                                      ScreensaverEntityOnColor: On, 
                                                      ScreensaverEntityOffColor: HMIOff 
                                                  },
                                              mrIcon2ScreensaverEntity: 
                                                  { 
                                                      ScreensaverEntity: NSPanel_Path + 'Relay.2', 
                                                      ScreensaverEntityIconOn: 'lightbulb',
                                                      ScreensaverEntityIconOff: null, 
                                                      ScreensaverEntityValue: null,
                                                      ScreensaverEntityValueDecimalPlace : 0,
                                                      ScreensaverEntityValueUnit: null, 
                                                      ScreensaverEntityOnColor: On, 
                                                      ScreensaverEntityOffColor: HMIOff 
                                                  },
                                          // ------ Ende der Screensaver Einstellungen --------------------
                                          
                                          T Offline
                                          T Offline
                                          TT-Tom
                                          schrieb am zuletzt editiert von TT-Tom
                                          #4712

                                          @jayjojayson
                                          Ein gesundes neues Jahr.
                                          Das sieht danach aus, das da in der JavaScript Instanz das npm Modul fehlt. Vergleich bitte mal mit der Anweisung im Wiki.

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          764

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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