Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [DEPRECATED] Abkündigung Adapter ioBroker.info

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    [DEPRECATED] Abkündigung Adapter ioBroker.info

    This topic has been deleted. Only users with topic management privileges can see it.
    • jolic
      jolic @pk68 last edited by

      Hi, angesichts der Tatsache, dass es schon seit längerem keine neuen Updates mehr für den RPi-Monitor (rpi2) gibt und dieser ausschließlich für Debian konzipiert wurde, setze ich auf ein kleines JavaScript. Dieses Skript überwacht kontinuierlich die CPU-Temperatur und die Laufzeit meines Raspberry Pi-Systems und speichert diese Daten regelmäßig in ioBroker-Datenpunkten ab. Wer zusätzliche Informationen benötigt, kann diese Basis gerne als Ausgangspunkt nehmen und sie nach Bedarf erweitern.

      Vielleicht gibt es jemanden, der eine bessere Lösung oder Idee für diesen Code hat? Bei mir läuft er jedenfalls ohne Probleme.

      // V23.12.002
      // Linux Pi-System Monitor
      //
      // Das Skript überwacht die CPU-Temperatur und die Uptime eines Raspberry Pi-Systems,
      // und speichert diese Informationen regelmäßig in ioBroker-Datenpunkten,
      // wobei die Temperatur auf eine Stelle und die Uptime auf zwei Stellen hinter dem Komma begrenzt wird.
      
      var exec = require("child_process").exec;
      
      // Pfad für die Datenpunkte
      var dataPath = "javascript.0.linux-pi-system";
      
      // Funktion zur Aktualisierung eines Zustands, falls vorhanden, oder zur Erstellung eines neuen Zustands
      function updateOrCreateState(path, value, callback) {
          getObject(path, function (err, obj) {
              if (!err && obj) {
                  // Der Zustand existiert bereits, aktualisiere ihn
                  setState(path, value, true, callback);
              } else {
                  // Zustand erstellen
                  createState(path, value, true, callback);
              }
          });
      }
      
      // Funktion zur Speicherung der CPU-Temperatur
      function saveCPUTemperature() {
          exec("cat /sys/class/thermal/thermal_zone0/temp", function (error, stdout, stderr) {
              if (!error) {
                  // Umrechnung in Grad Celsius mit einer Stelle hinter dem Komma begrenzt
                  var millikelvin = parseFloat(stdout.trim());
                  var celsius = (millikelvin / 1000).toFixed(1);
      
                  // Speichern des Wertes in ioBroker
                  updateOrCreateState(dataPath + ".temperature", celsius, function () {});
              } else {
                  log("Fehler beim Abrufen der CPU-Temperatur: " + error);
              }
          });
      }
      
      // Funktion zur Umrechnung der Uptime in Stunden und Speicherung
      function saveUptime() {
          exec("cat /proc/uptime", function (error, stdout, stderr) {
              if (!error) {
                  // Zerlegen des stdout-Strings und Umwandlung der ersten Zahl in Stunden
                  var uptimeInSeconds = parseFloat(stdout.split(' ')[0]);
                  var uptimeInHours = (uptimeInSeconds / 3600).toFixed(2);
      
                  // Speichern des umgerechneten Wertes in ioBroker
                  updateOrCreateState(dataPath + ".uptime", uptimeInHours, function () {});
              } else {
                  log("Fehler beim Abrufen der Uptime: " + error);
              }
          });
      }
      
      // Initialer Aufruf der Funktionen
      saveCPUTemperature();
      saveUptime();
      
      // Zeitplan für die regelmäßige Ausführung
      schedule("*/5 * * * *", saveCPUTemperature); // Alle 5 Minuten die CPU-Temperatur abrufen und speichern
      schedule("*/10 * * * *", saveUptime); // Alle 10 Minuten die Uptime abrufen und speichern
      
      1 Reply Last reply Reply Quote 2
      • O
        olifre @Lucky_ESA last edited by

        @lucky_esa Super, besten Dank! Das hat mich auf jeden Fall inspiriert — auch wenn meine Lösung nun etwas anders aussieht, aber die Idee, einfach direkt Werte zu setzen statt über einen anderen Adapter wie SNMP zu gehen, fand ich dann in der Tat erstmal einfacher.

        Was ich jetzt mache, ist Folgendes:

        const sistm = require("systeminformation");
        
        const prefix = "0_userdata.0.temperatures";
        
        {
            const data = await sistm.cpuTemperature();
            createState(prefix + ".main", undefined, {name: "CPU Temp Main", unit: "°C"});
            createState(prefix + ".socket", undefined, {name: "CPU Temp Socket", unit: "°C"});
            for (let i = 0; i < data.cores.length; i++) {
                createState(prefix + ".cores-" + i, undefined, {name: "CPU Temp Core "+i, unit: "°C"});
            }
        }
        
        schedule({second: [0, 30]}, async function () {
          const data = await sistm.cpuTemperature();
          setState(prefix + ".main", {val: data.main !== null ? data.main : null, ack: true});
          setState(prefix + ".socket", {val: data.socket[0] !== null ? data.socket[0] : null, ack: true});
          for (let i = 0; i < data.cores.length; i++) {
              setState(prefix + ".cores-" + i, {val: data.cores[i] !== null ? data.cores[i] : null, ack: true});
          }
          // console.log("cpu Temp res = " + JSON.stringify(data));
        });
        

        Das nutzt systeminformation, was noch gut gepflegt wird und auch vom Info-Adapter verwendet wurde. Damit legt es dann Datenpunkte, die ähnlich benannt sind wie beim Info-Adapter, für die CPU-Temperaturen an. Aktuell Auslese alle 30 Sekunden, das werde ich vermutlich noch reduzieren.
        Dazu muss das NPM-Modul systeminformation natürlich installiert sein.

        Vielleicht hilft das ja Jemandem, der auch so eine Lösung sucht 😉 .

        1 Reply Last reply Reply Quote 0
        • mcm1957
          mcm1957 @ag last edited by

          @ag said in [DEPRECATED] Abkündigung Adapter ioBroker.info:

          Hallo
          Ich habe hier einen Master und einen Slave.
          Im Adapter Tab des Masters werden auch die auf dem Slave installierten Adapter angezeigt und können darüber auch aktualisiert werden.

          Werden die bei dir ständig / per Default angezeigt oder musst du zuerst auf den Slave umschalten (Host wechseln ?).

          Das es mit manuellem Wechsel des Hosts geht ist bekannt. Störend ist dabei nur, dass man da zuerst mal auf den / die Hosts wechseln muss um dann festzustellen, dass es nichts festzustellen gibt. Falls also bei dir gleichzeitig irgendwie der Status des Matsers UND der Slaves ohne Umscahlten angezeigt wird, wär es intressant zu klären wie das geht.

          Zwischenzeitlich gibts auch schon eine Feature Issue zu dem Thema
          https://github.com/ioBroker/ioBroker.admin/issues/2350

          Garfonso created this issue in ioBroker/ioBroker.admin

          open [enhancement]: indicate updates on other hosts somewhere #2350

          A 1 Reply Last reply Reply Quote 0
          • A
            ag @mcm1957 last edited by

            @mcm57
            Hallo

            Bei mir läuft auf dem Slave im Heizungsraum der CAN-BUS Adapter und der DS18B20 Adapter beide gemeldet wenn Updates vorliegen.

            mcm1957 1 Reply Last reply Reply Quote 0
            • mcm1957
              mcm1957 @ag last edited by

              @ag said in [DEPRECATED] Abkündigung Adapter ioBroker.info:

              @mcm57
              Hallo

              Bei mir läuft auf dem Slave im Heizungsraum der CAN-BUS Adapter und der DS18B20 Adapter beide gemeldet wenn Updates vorliegen.

              Ja - frage war
              Parallel / gleichzeitig im Admin des Masters?
              Oder selektierts du zuerst den Slave und dann zeigt dir Admin den Update an?

              Und noch ne Zusatzfrage:
              hast du am Slave admin installiert?

              A 1 Reply Last reply Reply Quote 0
              • A
                ag @mcm1957 last edited by

                @mcm57
                Der Admin Adapter ist zwar auf dem Slave, noch von der Installation her, ist bei mir aber nicht aufrufbar.

                Was die Updates angeht, da hast du Recht, muss erst den slave auswählen.
                Asche auf mein ergrautes Haupt.

                werde Jetzt den Admin am Slave mal deinstallieren.

                beste Grüße

                mcm1957 1 Reply Last reply Reply Quote 0
                • mcm1957
                  mcm1957 @ag last edited by

                  @ag said in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                  @mcm57
                  Der Admin Adapter ist zwar auf dem Slave, noch von der Installation her, ist bei mir aber nicht aufrufbar.

                  Was die Updates angeht, da hast du Recht, muss erst den slave auswählen.
                  Asche auf mein ergrautes Haupt.

                  werde Jetzt den Admin am Slave mal deinstallieren.

                  beste Grüße

                  Danke - das bestätigt, dass derzeit keine zentrale Anzeige in Admin vorhanden ist.

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @mcm1957 last edited by

                    @mcm57 sagte in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                    das bestätigt, dass derzeit keine zentrale Anzeige in Admin vorhanden ist.

                    ???

                    hier geht es doch nur darum, dass du auf dem Slave keinen eigenen admin brauchst.
                    Es wird bei richtiger Konfiguration und Installation alles über den admin des Masters verwaltet.

                    mcm1957 1 Reply Last reply Reply Quote 0
                    • mcm1957
                      mcm1957 @Homoran last edited by

                      @homoran said in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                      hier geht es doch nur darum, dass du auf dem Slave keinen eigenen admin brauchst.
                      Es wird bei richtiger Konfiguration und Installation alles über den admin des Masters verwaltet.

                      NÖ es ging / geht auch darum, dass man nicht von Master auf Slave manuell UMSCHALTEN muss um zu sehen ob ob Slave was aktualisieren ist. Das ist lästig und man vergisst drauf. Man sollte ohne viel Umschalten / Auswählen auf einen Blick sehen können ob was zu aktualisiseren ist, d.h. eine gemeinsame Ansicht welche Adapter zu aktualisieren sind - unabhängig davon ob auf Master oder Slave x - wurde vermisst. Info hat das scheinbar angeboten.

                      Dazu gibts aber jetzt mal eine Feature - Issue im Admin.

                      Homoran 1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @mcm1957 last edited by

                        @mcm57 sagte in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                        Dazu gibts aber jetzt mal eine Feature - Issue im Admin.

                        super, gilt das dann auch für das log?

                        @homoran sagte in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                        @mcm57 sagte in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                        Was wolfi913 sucht ist eine Möglichkeit OHNE den Host umzuschalten mit einem Blick zu sehen ob und welche Adapter auf den Slaves zu aktualisieren sind; auch wenn diese am aktiven Hist (z.B. Master) gar nicht installiert sind.

                        wäre dann in der Hostliste eine weitere Auswahl ("alle") möglich?

                        so etwas wünsche ich mir auch bei den logs. Fehlermeldungen auf den Slaves gehen mir immer wieder durch die Lappen 😞

                        mcm1957 2 Replies Last reply Reply Quote 0
                        • mcm1957
                          mcm1957 @Homoran last edited by

                          @homoran

                          Nö für den Log müßtest du noch ein Issue schreiben 🙂
                          Wär dann aber wohl js-controller und nicht admin.

                          1 Reply Last reply Reply Quote 0
                          • mcm1957
                            mcm1957 @Homoran last edited by

                            @homoran said in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                            @homoran sagte in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                            so etwas wünsche ich mir auch bei den logs. Fehlermeldungen auf den Slaves gehen mir immer wieder durch die Lappen 😞

                            Hab extra für dich da mal ein Feature Issue geschrieben. Ev. ergänze wenn du weitere Iddeen / Anregungen hast:

                            https://github.com/ioBroker/ioBroker.js-controller/issues/2608

                            mcm1957 created this issue in ioBroker/ioBroker.js-controller

                            closed [enhancement]: add (optional?) central logging #2608

                            Homoran 1 Reply Last reply Reply Quote 1
                            • Homoran
                              Homoran Global Moderator Administrators @mcm1957 last edited by

                              @mcm57 Danke!

                              Aber entweder habe ich da was falsch verstanden, oder es geht um verschiedene Dinge!

                              Meine Systeme haben keinen admin auf dem Slave/den Slaves.
                              Ich bekomme immer alle logs auf den admin des Masters.
                              ob das nicht so ist, wenn sich auf den slaves ebenfalls admins befänden, kann ich nicht beurteilen, glaube aber dass auch dann alle logs auf dem Master zusammenlaufen.

                              und ja, um die logs der slaves im Master zu sehen muss man die Ansicht über das Pulldown im Reiter Protokolle umstellen

                              1 Reply Last reply Reply Quote 0
                              • S
                                SmartHomer 0 @mcm1957 last edited by

                                @mcm57 sagte in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                                Da hier die Frage nach Ersatz aufgetaucht ist - NEIN es ist derzeit kein 1:1 Ersatz geplant oder empfohlen. Sollten einzelne Funktionen jemandem dringend abgehen, dann bitte ruhig hier nachfragen. Eventuell gibt es punktuellen Ersatz oder eine sonstige Lösung dafür.

                                Schade.

                                Ich habe mit dem Adapter für meine Tablet-Anzeige u.a. die folgendenden Datenpunkte ausgelesen:

                                systeminfo.0.System.Software.node
                                systeminfo.0.System.Software.npm

                                e9a0ffc9-4f2f-4bcd-9d4e-3794475795ae-grafik.png

                                Finden sich diese Informationen alternativ auch in einem anderen Objekt?

                                DJMarc75 Thomas Braun 2 Replies Last reply Reply Quote 0
                                • DJMarc75
                                  DJMarc75 @SmartHomer 0 last edited by

                                  @smarthomer-0

                                  schau mal hier rein:

                                  system.host.xxx.versions
                                  

                                  Im Objektbaum den Expertenmodus aktivieren ! 😉

                                  1 Reply Last reply Reply Quote 1
                                  • Thomas Braun
                                    Thomas Braun Most Active @SmartHomer 0 last edited by Thomas Braun

                                    @smarthomer-0 sagte in [DEPRECATED] Abkündigung Adapter ioBroker.info:

                                    Finden sich diese Informationen alternativ auch in einem anderen Objekt?

                                    Ja. Schau mal in
                                    system.host.HOSTNAME.versions.*
                                    danach.

                                    Da war der DJ schneller am Plattenteller.

                                    1 Reply Last reply Reply Quote 1
                                    • S
                                      SmartHomer 0 last edited by

                                      @djmarc75 @Thomas-Braun

                                      Danke für eure schnelle Antwort.

                                      Dort finden sich folgende Objekte:

                                      4c704e89-6613-4c1f-8e50-0edcf18274ec-grafik.png

                                      Ich bin mir nicht ganz sicher, was welcher Datenpunkt aussagt.
                                      Vermutlich muss ich auf "nodeNewest" und "npmCurrent" zugreifen, wenn ich meine aktuell installierten Versionen anzeigen will (?)

                                      Thomas Braun DJMarc75 2 Replies Last reply Reply Quote 0
                                      • Thomas Braun
                                        Thomas Braun Most Active @SmartHomer 0 last edited by

                                        @smarthomer-0

                                        Da muss ich zuhause mal genauer schauen. Aber ich habe im Hinterkopf, dass die Bezeichnungen Newest und NewestNext missverständlich waren.
                                        Ich weiß aber nicht mehr, was jetzt genau was bezeichnet.

                                        Ich glaube aber, 'NewestNext' ist der Datenpunkt für die vom ioBroker empfohlene Version. Die tatsächlich installierte Version hole ich z. B. im 'iob nodejs-update'-Skript dann aber lieber aus dem Betriebssystem.

                                        1 Reply Last reply Reply Quote 1
                                        • DJMarc75
                                          DJMarc75 @SmartHomer 0 last edited by

                                          @smarthomer-0

                                          hmpf, ich hab da einen DP mehr:

                                          Screenshot 2024-02-02 150351.png

                                          aber auch ich hole mir meine Versionen, wie auch @Thomas-Braun , über eine andere Quelle - in meinem Fall der Adapter
                                          Linux-Control
                                          Da gibt es super viele Befehle um Infos aus allen im Netzwerk befindlichen Linuxsysteme abzurufen 🙂

                                          1 Reply Last reply Reply Quote 1
                                          • mcm1957
                                            mcm1957 last edited by

                                            Also auf meinem nicht auf Letztstand befindlichen Testsystem wird angezeigt:

                                            031a4c47-70eb-4b28-aec8-553786a483b7-image.png

                                            Die current passen mit dem node -v, npm -v zusammen.

                                            S 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

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

                                            799
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            abkündigung deprecated
                                            29
                                            125
                                            14145
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo