Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Anfänger: Javascript optimieren [solved]

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    11
    1
    292

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.8k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    776

Anfänger: Javascript optimieren [solved]

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
javascriptoptimierung
4 Beiträge 3 Kommentatoren 310 Aufrufe 2 Beobachtet
  • Ä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.
  • Johannes BauerstatterJ Offline
    Johannes BauerstatterJ Offline
    Johannes Bauerstatter
    schrieb am zuletzt editiert von Johannes Bauerstatter
    #1

    Hallo,

    folgendes Script läuft und mich würde interessieren, wie man es verbessern/verschönern kann.

    const idVerbrauch = '0_userdata.0.Verbräuche.Gesamtverbrauch'/*Einspeisung - Verbräuche*/;
    const idR1 = 'esphome.0.3C610515B69C.Switch.2875680690.state'/*value of Switch*/;
    const idR2 = 'esphome.0.3C610515B69C.Switch.2875680689.state'/*value of Switch*/;
    const idR3 = 'esphome.0.3C610515B69C.Switch.2875680688.state'/*value of Switch*/;
    const idV1 = '0_userdata.0.Variablen.Heizstab 1 ein';   
    const idV2 = '0_userdata.0.Variablen.Heizstab 2 ein'; 
    const idV3 = '0_userdata.0.Variablen.Heizstab 3 ein'; 
    
    //Heizstab 1 ein -> wenn Einspeisung größer 700
    on (idVerbrauch, function (dp)
    {
        let idVerbrauch = dp.state.val; 
        var idV2 = getState('0_userdata.0.Variablen.Heizstab 2 ein').val;
        if (idVerbrauch < -700)
            {setState(idR1, true);}
            else if ((idVerbrauch > 0) &&(idV2 === false)) 
                {setState(idR1, false);}
    });
    
    //HeizstabVariable 1 zeitverzögert ein 
    on (idR1, function (dp)
    {        
        let idR1 = dp.state.val; 
        if (idR1 === true)
            {setStateDelayed(idV1, true, 10000);}
            else
            {setState(idV1, false);}
    });
    
    //Heizstab 2 ein -> wenn Einspeisung größer 700 und Heizstabvariable 1 ein
    on (idV1, function (dp)
    {        
        let idV1 = dp.state.val;
        var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
        var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val;
        if ((idVerbrauch < -700) && (idV1 === true))
            {setState(idR2, true);}
            else if ((idVerbrauch > 0) && (idV3 === false))
            {setState (idR2, false);}
    });
    
    //HeizstabVariable 2 zeitverzögert ein und zeitverzögert aus
    on (idR2, function (dp)
    {        
        let idR2 = dp.state.val;
        var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val;
        var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val; 
        if (idR2 === true)
            {setStateDelayed(idV2, true, 10000);}
            else if ((idVerbrauch > 0) &&(idV3 === false))
            {setStateDelayed(idV2, false, 10000);}
    });
    
    //Heizstab 3 ein -> wenn Einspeisung größer 700 und Heizstabvariable 2 ein
    on (idV2, function (dp)
    {        
        let idV2 = dp.state.val;
        var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
        if ((idVerbrauch < -700) && (idV2 === true))
            {setState(idR3, true);}
            else if (idVerbrauch > 0)
            {setState (idR3, false);}
    });
    
    //HeizstabVariable 3 zeitverzögert ein und zeitverzögert aus 
    on (idR3, function (dp)
    {        
        let idR3 = dp.state.val;
        var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
        if (idR3 === true)
            {setStateDelayed(idV3, true, 10000);}
            else if (idVerbrauch > 0)
            {setStateDelayed(idV3, false, 10000);}
    });
    
    OliverIOO paul53P 2 Antworten Letzte Antwort
    0
    • Johannes BauerstatterJ Johannes Bauerstatter

      Hallo,

      folgendes Script läuft und mich würde interessieren, wie man es verbessern/verschönern kann.

      const idVerbrauch = '0_userdata.0.Verbräuche.Gesamtverbrauch'/*Einspeisung - Verbräuche*/;
      const idR1 = 'esphome.0.3C610515B69C.Switch.2875680690.state'/*value of Switch*/;
      const idR2 = 'esphome.0.3C610515B69C.Switch.2875680689.state'/*value of Switch*/;
      const idR3 = 'esphome.0.3C610515B69C.Switch.2875680688.state'/*value of Switch*/;
      const idV1 = '0_userdata.0.Variablen.Heizstab 1 ein';   
      const idV2 = '0_userdata.0.Variablen.Heizstab 2 ein'; 
      const idV3 = '0_userdata.0.Variablen.Heizstab 3 ein'; 
      
      //Heizstab 1 ein -> wenn Einspeisung größer 700
      on (idVerbrauch, function (dp)
      {
          let idVerbrauch = dp.state.val; 
          var idV2 = getState('0_userdata.0.Variablen.Heizstab 2 ein').val;
          if (idVerbrauch < -700)
              {setState(idR1, true);}
              else if ((idVerbrauch > 0) &&(idV2 === false)) 
                  {setState(idR1, false);}
      });
      
      //HeizstabVariable 1 zeitverzögert ein 
      on (idR1, function (dp)
      {        
          let idR1 = dp.state.val; 
          if (idR1 === true)
              {setStateDelayed(idV1, true, 10000);}
              else
              {setState(idV1, false);}
      });
      
      //Heizstab 2 ein -> wenn Einspeisung größer 700 und Heizstabvariable 1 ein
      on (idV1, function (dp)
      {        
          let idV1 = dp.state.val;
          var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
          var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val;
          if ((idVerbrauch < -700) && (idV1 === true))
              {setState(idR2, true);}
              else if ((idVerbrauch > 0) && (idV3 === false))
              {setState (idR2, false);}
      });
      
      //HeizstabVariable 2 zeitverzögert ein und zeitverzögert aus
      on (idR2, function (dp)
      {        
          let idR2 = dp.state.val;
          var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val;
          var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val; 
          if (idR2 === true)
              {setStateDelayed(idV2, true, 10000);}
              else if ((idVerbrauch > 0) &&(idV3 === false))
              {setStateDelayed(idV2, false, 10000);}
      });
      
      //Heizstab 3 ein -> wenn Einspeisung größer 700 und Heizstabvariable 2 ein
      on (idV2, function (dp)
      {        
          let idV2 = dp.state.val;
          var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
          if ((idVerbrauch < -700) && (idV2 === true))
              {setState(idR3, true);}
              else if (idVerbrauch > 0)
              {setState (idR3, false);}
      });
      
      //HeizstabVariable 3 zeitverzögert ein und zeitverzögert aus 
      on (idR3, function (dp)
      {        
          let idR3 = dp.state.val;
          var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
          if (idR3 === true)
              {setStateDelayed(idV3, true, 10000);}
              else if (idVerbrauch > 0)
              {setStateDelayed(idV3, false, 10000);}
      });
      
      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      schrieb am zuletzt editiert von OliverIO
      #2

      @johannes-bauerstatter said in Anfänger: Javascript optimieren:

      Hallo,

      folgendes Script läuft und mich würde interessieren, wie man es verbessern/verschönern kann.

      const idVerbrauch = '0_userdata.0.Verbräuche.Gesamtverbrauch'/*Einspeisung - Verbräuche*/;
      const idR1 = 'esphome.0.3C610515B69C.Switch.2875680690.state'/*value of Switch*/;
      const idR2 = 'esphome.0.3C610515B69C.Switch.2875680689.state'/*value of Switch*/;
      const idR3 = 'esphome.0.3C610515B69C.Switch.2875680688.state'/*value of Switch*/;
      const idV1 = '0_userdata.0.Variablen.Heizstab 1 ein';   
      const idV2 = '0_userdata.0.Variablen.Heizstab 2 ein'; 
      const idV3 = '0_userdata.0.Variablen.Heizstab 3 ein'; 
      
      //Heizstab 1 ein -> wenn Einspeisung größer 700
      on (idVerbrauch, function (dp)
      {
          let idVerbrauch = dp.state.val; 
          var idV2 = getState('0_userdata.0.Variablen.Heizstab 2 ein').val;
          if (idVerbrauch < -700)
              {setState(idR1, true);}
              else if ((idVerbrauch > 0) &&(idV2 === false)) 
                  {setState(idR1, false);}
      });
      
      //HeizstabVariable 1 zeitverzögert ein 
      on (idR1, function (dp)
      {        
          let idR1 = dp.state.val; 
          if (idR1 === true)
              {setStateDelayed(idV1, true, 10000);}
              else
              {setState(idV1, false);}
      });
      
      //Heizstab 2 ein -> wenn Einspeisung größer 700 und Heizstabvariable 1 ein
      on (idV1, function (dp)
      {        
          let idV1 = dp.state.val;
          var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
          var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val;
          if ((idVerbrauch < -700) && (idV1 === true))
              {setState(idR2, true);}
              else if ((idVerbrauch > 0) && (idV3 === false))
              {setState (idR2, false);}
      });
      
      //HeizstabVariable 2 zeitverzögert ein und zeitverzögert aus
      on (idR2, function (dp)
      {        
          let idR2 = dp.state.val;
          var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val;
          var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val; 
          if (idR2 === true)
              {setStateDelayed(idV2, true, 10000);}
              else if ((idVerbrauch > 0) &&(idV3 === false))
              {setStateDelayed(idV2, false, 10000);}
      });
      
      //Heizstab 3 ein -> wenn Einspeisung größer 700 und Heizstabvariable 2 ein
      on (idV2, function (dp)
      {        
          let idV2 = dp.state.val;
          var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
          if ((idVerbrauch < -700) && (idV2 === true))
              {setState(idR3, true);}
              else if (idVerbrauch > 0)
              {setState (idR3, false);}
      });
      
      //HeizstabVariable 3 zeitverzögert ein und zeitverzögert aus 
      on (idR3, function (dp)
      {        
          let idR3 = dp.state.val;
          var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
          if (idR3 === true)
              {setStateDelayed(idV3, true, 10000);}
              else if (idVerbrauch > 0)
              {setStateDelayed(idV3, false, 10000);}
      });
      

      Funktional sieht das skript für mich gut aus.
      Zur Erhöhung der Lesbarkeit könnte man noch folgendes verbessern:

      • Einrück-Regeln bei If/Else
        Standardnotation ist eigentlich
      if (bedingung) {
         blahblah
      } else {
         blahblah
      }
      

      am konkreten Beispiel bedeutet das:

      on (idVerbrauch, function (dp) {
          let idVerbrauch = dp.state.val; 
          var idV2 = getState('0_userdata.0.Variablen.Heizstab 2 ein').val;
          if (idVerbrauch < -700) {
              setState(idR1, true);
          } else if ((idVerbrauch > 0) &&(idV2 === false))  {
              setState(idR1, false);
          }
      });
      

      so lässt sich leichter sehen wo welcher Bedinungsblock anfängt und aufhört

      Wenn du dich damit mehr beschäftigen möchtest, dann gibt es den javascript code-style bspw von google
      https://google.github.io/styleguide/jsguide.html#formatting-nonempty-blocks
      diese Regeln lassen sich in manchen Tools auch automatisiert prüfen oder gar anpassen.

      • Benennung der Variablen
        Deine Unterscheidung bei den Variablen ist bspw idR1 und idV1,
        wenn du weißt was damit gemeint ist, alles gut.
        Besser wäre es aber die Variablen mit konkreten Benennungen dies etwas lesbarer zu machen.
        Wenn du in einem halben Jahr da nochmal draufschaust, weißt nu nicht mehr, wofür
        der Switch.2875680690 eigentlich nochmal da war oder wo der genau ist.

      idSwitchWohnzimmer
      idHeizstabWohnzimmer

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      Johannes BauerstatterJ 1 Antwort Letzte Antwort
      0
      • Johannes BauerstatterJ Johannes Bauerstatter

        Hallo,

        folgendes Script läuft und mich würde interessieren, wie man es verbessern/verschönern kann.

        const idVerbrauch = '0_userdata.0.Verbräuche.Gesamtverbrauch'/*Einspeisung - Verbräuche*/;
        const idR1 = 'esphome.0.3C610515B69C.Switch.2875680690.state'/*value of Switch*/;
        const idR2 = 'esphome.0.3C610515B69C.Switch.2875680689.state'/*value of Switch*/;
        const idR3 = 'esphome.0.3C610515B69C.Switch.2875680688.state'/*value of Switch*/;
        const idV1 = '0_userdata.0.Variablen.Heizstab 1 ein';   
        const idV2 = '0_userdata.0.Variablen.Heizstab 2 ein'; 
        const idV3 = '0_userdata.0.Variablen.Heizstab 3 ein'; 
        
        //Heizstab 1 ein -> wenn Einspeisung größer 700
        on (idVerbrauch, function (dp)
        {
            let idVerbrauch = dp.state.val; 
            var idV2 = getState('0_userdata.0.Variablen.Heizstab 2 ein').val;
            if (idVerbrauch < -700)
                {setState(idR1, true);}
                else if ((idVerbrauch > 0) &&(idV2 === false)) 
                    {setState(idR1, false);}
        });
        
        //HeizstabVariable 1 zeitverzögert ein 
        on (idR1, function (dp)
        {        
            let idR1 = dp.state.val; 
            if (idR1 === true)
                {setStateDelayed(idV1, true, 10000);}
                else
                {setState(idV1, false);}
        });
        
        //Heizstab 2 ein -> wenn Einspeisung größer 700 und Heizstabvariable 1 ein
        on (idV1, function (dp)
        {        
            let idV1 = dp.state.val;
            var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
            var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val;
            if ((idVerbrauch < -700) && (idV1 === true))
                {setState(idR2, true);}
                else if ((idVerbrauch > 0) && (idV3 === false))
                {setState (idR2, false);}
        });
        
        //HeizstabVariable 2 zeitverzögert ein und zeitverzögert aus
        on (idR2, function (dp)
        {        
            let idR2 = dp.state.val;
            var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val;
            var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val; 
            if (idR2 === true)
                {setStateDelayed(idV2, true, 10000);}
                else if ((idVerbrauch > 0) &&(idV3 === false))
                {setStateDelayed(idV2, false, 10000);}
        });
        
        //Heizstab 3 ein -> wenn Einspeisung größer 700 und Heizstabvariable 2 ein
        on (idV2, function (dp)
        {        
            let idV2 = dp.state.val;
            var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
            if ((idVerbrauch < -700) && (idV2 === true))
                {setState(idR3, true);}
                else if (idVerbrauch > 0)
                {setState (idR3, false);}
        });
        
        //HeizstabVariable 3 zeitverzögert ein und zeitverzögert aus 
        on (idR3, function (dp)
        {        
            let idR3 = dp.state.val;
            var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
            if (idR3 === true)
                {setStateDelayed(idV3, true, 10000);}
                else if (idVerbrauch > 0)
                {setStateDelayed(idV3, false, 10000);}
        });
        
        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #3

        @johannes-bauerstatter
        Variablen sind doppelt deklariert. Werte sollten nicht id vorangestellt bekommen. Beispiel:

        var Verbrauch = getState(idVerbrauch).val;
        
        on(idVerbrauch, function(dp) {
            Verbrauch = dp.state.val;
            let V2 = getState(idV2).val;
            ...
        

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

        1 Antwort Letzte Antwort
        0
        • OliverIOO OliverIO

          @johannes-bauerstatter said in Anfänger: Javascript optimieren:

          Hallo,

          folgendes Script läuft und mich würde interessieren, wie man es verbessern/verschönern kann.

          const idVerbrauch = '0_userdata.0.Verbräuche.Gesamtverbrauch'/*Einspeisung - Verbräuche*/;
          const idR1 = 'esphome.0.3C610515B69C.Switch.2875680690.state'/*value of Switch*/;
          const idR2 = 'esphome.0.3C610515B69C.Switch.2875680689.state'/*value of Switch*/;
          const idR3 = 'esphome.0.3C610515B69C.Switch.2875680688.state'/*value of Switch*/;
          const idV1 = '0_userdata.0.Variablen.Heizstab 1 ein';   
          const idV2 = '0_userdata.0.Variablen.Heizstab 2 ein'; 
          const idV3 = '0_userdata.0.Variablen.Heizstab 3 ein'; 
          
          //Heizstab 1 ein -> wenn Einspeisung größer 700
          on (idVerbrauch, function (dp)
          {
              let idVerbrauch = dp.state.val; 
              var idV2 = getState('0_userdata.0.Variablen.Heizstab 2 ein').val;
              if (idVerbrauch < -700)
                  {setState(idR1, true);}
                  else if ((idVerbrauch > 0) &&(idV2 === false)) 
                      {setState(idR1, false);}
          });
          
          //HeizstabVariable 1 zeitverzögert ein 
          on (idR1, function (dp)
          {        
              let idR1 = dp.state.val; 
              if (idR1 === true)
                  {setStateDelayed(idV1, true, 10000);}
                  else
                  {setState(idV1, false);}
          });
          
          //Heizstab 2 ein -> wenn Einspeisung größer 700 und Heizstabvariable 1 ein
          on (idV1, function (dp)
          {        
              let idV1 = dp.state.val;
              var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
              var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val;
              if ((idVerbrauch < -700) && (idV1 === true))
                  {setState(idR2, true);}
                  else if ((idVerbrauch > 0) && (idV3 === false))
                  {setState (idR2, false);}
          });
          
          //HeizstabVariable 2 zeitverzögert ein und zeitverzögert aus
          on (idR2, function (dp)
          {        
              let idR2 = dp.state.val;
              var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val;
              var idV3 = getState('0_userdata.0.Variablen.Heizstab 3 ein').val; 
              if (idR2 === true)
                  {setStateDelayed(idV2, true, 10000);}
                  else if ((idVerbrauch > 0) &&(idV3 === false))
                  {setStateDelayed(idV2, false, 10000);}
          });
          
          //Heizstab 3 ein -> wenn Einspeisung größer 700 und Heizstabvariable 2 ein
          on (idV2, function (dp)
          {        
              let idV2 = dp.state.val;
              var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
              if ((idVerbrauch < -700) && (idV2 === true))
                  {setState(idR3, true);}
                  else if (idVerbrauch > 0)
                  {setState (idR3, false);}
          });
          
          //HeizstabVariable 3 zeitverzögert ein und zeitverzögert aus 
          on (idR3, function (dp)
          {        
              let idR3 = dp.state.val;
              var idVerbrauch = getState('0_userdata.0.Verbräuche.Gesamtverbrauch').val; 
              if (idR3 === true)
                  {setStateDelayed(idV3, true, 10000);}
                  else if (idVerbrauch > 0)
                  {setStateDelayed(idV3, false, 10000);}
          });
          

          Funktional sieht das skript für mich gut aus.
          Zur Erhöhung der Lesbarkeit könnte man noch folgendes verbessern:

          • Einrück-Regeln bei If/Else
            Standardnotation ist eigentlich
          if (bedingung) {
             blahblah
          } else {
             blahblah
          }
          

          am konkreten Beispiel bedeutet das:

          on (idVerbrauch, function (dp) {
              let idVerbrauch = dp.state.val; 
              var idV2 = getState('0_userdata.0.Variablen.Heizstab 2 ein').val;
              if (idVerbrauch < -700) {
                  setState(idR1, true);
              } else if ((idVerbrauch > 0) &&(idV2 === false))  {
                  setState(idR1, false);
              }
          });
          

          so lässt sich leichter sehen wo welcher Bedinungsblock anfängt und aufhört

          Wenn du dich damit mehr beschäftigen möchtest, dann gibt es den javascript code-style bspw von google
          https://google.github.io/styleguide/jsguide.html#formatting-nonempty-blocks
          diese Regeln lassen sich in manchen Tools auch automatisiert prüfen oder gar anpassen.

          • Benennung der Variablen
            Deine Unterscheidung bei den Variablen ist bspw idR1 und idV1,
            wenn du weißt was damit gemeint ist, alles gut.
            Besser wäre es aber die Variablen mit konkreten Benennungen dies etwas lesbarer zu machen.
            Wenn du in einem halben Jahr da nochmal draufschaust, weißt nu nicht mehr, wofür
            der Switch.2875680690 eigentlich nochmal da war oder wo der genau ist.

          idSwitchWohnzimmer
          idHeizstabWohnzimmer

          Johannes BauerstatterJ Offline
          Johannes BauerstatterJ Offline
          Johannes Bauerstatter
          schrieb am zuletzt editiert von
          #4

          @oliverio @paul53

          Vielen Dank. Werd ich gleich mal umsetzen und heute Abend mal was zum lesen. ;-)

          1 Antwort Letzte Antwort
          0

          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

          Registrieren Anmelden
          Antworten
          • In einem neuen Thema antworten
          Anmelden zum Antworten
          • Älteste zuerst
          • Neuste zuerst
          • Meiste Stimmen


          Support us

          ioBroker
          Community Adapters
          Donate
          FAQ Cloud / IOT
          HowTo: Node.js-Update
          HowTo: Backup/Restore
          Downloads
          BLOG

          508

          Online

          32.9k

          Benutzer

          83.0k

          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