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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    11
    2
    215

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

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

SONOFF NSPanel mit Lovelace UI

SONOFF NSPanel mit Lovelace UI

Scheduled Pinned Locked Moved Hardware
lovelace uinspanelsonoff
7.7k Posts 271 Posters 6.7m Views 253 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • ArmilarA Armilar

    @tt-tom

    siehe TS-Script-Header

    /*-----------------------------------------------------------------------
    TypeScript v3.5.0.5 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar/@Sternmiere/@Britzelpuf

    • abgestimmt auf TFT 43 / v3.5.0 / BerryDriver 4 / Tasmota 12.2.0
    T Offline
    T Offline
    TT-Tom
    wrote on last edited by
    #830

    @armilar
    ja genau da steht das ja auch, danke. Bin grade dabei das Panel mit allen Einstellungen wieder zum Leben zu erwecken, sieht ganz gut aus. 👍

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

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

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

    ArmilarA 1 Reply Last reply
    0
    • T TT-Tom

      @armilar
      ja genau da steht das ja auch, danke. Bin grade dabei das Panel mit allen Einstellungen wieder zum Leben zu erwecken, sieht ganz gut aus. 👍

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

      @tt-tom
      38? Uiiii, das ist aber schon lange (Juni?) her. TS-Script 3.1.0? 😉

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

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

      T 1 Reply Last reply
      0
      • ArmilarA Armilar

        @tt-tom
        38? Uiiii, das ist aber schon lange (Juni?) her. TS-Script 3.1.0? 😉

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

        @armilar naja der Umzug und das Alles hat doch länger gedauert als gedacht. Aber so langsam erwacht das Smarthome wieder. 😊

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

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

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

        ArmilarA 1 Reply Last reply
        0
        • VumerV Offline
          VumerV Offline
          Vumer
          wrote on last edited by Vumer
          #833

          ist es möglich bei cardMedia wenn spotify-premium.0.player.isPlaying true ist das Icon 'spotify' grün leuchtet? Es gibt ja sogar eine const colorSpotify
          Einen isPlaying Alias habe ich

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

            @vumer

            Ist es möglich bei cardMedia wenn spotify-premium.0.player.isPlaying true ist das Icon 'spotify' grün leuchtet?

            die colorSpotify habe ich vor Monaten mal angelegt. Damit starte ich Spotify-Playlists aus einer cardGrid 😉

            Es gab zu dem Zeitpunkt auch ein Alexa-Logo. Weiß der Geier warum das verschwunden ist. Dem trauere ich immer noch hinterher.

            Nun zur Frage. Nein, die Farbe für das Icon ist im Payload nicht enthalten.

            Lasse uns @joBr99 kurz fragen, ob man das in den nächsten Versionen noch einfärben könnte?

            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.

            J 1 Reply Last reply
            0
            • T TT-Tom

              @armilar naja der Umzug und das Alles hat doch länger gedauert als gedacht. Aber so langsam erwacht das Smarthome wieder. 😊

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

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

              der Umzug und das Alles hat doch länger gedauert als gedacht. Aber so langsam erwacht das Smarthome wieder

              Hauptsache ist, dass sich alle im neuen Zuhause wohlfühlen. Smart wird das - da bin ich mir sicher 😊

              Wer einmal Blut geleckt hat, der bleibt dabei. ioBroker macht süchtig...

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

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

              T 1 Reply Last reply
              0
              • ArmilarA Armilar

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

                der Umzug und das Alles hat doch länger gedauert als gedacht. Aber so langsam erwacht das Smarthome wieder

                Hauptsache ist, dass sich alle im neuen Zuhause wohlfühlen. Smart wird das - da bin ich mir sicher 😊

                Wer einmal Blut geleckt hat, der bleibt dabei. ioBroker macht süchtig...

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

                @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                Wer einmal Blut geleckt hat, der bleibt dabei. ioBroker macht süchtig...

                Au ja, da sind noch viele Ideen. Muss es den Mädels nur schmackhaft machen 😊

                zum Panel habe ich ja mal das Script für den Abfallkalender angefangen und ins Wiki gestellt. Ich habe hier noch eine erweiterte Version, wo die Alias mit erstellt werden. Mit der JS-Adapter Version 6.1.3 hat sich die Prozedur ja verbessert.
                Könntest du mir helfen es anzupassen.

                Das ist der aktuelle Stand:

                /*
                Version 3.0 von TT-Tom
                das Script erstellt die Datenpunkte und Alias für den Abfallkalender im Sonoff NSPanel
                Es wird der iCal Adapter benötigt und eine URL mit Terminen vom Entsorger bzw. eine .ics-Datei mit den Terminen.
                gleichzeitig triggert das Script auf dem bereitgestellten JSON im iCal adapter und füllt die 0_userdata.0 Datenpunkte
                Weitere Informationen findest du in der FAQ auf Github https://github.com/joBr99/nspanel-lovelace-ui/wiki
                */
                
                
                const idAbfalliCal = 'ical.1'; // iCal Instanz zum Abfallkalender
                const idUserdataAbfallVerzeichnis = 'Abfallkalender'; // Name des Datenpunktverzeichnis unter 0_userdata.0 -> Strandard = Abfallkalender
                const idAliasPanelVerzeichnis = 'NSPanel.1'; //Name PanelVerzeichnis unter alias.0. Standard = NSPanel_1
                const idAliasAbfallVerzeichnis = 'Abfall'; //Name Verzeichnis unterhalb der idPanelverzeichnis  Standard = Abfall
                
                const idZeichenLoeschen = 14; // x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                const idRestmuellName = 'Hausmüll'; // Schwarze Tonne
                const idWertstoffName = 'Gelber Sack'; // Gelbe Tonne / Sack
                const idPappePapierName = 'Papier';  // Blaue Tonne
                const idBioabfaelleName = 'Biomüll'; // Braune Tonne
                
                const idDPPruefung = false; // mit "false" wird die Prüfung der Datenpunkte in 0_userdata.0 und alias.0 ausgesetzt
                
                
                
                // ------------------------- Trigger zum füllen der 0_userdata Datenpunkte aus dem json vom ical Adapter -------------------------------
                var i, Muell_JSON, Event2, Color = 0;
                
                // Trigger auf iCal Instanz zur Json Tabelle
                on({ id: idAbfalliCal + '.data.table', change: 'ne' }, async function () {
                
                    for (i = 1; i <= 4; i++) {
                        Muell_JSON = getState(idAbfalliCal + '.data.table').val;
                        setState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date', getAttr(Muell_JSON, (String(i - 1) + '.date')));
                        Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i - 1) + '.event')), idZeichenLoeschen);
                        setState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event', Event2);
                        if (Event2 == idRestmuellName) {
                            Color = 33840;
                        } else if (Event2 == idBioabfaelleName) {
                            Color = 2016;
                        } else if (Event2 == idPappePapierName) {
                            Color = 31;
                        } else if (Event2 == idWertstoffName) {
                            Color = 65504;
                        }
                        setState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color', Color);
                    }
                });
                
                function subsequenceFromStartLast(sequence, at1) {
                    var start = at1;
                    var end = sequence.length;
                    return sequence.slice(start, end);
                };
                // ------------------------------------- Ende Trigger ------------------------------------
                
                // ------------------------------------- Funktionen zur Prüfung und Erstellung der Datenpunkte in 0_userdata.0 und alias.0 -----------------------
                if (idDPPruefung) {
                    checkUserdataState();
                    await wait(2000);
                    checkAliasFolder();
                    checkAliasChannel();
                    checkAliasState();
                };
                // Prüfung und ggf. Erstellung der Datenpunkte unter 0_userdata.0
                function checkUserdataState() {
                    for (i = 1; i <= 4; i++) {
                        if (!existsState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date')) {
                            log('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date nicht vorhanden, wurde erstellt');
                            createState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date', '',
                                {
                                    name: i + '.date',
                                    role: 'state',
                                    type: 'string',
                                    read: true,
                                    write: true
                                });
                        };
                        if (!existsState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event')) {
                            log('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event nicht vorhanden, wurde erstellt');
                            createState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event', '',
                                {
                                    name: i + '.event',
                                    role: 'state',
                                    type: 'string',
                                    read: true,
                                    write: true
                                });
                        };
                        if (!existsState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color')) {
                            log('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color nicht vorhanden, wurde erstellt');
                            createState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color', 0,
                                {
                                    name: i + '.color',
                                    role: 'state',
                                    type: 'number',
                                    read: true,
                                    write: true
                                });
                        };
                    };
                };
                // Prüfung das Alias states vorhanden sind ggf. anlegen
                function checkAliasState() {
                    for (i = 1; i <= 4; i++) {
                        if (!existsState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.INFO')) {
                            log('Alias State event' + i + '.INFO nicht vorhanden, wird erstellt');
                            createAliasState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.INFO', '0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date', 'string', 'INFO', 'weather.title');
                        } else { log('irgendwasgefunden .event' + i + '.INFO') };
                        if (!existsState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.LEVEL')) {
                            log('Alias State event' + i + '.LEVEL nicht vorhanden, wird erstellt')
                            createAliasState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.LEVEL', '0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color', 'number', 'LEVEL', 'value.warning');
                        } else { log('irgendwasgefunden .event' + i + '.LEVEL') };
                        if (!existsState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.TITLE')) {
                            log('Alias State event' + i + '.TITLE nicht vorhanden, wird erstellt')
                            createAliasState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.TITLE', '0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event', 'string', 'TITLE', 'weather.title.short');
                        } else { log('irgendwasgefunden .event' + i + '.TITLE') };
                    };
                
                };
                // Erstellt ein State unter Alias.0
                function createAliasState(idDst, idSrc, typeAlias, nameAlias, role) {
                    var obj = {};
                    obj.type = 'state';
                    obj.common = getObject(idSrc).common;
                    obj.common.alias = {};
                    obj.common.alias.id = idSrc;
                    obj.common.type = typeAlias;
                    obj.common.name = nameAlias;
                    obj.common.role = role;
                    obj.native = {};
                    setObject(idDst, obj);
                };
                // Prüfung das Alias Channel vorhanden sind ggf. anlegen
                function checkAliasChannel() {
                    for (i = 1; i <= 4; i++) {
                        if (!existsObject('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i)) {
                            log('Alias Channel ' + idAliasAbfallVerzeichnis + '.event' + i + ' nicht vorhanden');
                            createAliasChannel('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i, idAliasAbfallVerzeichnis + '.event' + i, 'warning');
                        }
                    }
                };
                // Erstellt ein Channel unter Alias.0
                function createAliasChannel(idDst, nameAlias, role) {
                    var obj = {};
                    obj.type = 'channel';
                    obj.common = {};
                    obj.common.name = {};
                    obj.common.name.de = nameAlias;
                    obj.common.role = role;
                    obj.native = {};
                    setObject(idDst, obj);
                };
                // Prüfung das Alias Folder vorhanden sind ggf. anlegen
                function checkAliasFolder() {
                    if (!existsObject('alias.0.' + idAliasPanelVerzeichnis)) {
                        log('Alias Folder ' + idAliasPanelVerzeichnis + ' nicht vorhanden');
                        createAliasFolder('alias.0.' + idAliasPanelVerzeichnis, idAliasPanelVerzeichnis);
                    };
                }
                // erstellt ein Folder unter Alias.0
                function createAliasFolder(idDst, nameAlias) {
                    var obj = {};
                    obj.type = 'folder';
                    obj.common = {};
                    obj.common.name = nameAlias;
                    obj.native = {};
                    setObject(idDst, obj);
                };
                // --------------------------- Ende Funktionen Datenpunkte ------------------------------------------------
                
                

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

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

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

                ArmilarA 1 Reply Last reply
                1
                • T TT-Tom

                  @armilar sagte in SONOFF NSPanel mit Lovelace UI:

                  Wer einmal Blut geleckt hat, der bleibt dabei. ioBroker macht süchtig...

                  Au ja, da sind noch viele Ideen. Muss es den Mädels nur schmackhaft machen 😊

                  zum Panel habe ich ja mal das Script für den Abfallkalender angefangen und ins Wiki gestellt. Ich habe hier noch eine erweiterte Version, wo die Alias mit erstellt werden. Mit der JS-Adapter Version 6.1.3 hat sich die Prozedur ja verbessert.
                  Könntest du mir helfen es anzupassen.

                  Das ist der aktuelle Stand:

                  /*
                  Version 3.0 von TT-Tom
                  das Script erstellt die Datenpunkte und Alias für den Abfallkalender im Sonoff NSPanel
                  Es wird der iCal Adapter benötigt und eine URL mit Terminen vom Entsorger bzw. eine .ics-Datei mit den Terminen.
                  gleichzeitig triggert das Script auf dem bereitgestellten JSON im iCal adapter und füllt die 0_userdata.0 Datenpunkte
                  Weitere Informationen findest du in der FAQ auf Github https://github.com/joBr99/nspanel-lovelace-ui/wiki
                  */
                  
                  
                  const idAbfalliCal = 'ical.1'; // iCal Instanz zum Abfallkalender
                  const idUserdataAbfallVerzeichnis = 'Abfallkalender'; // Name des Datenpunktverzeichnis unter 0_userdata.0 -> Strandard = Abfallkalender
                  const idAliasPanelVerzeichnis = 'NSPanel.1'; //Name PanelVerzeichnis unter alias.0. Standard = NSPanel_1
                  const idAliasAbfallVerzeichnis = 'Abfall'; //Name Verzeichnis unterhalb der idPanelverzeichnis  Standard = Abfall
                  
                  const idZeichenLoeschen = 14; // x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                  const idRestmuellName = 'Hausmüll'; // Schwarze Tonne
                  const idWertstoffName = 'Gelber Sack'; // Gelbe Tonne / Sack
                  const idPappePapierName = 'Papier';  // Blaue Tonne
                  const idBioabfaelleName = 'Biomüll'; // Braune Tonne
                  
                  const idDPPruefung = false; // mit "false" wird die Prüfung der Datenpunkte in 0_userdata.0 und alias.0 ausgesetzt
                  
                  
                  
                  // ------------------------- Trigger zum füllen der 0_userdata Datenpunkte aus dem json vom ical Adapter -------------------------------
                  var i, Muell_JSON, Event2, Color = 0;
                  
                  // Trigger auf iCal Instanz zur Json Tabelle
                  on({ id: idAbfalliCal + '.data.table', change: 'ne' }, async function () {
                  
                      for (i = 1; i <= 4; i++) {
                          Muell_JSON = getState(idAbfalliCal + '.data.table').val;
                          setState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date', getAttr(Muell_JSON, (String(i - 1) + '.date')));
                          Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i - 1) + '.event')), idZeichenLoeschen);
                          setState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event', Event2);
                          if (Event2 == idRestmuellName) {
                              Color = 33840;
                          } else if (Event2 == idBioabfaelleName) {
                              Color = 2016;
                          } else if (Event2 == idPappePapierName) {
                              Color = 31;
                          } else if (Event2 == idWertstoffName) {
                              Color = 65504;
                          }
                          setState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color', Color);
                      }
                  });
                  
                  function subsequenceFromStartLast(sequence, at1) {
                      var start = at1;
                      var end = sequence.length;
                      return sequence.slice(start, end);
                  };
                  // ------------------------------------- Ende Trigger ------------------------------------
                  
                  // ------------------------------------- Funktionen zur Prüfung und Erstellung der Datenpunkte in 0_userdata.0 und alias.0 -----------------------
                  if (idDPPruefung) {
                      checkUserdataState();
                      await wait(2000);
                      checkAliasFolder();
                      checkAliasChannel();
                      checkAliasState();
                  };
                  // Prüfung und ggf. Erstellung der Datenpunkte unter 0_userdata.0
                  function checkUserdataState() {
                      for (i = 1; i <= 4; i++) {
                          if (!existsState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date')) {
                              log('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date nicht vorhanden, wurde erstellt');
                              createState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date', '',
                                  {
                                      name: i + '.date',
                                      role: 'state',
                                      type: 'string',
                                      read: true,
                                      write: true
                                  });
                          };
                          if (!existsState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event')) {
                              log('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event nicht vorhanden, wurde erstellt');
                              createState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event', '',
                                  {
                                      name: i + '.event',
                                      role: 'state',
                                      type: 'string',
                                      read: true,
                                      write: true
                                  });
                          };
                          if (!existsState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color')) {
                              log('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color nicht vorhanden, wurde erstellt');
                              createState('0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color', 0,
                                  {
                                      name: i + '.color',
                                      role: 'state',
                                      type: 'number',
                                      read: true,
                                      write: true
                                  });
                          };
                      };
                  };
                  // Prüfung das Alias states vorhanden sind ggf. anlegen
                  function checkAliasState() {
                      for (i = 1; i <= 4; i++) {
                          if (!existsState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.INFO')) {
                              log('Alias State event' + i + '.INFO nicht vorhanden, wird erstellt');
                              createAliasState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.INFO', '0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.date', 'string', 'INFO', 'weather.title');
                          } else { log('irgendwasgefunden .event' + i + '.INFO') };
                          if (!existsState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.LEVEL')) {
                              log('Alias State event' + i + '.LEVEL nicht vorhanden, wird erstellt')
                              createAliasState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.LEVEL', '0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.color', 'number', 'LEVEL', 'value.warning');
                          } else { log('irgendwasgefunden .event' + i + '.LEVEL') };
                          if (!existsState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.TITLE')) {
                              log('Alias State event' + i + '.TITLE nicht vorhanden, wird erstellt')
                              createAliasState('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i + '.TITLE', '0_userdata.0.' + idUserdataAbfallVerzeichnis + '.' + i + '.event', 'string', 'TITLE', 'weather.title.short');
                          } else { log('irgendwasgefunden .event' + i + '.TITLE') };
                      };
                  
                  };
                  // Erstellt ein State unter Alias.0
                  function createAliasState(idDst, idSrc, typeAlias, nameAlias, role) {
                      var obj = {};
                      obj.type = 'state';
                      obj.common = getObject(idSrc).common;
                      obj.common.alias = {};
                      obj.common.alias.id = idSrc;
                      obj.common.type = typeAlias;
                      obj.common.name = nameAlias;
                      obj.common.role = role;
                      obj.native = {};
                      setObject(idDst, obj);
                  };
                  // Prüfung das Alias Channel vorhanden sind ggf. anlegen
                  function checkAliasChannel() {
                      for (i = 1; i <= 4; i++) {
                          if (!existsObject('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i)) {
                              log('Alias Channel ' + idAliasAbfallVerzeichnis + '.event' + i + ' nicht vorhanden');
                              createAliasChannel('alias.0.' + idAliasPanelVerzeichnis + '.' + idAliasAbfallVerzeichnis + '.event' + i, idAliasAbfallVerzeichnis + '.event' + i, 'warning');
                          }
                      }
                  };
                  // Erstellt ein Channel unter Alias.0
                  function createAliasChannel(idDst, nameAlias, role) {
                      var obj = {};
                      obj.type = 'channel';
                      obj.common = {};
                      obj.common.name = {};
                      obj.common.name.de = nameAlias;
                      obj.common.role = role;
                      obj.native = {};
                      setObject(idDst, obj);
                  };
                  // Prüfung das Alias Folder vorhanden sind ggf. anlegen
                  function checkAliasFolder() {
                      if (!existsObject('alias.0.' + idAliasPanelVerzeichnis)) {
                          log('Alias Folder ' + idAliasPanelVerzeichnis + ' nicht vorhanden');
                          createAliasFolder('alias.0.' + idAliasPanelVerzeichnis, idAliasPanelVerzeichnis);
                      };
                  }
                  // erstellt ein Folder unter Alias.0
                  function createAliasFolder(idDst, nameAlias) {
                      var obj = {};
                      obj.type = 'folder';
                      obj.common = {};
                      obj.common.name = nameAlias;
                      obj.native = {};
                      setObject(idDst, obj);
                  };
                  // --------------------------- Ende Funktionen Datenpunkte ------------------------------------------------
                  
                  
                  ArmilarA Offline
                  ArmilarA Offline
                  Armilar
                  Most Active Forum Testing
                  wrote on last edited by
                  #837

                  @tt-tom

                  mache ich gerne, aber mein ioBroker zieht grade auf ein neues NAS 😉 Kann auch morgen werden 😊

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

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

                  1 Reply Last reply
                  0
                  • ArmilarA Armilar

                    @vumer

                    Ist es möglich bei cardMedia wenn spotify-premium.0.player.isPlaying true ist das Icon 'spotify' grün leuchtet?

                    die colorSpotify habe ich vor Monaten mal angelegt. Damit starte ich Spotify-Playlists aus einer cardGrid 😉

                    Es gab zu dem Zeitpunkt auch ein Alexa-Logo. Weiß der Geier warum das verschwunden ist. Dem trauere ich immer noch hinterher.

                    Nun zur Frage. Nein, die Farbe für das Icon ist im Payload nicht enthalten.

                    Lasse uns @joBr99 kurz fragen, ob man das in den nächsten Versionen noch einfärben könnte?

                    J Offline
                    J Offline
                    joBr99
                    wrote on last edited by joBr99
                    #838

                    @armilar said in SONOFF NSPanel mit Lovelace UI:

                    Es gab zu dem Zeitpunkt auch ein Alexa-Logo. Weiß der Geier warum das verschwunden ist. Dem trauere ich immer noch hinterher.

                    https://dev.materialdesignicons.com/roadmap/brand-icons
                    https://github.com/Templarian/MaterialDesign/issues/5409

                    @armilar said in SONOFF NSPanel mit Lovelace UI:

                    Nun zur Frage. Nein, die Farbe für das Icon ist im Payload nicht enthalten.
                    Lasse uns @joBr99 kurz fragen, ob man das in den nächsten Versionen noch einfärben könnte?

                    done, ist aber noch nicht getestet, könnte jetzt auch ganz kaputt sein 🙂

                    https://github.com/joBr99/nspanel-lovelace-ui/commit/05e3cf9efa20e26c46faade899573189509003ca

                    mririgoyen created this issue in Templarian/MaterialDesign

                    closed RELEASED - Version 6.1.95 - Breaking Changes #5409

                    0 joBr99 committed to joBr99/nspanel-lovelace-ui
                    add color fields on cardMedia implements #584
                    ArmilarA 1 Reply Last reply
                    0
                    • W Offline
                      W Offline
                      Wuschl
                      wrote on last edited by Wuschl
                      #839

                      Ist es eigentlich auch möglich die Relais einzeln abzukoppeln? Der linke Taster funktioniert ganz normal mit Relais zum schalten für das Licht, der rechte Taster wird benutzt zum Rollos auf und zu fahren, das rechte Relais könnte ich dann frei schalten?

                      K 1 Reply Last reply
                      0
                      • ArmilarA Armilar

                        @wuschl

                        Die eigentlichen Fehler in der Config haben wir denke ich gefunden. 👀

                        W Offline
                        W Offline
                        Wuschl
                        wrote on last edited by
                        #840

                        @armilar Ich habe jetzt bei allen Panels die TFT-Firmware von deinem Wiki-Link nochmal geflasht, seit dem funktioniert alles, und die Warnmeldungen sind alle weg.👍

                        1 Reply Last reply
                        0
                        • W Wuschl

                          Ist es eigentlich auch möglich die Relais einzeln abzukoppeln? Der linke Taster funktioniert ganz normal mit Relais zum schalten für das Licht, der rechte Taster wird benutzt zum Rollos auf und zu fahren, das rechte Relais könnte ich dann frei schalten?

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

                          @wuschl
                          Ja. schau dazu mal in die Wiki, ich habe es dort beschrieben.

                          NSPanel Dokumentation im GitHub Wiki:

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

                          W 1 Reply Last reply
                          0
                          • ArmilarA Armilar

                            @meister-x

                            ich muss es erstmal einbauen. Wird in die nächste Version kommen.

                            Meister-xM Offline
                            Meister-xM Offline
                            Meister-x
                            wrote on last edited by
                            #842

                            @armilar
                            Hallo,
                            war leider paar Tage nicht hier- es sind soviele Einträge dazischen... teils mit meinem Thema "Dimmmode mit Bewegungsmelder hell".
                            Sorry , wenn ich so doof frage- kommt vielleicht eine Lösung mit der nächsten Version oder ist da unten schon was dabei ?
                            Hab schon vieles versucht -leider ohne Erfolg.

                            Vielen Dank und wirklich super was du so machst !

                            ArmilarA 1 Reply Last reply
                            0
                            • K Kuckuckmann

                              @wuschl
                              Ja. schau dazu mal in die Wiki, ich habe es dort beschrieben.

                              W Offline
                              W Offline
                              Wuschl
                              wrote on last edited by
                              #843

                              @kuckuckmann cool😎
                              war zwar jetzt eine lange Prozedur bis ich das gecheckt hab, aber es funktioniert. Ihr seid einfach klasse👋

                              K 1 Reply Last reply
                              0
                              • W Wuschl

                                @kuckuckmann cool😎
                                war zwar jetzt eine lange Prozedur bis ich das gecheckt hab, aber es funktioniert. Ihr seid einfach klasse👋

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

                                @wuschl
                                Das freut mich 🙂

                                NSPanel Dokumentation im GitHub Wiki:

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

                                1 Reply Last reply
                                0
                                • Meister-xM Meister-x

                                  @armilar
                                  Hallo,
                                  war leider paar Tage nicht hier- es sind soviele Einträge dazischen... teils mit meinem Thema "Dimmmode mit Bewegungsmelder hell".
                                  Sorry , wenn ich so doof frage- kommt vielleicht eine Lösung mit der nächsten Version oder ist da unten schon was dabei ?
                                  Hab schon vieles versucht -leider ohne Erfolg.

                                  Vielen Dank und wirklich super was du so machst !

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

                                  @meister-x sagte in SONOFF NSPanel mit Lovelace UI:

                                  kommt vielleicht eine Lösung mit der nächsten Version

                                  Ja, erst mit der nächsten Version

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

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

                                  1 Reply Last reply
                                  0
                                  • J joBr99

                                    @armilar said in SONOFF NSPanel mit Lovelace UI:

                                    Es gab zu dem Zeitpunkt auch ein Alexa-Logo. Weiß der Geier warum das verschwunden ist. Dem trauere ich immer noch hinterher.

                                    https://dev.materialdesignicons.com/roadmap/brand-icons
                                    https://github.com/Templarian/MaterialDesign/issues/5409

                                    @armilar said in SONOFF NSPanel mit Lovelace UI:

                                    Nun zur Frage. Nein, die Farbe für das Icon ist im Payload nicht enthalten.
                                    Lasse uns @joBr99 kurz fragen, ob man das in den nächsten Versionen noch einfärben könnte?

                                    done, ist aber noch nicht getestet, könnte jetzt auch ganz kaputt sein 🙂

                                    https://github.com/joBr99/nspanel-lovelace-ui/commit/05e3cf9efa20e26c46faade899573189509003ca

                                    mririgoyen created this issue in Templarian/MaterialDesign

                                    closed RELEASED - Version 6.1.95 - Breaking Changes #5409

                                    0 joBr99 committed to joBr99/nspanel-lovelace-ui
                                    add color fields on cardMedia implements #584
                                    ArmilarA Offline
                                    ArmilarA Offline
                                    Armilar
                                    Most Active Forum Testing
                                    wrote on last edited by
                                    #846

                                    @jobr99 sagte in SONOFF NSPanel mit Lovelace UI:

                                    ist aber noch nicht getestet, könnte jetzt auch ganz kaputt sein

                                    Ich baue es mal ein und teste es durch...

                                    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 Reply Last reply
                                    0
                                    • ravenst0neR Offline
                                      ravenst0neR Offline
                                      ravenst0ne
                                      wrote on last edited by
                                      #847

                                      Würde mal gerne die Diskussion in den Raum stellen, die Konfiguration vom eigentlichen Skript zu trennen (eigene *.ts Dateien) 🙂 Bei Updates müsste man nur das komplette Skript austauschen, und nicht seine Konfig umständlich rumkopieren. Auch bei mehreren NSPanel im Einsatz würde man nur ein einzelnes Skript benötigen

                                      HomoranH ArmilarA 2 Replies Last reply
                                      1
                                      • ravenst0neR ravenst0ne

                                        Würde mal gerne die Diskussion in den Raum stellen, die Konfiguration vom eigentlichen Skript zu trennen (eigene *.ts Dateien) 🙂 Bei Updates müsste man nur das komplette Skript austauschen, und nicht seine Konfig umständlich rumkopieren. Auch bei mehreren NSPanel im Einsatz würde man nur ein einzelnes Skript benötigen

                                        HomoranH Offline
                                        HomoranH Offline
                                        Homoran
                                        Global Moderator Administrators
                                        wrote on last edited by
                                        #848

                                        @ravenst0ne Doppelpost?
                                        dafür hattest du doch gerade einen eigenen Thread aufgemacht.

                                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

                                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                        1 Reply Last reply
                                        0
                                        • ArmilarA Armilar

                                          @jobr99 sagte in SONOFF NSPanel mit Lovelace UI:

                                          ist aber noch nicht getestet, könnte jetzt auch ganz kaputt sein

                                          Ich baue es mal ein und teste es durch...

                                          D Offline
                                          D Offline
                                          DaPeace
                                          wrote on last edited by
                                          #849

                                          @armilar Ich hab mal noch ein Problem festgestellt. Wenn ich ein Thermostat konfiguriert habe hab ich das Problem das ich den Wert zwar am Panel senken kann aber das Erhöhen geht nicht mehr. Das hab ich auch bei einem Kumpel der jetzt 15 von den Dingern installiert hat. Hast du einen Tip woran das liegen kann?

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          46

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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