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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Wert eines Datenpunktes ändern und als neuen DP darstellen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    927

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Wert eines Datenpunktes ändern und als neuen DP darstellen

Geplant Angeheftet Gesperrt Verschoben JavaScript
18 Beiträge 3 Kommentatoren 1.2k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • C c1olli

    Wert eines Datenpunktes ändern/berechnen und als neuen Datenpunkt darstellen

    Hallo,
    ich hab ioBroker schon seit einiger Zeit laufen, aber leider sind einige Werte nicht so wie ich sie benötige.

    Beispiel: Der Strom Bezug vom Smartmeter "smartmeter.0.1-0:1_8_0__255.value" zeigt mir den Zählertstand meines Stromzählers an. Ich möchte aber den Verbrauch von 2021 haben und daher müssten von dem Wert 418kw abgezogen werden. Das Ganze soll dann auf 2 Stellen hinter dem Komma gerundet sein.
    Wie man einen Datenpunkt in JS erstellt habe ich gefunden :
    https://forum.iobroker.net/topic/21028/eigene-objekte-datenpunkte/4

    Für das Habpanel hab ich das hin bekommen, aber wie das nun ein JS wird weiss ich noch nicht.

    <div style="padding-bottom:1px;">{{config.device_name}}</div>
    <div style="color: deepskyblue; font-size: 14pt">{{'%.2f' | sprintf:itemValue("smartmeter.0.1-0:1_8_0__255.value") - 418}} kWh</span></div>
    

    Es muss ein eigener Datenpunkt werden, da ich die Daten auch für meinen MagicMirror abgreife.

    Kann mir da jemand helfen?

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von paul53
    #2

    @c1olli
    Vorschlag:

    // aktuellen Jahresverbrauch berechnen
    const idStand = 'smartmeter.0.1-0:1_8_0__255.value';
    const idAkt = '0_userdata.0.Verbrauch.Jahr_aktuell';
    const idJahr = '0_userdata.0.Verbrauch.Stand_Jahresende';
    
    var jahr = 418;
    if(existsState(idJahr)) jahr = getState(idJahr).val;
    else createState(idJahr, jahr, {type: 'number', name: 'Zählerstand Jahresende', unit: 'kWh', role: 'value'});
    
    var stand = getState(idStand).val;
    var aktuell = Math.round((stand - jahr) * 100) / 100;
    if(existsState(idAkt)) setState(idAkt, aktuell, true);
    else createState(idAkt, aktuell, {type: 'number', name: 'aktueller Jahesverbrauch', unit: 'kWh', role: 'value'});
    
    on(idStand, function(dp) {
       stand = dp.state.val;
       aktuell = Math.round((stand - jahr) * 100) / 100;
       setState(idAkt, aktuell, true);
    });
    
    schedule('59 23 31 12 *', function() {
       jahr = Math.round(stand * 100) / 100;
       setState(idJahr, jahr, true)
    });
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    C 2 Antworten Letzte Antwort
    0
    • paul53P paul53

      @c1olli
      Vorschlag:

      // aktuellen Jahresverbrauch berechnen
      const idStand = 'smartmeter.0.1-0:1_8_0__255.value';
      const idAkt = '0_userdata.0.Verbrauch.Jahr_aktuell';
      const idJahr = '0_userdata.0.Verbrauch.Stand_Jahresende';
      
      var jahr = 418;
      if(existsState(idJahr)) jahr = getState(idJahr).val;
      else createState(idJahr, jahr, {type: 'number', name: 'Zählerstand Jahresende', unit: 'kWh', role: 'value'});
      
      var stand = getState(idStand).val;
      var aktuell = Math.round((stand - jahr) * 100) / 100;
      if(existsState(idAkt)) setState(idAkt, aktuell, true);
      else createState(idAkt, aktuell, {type: 'number', name: 'aktueller Jahesverbrauch', unit: 'kWh', role: 'value'});
      
      on(idStand, function(dp) {
         stand = dp.state.val;
         aktuell = Math.round((stand - jahr) * 100) / 100;
         setState(idAkt, aktuell, true);
      });
      
      schedule('59 23 31 12 *', function() {
         jahr = Math.round(stand * 100) / 100;
         setState(idJahr, jahr, true)
      });
      
      C Online
      C Online
      c1olli
      schrieb am zuletzt editiert von c1olli
      #3

      @paul53
      Ich bin begeistert - wie Du das so mal eben aus dem Ärmel geschüttelt hast. :+1: :+1: :+1:

      Die neuen Daten werden sauber angezeigt.

      Jetzt werde ich das mal für die anderen Werte adaptieren und hoffe, dass das dann auch so geschmeidig läuft.

      Gruß
      Olli

      Gruß
      Olli

      1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @c1olli
        Vorschlag:

        // aktuellen Jahresverbrauch berechnen
        const idStand = 'smartmeter.0.1-0:1_8_0__255.value';
        const idAkt = '0_userdata.0.Verbrauch.Jahr_aktuell';
        const idJahr = '0_userdata.0.Verbrauch.Stand_Jahresende';
        
        var jahr = 418;
        if(existsState(idJahr)) jahr = getState(idJahr).val;
        else createState(idJahr, jahr, {type: 'number', name: 'Zählerstand Jahresende', unit: 'kWh', role: 'value'});
        
        var stand = getState(idStand).val;
        var aktuell = Math.round((stand - jahr) * 100) / 100;
        if(existsState(idAkt)) setState(idAkt, aktuell, true);
        else createState(idAkt, aktuell, {type: 'number', name: 'aktueller Jahesverbrauch', unit: 'kWh', role: 'value'});
        
        on(idStand, function(dp) {
           stand = dp.state.val;
           aktuell = Math.round((stand - jahr) * 100) / 100;
           setState(idAkt, aktuell, true);
        });
        
        schedule('59 23 31 12 *', function() {
           jahr = Math.round(stand * 100) / 100;
           setState(idJahr, jahr, true)
        });
        
        C Online
        C Online
        c1olli
        schrieb am zuletzt editiert von c1olli
        #4

        @paul53
        So die Daten konnten eingearbeitet werden und werden nun auch erfolgreich an den MagicMirror weitergegeben.

        Nun brauche ich noch einen Wert
        fronius.0.powerflow.E_Year

        Dort werden die Daten in Wh ausgegeben, was natürlich ein hoher unübersichtlicher Wert ist.

        Also soll er durch 1000 geteilt werden damit die Ausgabe dann in kWh stattfindet und auch auf 2 Stellen gerundet werden.

        Edit: Ich konnte Dein Script so abändern, dass es jetzt funktioniert :blush:
        Vielen Dank

        Gruß
        Olli

        Gruß
        Olli

        paul53P 1 Antwort Letzte Antwort
        0
        • C c1olli

          @paul53
          So die Daten konnten eingearbeitet werden und werden nun auch erfolgreich an den MagicMirror weitergegeben.

          Nun brauche ich noch einen Wert
          fronius.0.powerflow.E_Year

          Dort werden die Daten in Wh ausgegeben, was natürlich ein hoher unübersichtlicher Wert ist.

          Also soll er durch 1000 geteilt werden damit die Ausgabe dann in kWh stattfindet und auch auf 2 Stellen gerundet werden.

          Edit: Ich konnte Dein Script so abändern, dass es jetzt funktioniert :blush:
          Vielen Dank

          Gruß
          Olli

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #5

          @c1olli sagte: durch 1000 geteilt werden damit die Ausgabe dann in kWh stattfindet und auch auf 2 Stellen gerundet werden.

          Math.round(dp.state.val / 10) / 100;
          

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          C 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @c1olli sagte: durch 1000 geteilt werden damit die Ausgabe dann in kWh stattfindet und auch auf 2 Stellen gerundet werden.

            Math.round(dp.state.val / 10) / 100;
            
            C Online
            C Online
            c1olli
            schrieb am zuletzt editiert von
            #6

            @paul53

            Läuft alles so wie gewünscht vielen Dank noch einmal.

            Gruß
            Olli

            Gruß
            Olli

            C 1 Antwort Letzte Antwort
            0
            • C c1olli

              @paul53

              Läuft alles so wie gewünscht vielen Dank noch einmal.

              Gruß
              Olli

              C Online
              C Online
              c1olli
              schrieb am zuletzt editiert von
              #7

              @paul53
              Ein halbes Jahr liefen die Scipts ohne Probleme sauber durch.

              Nun verweigert eines den Dienst.

              Als Script dient die Vorlage oben, die dann geändert habe.
              Es soll der aktuelle Jahresverbrauch kumuliert aus Strom aus dem Netz und der PV Anlage addiert werden.
              Das Ergebnis steht dann im Habpanel und auf dem MagicMirror.

              Wenn ich das Script starte wird die Addition auch sauber durchgeführt und die Datenpunkte befüllt.
              Dann aber wird nur noch die Änderung des Wertes der PV Anlage addiert, die Änderung des Netzstromes aber nicht mehr.

              // aktuellen Jahresverbrauch Strom berechnen
              // Strom Bezug + Strom Eigennutzung PV
              const idAkt = '0_userdata.0.Gesamtverbrauch_Strom.Jahr_aktuell';
              const idVerb = '0_userdata.0.Verbrauch.Jahr_aktuell';
              const idJahr = '0_userdata.0.Eigenverbrauch.Jahr_aktuell';
              
              var jahr = getState(idJahr).val;
              var verb = getState(idVerb).val;
              var aktuell = Math.round((jahr+verb) * 100) / 100;
              if(existsState(idAkt)) setState(idAkt, aktuell, true);
              else createState(idAkt, aktuell, {type: 'number', name: 'aktueller Jahresverbrauch Strom', unit: 'kWh', role: 'value'});
              on(idJahr, function(dp) {
              jahr = dp.state.val;
              aktuell = Math.round((jahr+verb) * 100) / 100;
              setState(idAkt, aktuell, true);
              });
              schedule('59 23 31 12 *', function() {
              jahr = Math.round(jahr * 100) / 100;
              setState(idJahr, jahr, true)
              });
              

              Woran kann das liegen?

              PV Eigenverbrauch Jahr = 0_userdata.0.Eigenverbrauch.Jahr_aktuell
              Netz Eigenverbrauch Jahr = 0_userdata.0.Gesamtverbrauch_Strom.Jahr_aktuell
              Ergebnis = 0_userdata.0.Gesamtverbrauch_Strom.Jahr_aktuell

              Gruß
              Olli

              paul53P 1 Antwort Letzte Antwort
              0
              • C c1olli

                @paul53
                Ein halbes Jahr liefen die Scipts ohne Probleme sauber durch.

                Nun verweigert eines den Dienst.

                Als Script dient die Vorlage oben, die dann geändert habe.
                Es soll der aktuelle Jahresverbrauch kumuliert aus Strom aus dem Netz und der PV Anlage addiert werden.
                Das Ergebnis steht dann im Habpanel und auf dem MagicMirror.

                Wenn ich das Script starte wird die Addition auch sauber durchgeführt und die Datenpunkte befüllt.
                Dann aber wird nur noch die Änderung des Wertes der PV Anlage addiert, die Änderung des Netzstromes aber nicht mehr.

                // aktuellen Jahresverbrauch Strom berechnen
                // Strom Bezug + Strom Eigennutzung PV
                const idAkt = '0_userdata.0.Gesamtverbrauch_Strom.Jahr_aktuell';
                const idVerb = '0_userdata.0.Verbrauch.Jahr_aktuell';
                const idJahr = '0_userdata.0.Eigenverbrauch.Jahr_aktuell';
                
                var jahr = getState(idJahr).val;
                var verb = getState(idVerb).val;
                var aktuell = Math.round((jahr+verb) * 100) / 100;
                if(existsState(idAkt)) setState(idAkt, aktuell, true);
                else createState(idAkt, aktuell, {type: 'number', name: 'aktueller Jahresverbrauch Strom', unit: 'kWh', role: 'value'});
                on(idJahr, function(dp) {
                jahr = dp.state.val;
                aktuell = Math.round((jahr+verb) * 100) / 100;
                setState(idAkt, aktuell, true);
                });
                schedule('59 23 31 12 *', function() {
                jahr = Math.round(jahr * 100) / 100;
                setState(idJahr, jahr, true)
                });
                

                Woran kann das liegen?

                PV Eigenverbrauch Jahr = 0_userdata.0.Eigenverbrauch.Jahr_aktuell
                Netz Eigenverbrauch Jahr = 0_userdata.0.Gesamtverbrauch_Strom.Jahr_aktuell
                Ergebnis = 0_userdata.0.Gesamtverbrauch_Strom.Jahr_aktuell

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von paul53
                #8

                @c1olli sagte: Vorlage oben, die dann geändert habe.

                Das hat mit der Vorlage nichts mehr zu tun.
                Ersetze schedule() (ab Zeile 17) durch

                on(idVerb, function(dp) {
                   verb = dp.state.val;
                   aktuell = Math.round((jahr+verb) * 100) / 100;
                   setState(idAkt, aktuell, true);
                });
                

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                C 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @c1olli sagte: Vorlage oben, die dann geändert habe.

                  Das hat mit der Vorlage nichts mehr zu tun.
                  Ersetze schedule() (ab Zeile 17) durch

                  on(idVerb, function(dp) {
                     verb = dp.state.val;
                     aktuell = Math.round((jahr+verb) * 100) / 100;
                     setState(idAkt, aktuell, true);
                  });
                  
                  C Online
                  C Online
                  c1olli
                  schrieb am zuletzt editiert von
                  #9

                  @paul53
                  Ja, da sind schon einige Änderungen drin, aber Dank Dir habe ich wenigstens verstanden wie die Berechnungen durchgeführt und die Werte eingefangen werden.
                  Für einen alten Sack wie mich ist das leider nicht mehr so einfach wie früher etwas neues zu lernen.

                  Ich habe nun die Zeilen getauscht, nun werde ich das Ganze beobachten und berichten.

                  Gruß
                  Olli

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • C c1olli

                    @paul53
                    Ja, da sind schon einige Änderungen drin, aber Dank Dir habe ich wenigstens verstanden wie die Berechnungen durchgeführt und die Werte eingefangen werden.
                    Für einen alten Sack wie mich ist das leider nicht mehr so einfach wie früher etwas neues zu lernen.

                    Ich habe nun die Zeilen getauscht, nun werde ich das Ganze beobachten und berichten.

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #10

                    @c1olli sagte: Für einen alten Sack wie mich

                    Wirklich so alt?

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    C 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @c1olli sagte: Für einen alten Sack wie mich

                      Wirklich so alt?

                      C Online
                      C Online
                      c1olli
                      schrieb am zuletzt editiert von
                      #11

                      @paul53
                      Kommt auf die Sichtweise an - 54 Jahre = ab 50 ist man bei uns ein alter Sack.

                      Gruß
                      Olli

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • C c1olli

                        @paul53
                        Kommt auf die Sichtweise an - 54 Jahre = ab 50 ist man bei uns ein alter Sack.

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #12

                        @c1olli sagte: 54 Jahre

                        Jungspund! Bin "nur" 15 Jahre älter und habe vor ca. 6 Jahren angefangen, Javascript zu lernen.

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        C crunchipC 3 Antworten Letzte Antwort
                        0
                        • paul53P paul53

                          @c1olli sagte: 54 Jahre

                          Jungspund! Bin "nur" 15 Jahre älter und habe vor ca. 6 Jahren angefangen, Javascript zu lernen.

                          C Online
                          C Online
                          c1olli
                          schrieb am zuletzt editiert von
                          #13

                          @paul53
                          Verdammte Axt - meinen Respekt.

                          Ich selbst beschäftige mich mehr mit 3D Druck, aber so ein paar Spielereien wie ioBroker, MagicMirror Smart Home und Raspberry Pi sind total interessant.

                          Gruß
                          Olli

                          1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @c1olli sagte: 54 Jahre

                            Jungspund! Bin "nur" 15 Jahre älter und habe vor ca. 6 Jahren angefangen, Javascript zu lernen.

                            crunchipC Abwesend
                            crunchipC Abwesend
                            crunchip
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #14

                            @paul53 sagte in Wert eines Datenpunktes ändern und als neuen DP darstellen:

                            "nur" 15 Jahre älter

                            haha, da bin ich 25J jünger, bekomm das trotzdem nicht gebacken, Javascript sind für mich sprichwörtlich "böhmische Dörfer"

                            umgestiegen von Proxmox auf Unraid

                            1 Antwort Letzte Antwort
                            0
                            • paul53P paul53

                              @c1olli sagte: 54 Jahre

                              Jungspund! Bin "nur" 15 Jahre älter und habe vor ca. 6 Jahren angefangen, Javascript zu lernen.

                              C Online
                              C Online
                              c1olli
                              schrieb am zuletzt editiert von
                              #15

                              @paul53
                              So das Script läuft jetzt wie es soll

                              Beim Neustart habe ich gesehen, dass nun 2 Subscriptions statt einer, dafür aber kein Schedule aufgerufen wird.

                              Heisst das, dass der neue Teil den 2. Datenpunkt nun direkt anspricht?

                              Weißt Du eine Seite die das Ganze gut beschreibt um Javascript zu lernen?

                              Gruß
                              Olli

                              paul53P 1 Antwort Letzte Antwort
                              0
                              • C c1olli

                                @paul53
                                So das Script läuft jetzt wie es soll

                                Beim Neustart habe ich gesehen, dass nun 2 Subscriptions statt einer, dafür aber kein Schedule aufgerufen wird.

                                Heisst das, dass der neue Teil den 2. Datenpunkt nun direkt anspricht?

                                Weißt Du eine Seite die das Ganze gut beschreibt um Javascript zu lernen?

                                paul53P Offline
                                paul53P Offline
                                paul53
                                schrieb am zuletzt editiert von
                                #16

                                @c1olli sagte: Heisst das, dass der neue Teil den 2. Datenpunkt nun direkt anspricht?

                                Ja, er triggert auf Wertänderung des Datenpunktes '0_userdata.0.Verbrauch.Jahr_aktuell'.

                                @c1olli sagte in Wert eines Datenpunktes ändern und als neuen DP darstellen:

                                Seite die das Ganze gut beschreibt um Javascript zu lernen?

                                Wenn Du bereits über Programmierkenntnisse in einer anderen Sprache verfügst, helfen sicherlich selfhtml und Mozilla weiter.

                                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                C 1 Antwort Letzte Antwort
                                0
                                • paul53P paul53

                                  @c1olli sagte: Heisst das, dass der neue Teil den 2. Datenpunkt nun direkt anspricht?

                                  Ja, er triggert auf Wertänderung des Datenpunktes '0_userdata.0.Verbrauch.Jahr_aktuell'.

                                  @c1olli sagte in Wert eines Datenpunktes ändern und als neuen DP darstellen:

                                  Seite die das Ganze gut beschreibt um Javascript zu lernen?

                                  Wenn Du bereits über Programmierkenntnisse in einer anderen Sprache verfügst, helfen sicherlich selfhtml und Mozilla weiter.

                                  C Online
                                  C Online
                                  c1olli
                                  schrieb am zuletzt editiert von
                                  #17

                                  @paul53
                                  Nee, ich habe mal vor Urzeiten mit meinem 386er ein wenig Basic gelernt, aber das ist auch schon über 30 Jahre her.
                                  Ansonsten habe ich mich immer mit Tools beholfen.
                                  Auch die Firmware für meine 3D Drucker kompiliere ich über ein online Tool.
                                  Frei nach dem Motto KISS.

                                  Gruß
                                  Olli

                                  paul53P 1 Antwort Letzte Antwort
                                  0
                                  • C c1olli

                                    @paul53
                                    Nee, ich habe mal vor Urzeiten mit meinem 386er ein wenig Basic gelernt, aber das ist auch schon über 30 Jahre her.
                                    Ansonsten habe ich mich immer mit Tools beholfen.
                                    Auch die Firmware für meine 3D Drucker kompiliere ich über ein online Tool.
                                    Frei nach dem Motto KISS.

                                    paul53P Offline
                                    paul53P Offline
                                    paul53
                                    schrieb am zuletzt editiert von
                                    #18

                                    @c1olli sagte: Basic gelernt

                                    Immerhin: Basic ist auch eine Skriptsprache, allerdings mit vielen Dialekten.

                                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                    1 Antwort Letzte Antwort
                                    0
                                    Antworten
                                    • In einem neuen Thema antworten
                                    Anmelden zum Antworten
                                    • Älteste zuerst
                                    • Neuste zuerst
                                    • Meiste Stimmen


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    613

                                    Online

                                    32.6k

                                    Benutzer

                                    82.2k

                                    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