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. Änderungen aller Datenpunkte in einem Ordner überwachen

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
    925

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Änderungen aller Datenpunkte in einem Ordner überwachen

Geplant Angeheftet Gesperrt Verschoben JavaScript
6 Beiträge 4 Kommentatoren 303 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.
  • R Offline
    R Offline
    Ralf 2
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,

    ich habe hier eine Samsung-Waschmaschine, die ich über den Adapter Smartthings in IOBroker habe. Das sind jedoch jede Menge Datenpunkte und ich will heraus finden welche Datenpunkte mir wichtig sind. Nun habe ich mir gedacht einmal auf alle Datenpunkte zu triggern und mir Änderungen in ein Logfile zu schreiben. Bzw. in einen Zeichenketten-DP die ID, alter Wert, neuer Wert zu speichern und mir das für einen Tag in Mariadb zu loggen.

    Wie aber kann ich am performantesten einen Trigger für alle Datenpunkte erstellen?

    Ich kann natürlich aus der Liste von folgendem Selector in einer Schleife für alle Datenpunkte einen Trigger erzeugen, geht das aber eleganter?

    #Pseudocode:
    $('[id=smartthings.0.d867cabb-a15c-c2d3-d677-c87ee6845705.*]').each(function (id, i) {
    on({id: id, change: "ne"}, async function (obj) {
                DoIt(); ;
        }
    });
    }
    

    Gruß Ralf

    paul53P AsgothianA 2 Antworten Letzte Antwort
    0
    • R Ralf 2

      Hallo zusammen,

      ich habe hier eine Samsung-Waschmaschine, die ich über den Adapter Smartthings in IOBroker habe. Das sind jedoch jede Menge Datenpunkte und ich will heraus finden welche Datenpunkte mir wichtig sind. Nun habe ich mir gedacht einmal auf alle Datenpunkte zu triggern und mir Änderungen in ein Logfile zu schreiben. Bzw. in einen Zeichenketten-DP die ID, alter Wert, neuer Wert zu speichern und mir das für einen Tag in Mariadb zu loggen.

      Wie aber kann ich am performantesten einen Trigger für alle Datenpunkte erstellen?

      Ich kann natürlich aus der Liste von folgendem Selector in einer Schleife für alle Datenpunkte einen Trigger erzeugen, geht das aber eleganter?

      #Pseudocode:
      $('[id=smartthings.0.d867cabb-a15c-c2d3-d677-c87ee6845705.*]').each(function (id, i) {
      on({id: id, change: "ne"}, async function (obj) {
                  DoIt(); ;
          }
      });
      }
      
      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @ralf-2 sagte: geht das aber eleganter?

      Laut Doku gibt es auch die Selektor.on()-Funktion.
      Oder so:

      const ids = $('smartthings.0.d867cabb-a15c-c2d3-d677-c87ee6845705.*').toArray();
      on(ids, function(dp) {
          // dp auswerten
      });
      

      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

      R 1 Antwort Letzte Antwort
      0
      • R Ralf 2

        Hallo zusammen,

        ich habe hier eine Samsung-Waschmaschine, die ich über den Adapter Smartthings in IOBroker habe. Das sind jedoch jede Menge Datenpunkte und ich will heraus finden welche Datenpunkte mir wichtig sind. Nun habe ich mir gedacht einmal auf alle Datenpunkte zu triggern und mir Änderungen in ein Logfile zu schreiben. Bzw. in einen Zeichenketten-DP die ID, alter Wert, neuer Wert zu speichern und mir das für einen Tag in Mariadb zu loggen.

        Wie aber kann ich am performantesten einen Trigger für alle Datenpunkte erstellen?

        Ich kann natürlich aus der Liste von folgendem Selector in einer Schleife für alle Datenpunkte einen Trigger erzeugen, geht das aber eleganter?

        #Pseudocode:
        $('[id=smartthings.0.d867cabb-a15c-c2d3-d677-c87ee6845705.*]').each(function (id, i) {
        on({id: id, change: "ne"}, async function (obj) {
                    DoIt(); ;
            }
        });
        }
        
        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        schrieb am zuletzt editiert von Asgothian
        #3

        @ralf-2 warum nicht einfach via sql Adapter direkt in die dB schreiben ?

        Wenn du jeden Wert mitschreibst hast du in der dB alles - vorherigen Wert, zeitstempel, neuen Wert. Alleine durch das eintragen in der dB.

        A.

        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

        1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @ralf-2 sagte: geht das aber eleganter?

          Laut Doku gibt es auch die Selektor.on()-Funktion.
          Oder so:

          const ids = $('smartthings.0.d867cabb-a15c-c2d3-d677-c87ee6845705.*').toArray();
          on(ids, function(dp) {
              // dp auswerten
          });
          
          R Offline
          R Offline
          Ralf 2
          schrieb am zuletzt editiert von
          #4

          @paul53 sagte in Änderungen aller Datenpunkte in einem Ordner überwachen:

          Laut Doku gibt es auch die Selektor.on()-Funktion.

          Das hatte ich nicht gefunden, das kann ich mal probieren.

          @Asgothian

          warum nicht einfach via sql Adapter direkt in die dB schreiben ?

          Mir ist Samsung hier zu Gesprächig, das sind 2151 Datenpunkte :-(
          Wenn ich weiß welche Punkte sich ändern, kann ich mir diese Auswahl in einen Alias packen. Es werden sich vermutlich nur wenige Datenpunkte ändern.

          Das Skript wird ja auch nur temporär laufen.

          Gruß Ralf

          HomoranH 1 Antwort Letzte Antwort
          0
          • R Ralf 2

            @paul53 sagte in Änderungen aller Datenpunkte in einem Ordner überwachen:

            Laut Doku gibt es auch die Selektor.on()-Funktion.

            Das hatte ich nicht gefunden, das kann ich mal probieren.

            @Asgothian

            warum nicht einfach via sql Adapter direkt in die dB schreiben ?

            Mir ist Samsung hier zu Gesprächig, das sind 2151 Datenpunkte :-(
            Wenn ich weiß welche Punkte sich ändern, kann ich mir diese Auswahl in einen Alias packen. Es werden sich vermutlich nur wenige Datenpunkte ändern.

            Das Skript wird ja auch nur temporär laufen.

            HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #5

            @ralf-2 sagte in Änderungen aller Datenpunkte in einem Ordner überwachen:

            Wenn ich weiß welche Punkte sich ändern, kann ich mir diese Auswahl in einen Alias packen. Es werden sich vermutlich nur wenige Datenpunkte ändern.

            das kannst du doch auch im Adapter konfigurieren!

            • nur geänderte Daten loggen
            • Mindestabweichung vom bisherigen Wert
            • Blockzeit
            • .....

            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 -

            R 1 Antwort Letzte Antwort
            0
            • HomoranH Homoran

              @ralf-2 sagte in Änderungen aller Datenpunkte in einem Ordner überwachen:

              Wenn ich weiß welche Punkte sich ändern, kann ich mir diese Auswahl in einen Alias packen. Es werden sich vermutlich nur wenige Datenpunkte ändern.

              das kannst du doch auch im Adapter konfigurieren!

              • nur geänderte Daten loggen
              • Mindestabweichung vom bisherigen Wert
              • Blockzeit
              • .....
              R Offline
              R Offline
              Ralf 2
              schrieb am zuletzt editiert von
              #6

              @homoran
              MMmmm... muss ich mal drüber nachdenken.
              Ich könnte im Skript wo ich alle Werte in eine JSON-Tabelle packe noch die letzte Änderung mit aufnehmen, dann habe ich die Datenpunkte identifiziert.
              Aber ja, ich werde mal über den Schraubenschlüssel bei allen SQL aktivieren.

              Gruß Ralf

              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

              706

              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