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. ioBroker Allgemein
  4. Datenpunkte Monitor

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    13
    1
    116

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    561

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

Datenpunkte Monitor

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
4 Beiträge 3 Kommentatoren 312 Aufrufe 3 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.
  • O Offline
    O Offline
    ocio
    schrieb am zuletzt editiert von
    #1

    Suche Adapter oder Script um Datenpunkte zu monitoren (z.B. auf Änderungen). Konkrete Anwendung: Healthcheck von Sensoren. Habe im Forum bzw. in den Adaptern nichts gefunden.

    crunchipC htreckslerH 2 Antworten Letzte Antwort
    0
    • O ocio

      Suche Adapter oder Script um Datenpunkte zu monitoren (z.B. auf Änderungen). Konkrete Anwendung: Healthcheck von Sensoren. Habe im Forum bzw. in den Adaptern nichts gefunden.

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

      @ocio vllt https://github.com/Scrounger/ioBroker.linux-control

      umgestiegen von Proxmox auf Unraid

      1 Antwort Letzte Antwort
      0
      • O ocio

        Suche Adapter oder Script um Datenpunkte zu monitoren (z.B. auf Änderungen). Konkrete Anwendung: Healthcheck von Sensoren. Habe im Forum bzw. in den Adaptern nichts gefunden.

        htreckslerH Offline
        htreckslerH Offline
        htrecksler
        Forum Testing
        schrieb am zuletzt editiert von
        #3

        @ocio das hab ich mal irgendwann im Einsatz gehabt.

        //Das Script überprüft regelmässig die Datenpunkte auf Aktualisierung
         
        //Angabe des Datenpunkts= Datenpunkt der Überwacht werden soll
        //StateBezeichnung= Unter pfad_javascript.StateBezeichung wird ein State angelegt; True = Daten sind aktuell / False = Daten veraltet
        //Zeit in Sekunden = Zeit die vergangen sein darf seit der letzen Aktualisierung des Datenpunkts  (0 = default Zeit wird genommen).
         
        schedule("*/3 * * * *" , function () {                                  
         
            // Angabe des Datenpunkts;StateBezeichnung;Zeit in Sekunden
            var ueberwachung = ['mqtt.0.Sensoren.Sensor03.Feuchtigkeit;Bodenfeuchte_Hinten;400', 
                                'mqtt.0.Sensoren.Sensor02.Feuchtigkeit;Bodenfeuchte_Vorne;400'];
        
            //var ueberwachung = ['mqtt.0.Sensoren.Sensor03.Feuchtigkeit;Bodenfeuchte_Hinten;400'];
        
        
         
            var default_zeit = 240;
            var pfad_userdata ='0_userdata.0.watchdog.';   // Beispiel: 'javascript.0.watchdog.'  !Punkt nicht vergessen am Ende!
         
         
            //------------------------------------------------------------------
            //Ab hier nichts mehr Ändern
            //------------------------------------------------------------------
            var zeit= Math.floor(Date.now() / 1000);
            var differenz, lchange;
            var daten, tchange;
         
            ueberwachung.forEach(function(item, index, array) 
            {
                // Array Splitten
                   daten = item.split(";");
         
                //Datenpunkt erstellen wenn nicht vorhanden
                    createState(pfad_userdata + daten[1], { read: true, write: false, name: "Watchdog " + daten[1], type: "boolean", role: " ", def: "false"});
         
                //Differenz Zeit default oder manuell?
                    differenz = parseInt(daten[2]);
                    if (differenz == 0) differenz=default_zeit;
         
                //Zeitstempel abfragen in Sekunden
                    tchange=parseInt(getState(daten[0]).ts / 1000);
                    
                //Vergleichen der Zeitstempel
                        if ((zeit-tchange)>differenz)
                        {
                            setState(pfad_userdata + daten[1], false);
                            //console.log(daten[1] + "  ist älter als " + differenz + " Sekunden", 'warn');
                      //Telegramm
                           // setState("telegram.0.communicate.response", "Info: Gerät nicht erreicht");
                          // setState("telegram.0.communicate.response", daten[1]);
                        }
                        else
                        {
                            setState(pfad_userdata + daten[1], true);
                            //console.log(daten[1] + "  ist jünger als " + differenz + " Sekunden");
                        } 
         
            });  
        });
        
        

        Vielleicht hilft das als Einstieg. Es sollte immer noch funktionieren, ich hab es jedoch im moment nicht im Einsatz

        Gruss Hermann

        ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

        O 1 Antwort Letzte Antwort
        0
        • htreckslerH htrecksler

          @ocio das hab ich mal irgendwann im Einsatz gehabt.

          //Das Script überprüft regelmässig die Datenpunkte auf Aktualisierung
           
          //Angabe des Datenpunkts= Datenpunkt der Überwacht werden soll
          //StateBezeichnung= Unter pfad_javascript.StateBezeichung wird ein State angelegt; True = Daten sind aktuell / False = Daten veraltet
          //Zeit in Sekunden = Zeit die vergangen sein darf seit der letzen Aktualisierung des Datenpunkts  (0 = default Zeit wird genommen).
           
          schedule("*/3 * * * *" , function () {                                  
           
              // Angabe des Datenpunkts;StateBezeichnung;Zeit in Sekunden
              var ueberwachung = ['mqtt.0.Sensoren.Sensor03.Feuchtigkeit;Bodenfeuchte_Hinten;400', 
                                  'mqtt.0.Sensoren.Sensor02.Feuchtigkeit;Bodenfeuchte_Vorne;400'];
          
              //var ueberwachung = ['mqtt.0.Sensoren.Sensor03.Feuchtigkeit;Bodenfeuchte_Hinten;400'];
          
          
           
              var default_zeit = 240;
              var pfad_userdata ='0_userdata.0.watchdog.';   // Beispiel: 'javascript.0.watchdog.'  !Punkt nicht vergessen am Ende!
           
           
              //------------------------------------------------------------------
              //Ab hier nichts mehr Ändern
              //------------------------------------------------------------------
              var zeit= Math.floor(Date.now() / 1000);
              var differenz, lchange;
              var daten, tchange;
           
              ueberwachung.forEach(function(item, index, array) 
              {
                  // Array Splitten
                     daten = item.split(";");
           
                  //Datenpunkt erstellen wenn nicht vorhanden
                      createState(pfad_userdata + daten[1], { read: true, write: false, name: "Watchdog " + daten[1], type: "boolean", role: " ", def: "false"});
           
                  //Differenz Zeit default oder manuell?
                      differenz = parseInt(daten[2]);
                      if (differenz == 0) differenz=default_zeit;
           
                  //Zeitstempel abfragen in Sekunden
                      tchange=parseInt(getState(daten[0]).ts / 1000);
                      
                  //Vergleichen der Zeitstempel
                          if ((zeit-tchange)>differenz)
                          {
                              setState(pfad_userdata + daten[1], false);
                              //console.log(daten[1] + "  ist älter als " + differenz + " Sekunden", 'warn');
                        //Telegramm
                             // setState("telegram.0.communicate.response", "Info: Gerät nicht erreicht");
                            // setState("telegram.0.communicate.response", daten[1]);
                          }
                          else
                          {
                              setState(pfad_userdata + daten[1], true);
                              //console.log(daten[1] + "  ist jünger als " + differenz + " Sekunden");
                          } 
           
              });  
          });
          
          

          Vielleicht hilft das als Einstieg. Es sollte immer noch funktionieren, ich hab es jedoch im moment nicht im Einsatz

          O Offline
          O Offline
          ocio
          schrieb am zuletzt editiert von
          #4

          @htrecksler
          Danke für das script, sieht gut aus, reicht für ein Sensor Ok/Nicht Ok.

          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
          FAQ Cloud / IOT
          HowTo: Node.js-Update
          HowTo: Backup/Restore
          Downloads
          BLOG

          835

          Online

          32.5k

          Benutzer

          81.8k

          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