Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Hardware für Anfänger

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Hardware für Anfänger

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      skokarl last edited by

      weil Fully Browser alleine schon wegen der Möglichkeiten geil ist 🙂
      gucke nochmal ob ich irgendwie ne Brücke bauen kann, hab ja Wochenende 🙂

      1 Reply Last reply Reply Quote 0
      • TheDuke
        TheDuke last edited by

        ich glaube das hat nix mit dem Passwort zu tun. Du rufst ja nur die von ioBroker produzierte Seite auf. Da ist dann ja nix mit PW.

        Fehlt bestimmt ein Plugin in deinem Browser oder so .

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

          doch... auch in Deinem Link übergibst Du User und Pass ...
          und das ist nicht mehr in jedem Browser erlaubt.

          Kann bei meiner Hikvision die RTSP Authentifizierung abschalten, teste ich jetzt mal

          vom Entwickler Fully Browser
          "
          If your webcam video requires Basic HTTP Authentication (it’s URL starts with http://user:auth@host…) and you embed this video in your page by using the <img> oder <video> tag it probably won’t work as the authentication for embedded contents is not allowed in Android Webview (as well as in Google Chrome on Android) for security reasons. For more information please read the discussion on this topic at Chromium Bugtracker. This is something Fully can’t change. The only known workaround is using the video proxy."

          TheDuke 1 Reply Last reply Reply Quote 0
          • TheDuke
            TheDuke @skokarl last edited by TheDuke

            @skokarl sagte in Hardware für Anfänger:

            doch... auch in Deinem Link übergibst Du User und Pass ...
            und das ist nicht mehr in jedem Browser erlaubt.

            du musst doch im Vis-edit das als Widgets import einbauen und nur da ist dann die PW-Geschichte. Ich glaube wir reden aneinander vorbei

            1 Reply Last reply Reply Quote 0
            • TheDuke
              TheDuke last edited by

              kannst du dir mal ansehen, das müßte erklären wie man die Einzelbilder bekommt .
              hikvision-kamera-einzelbild-abrufen

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

                Ja, wir reden aneinander vorbei.
                Ich weiß wo ich ein Bild herkriege, und auch wo ich den rtsp Stream herkriege.
                Aber nicht jeder Browser zeigt das dann auch an, hat mit Android Sicherheitsmerkmalen zu tun.
                Richtig verstanden habe ich es aber auch noch nicht.
                Wo und wie zeigst Du Deine VIS an ? Tablet ? Android ? Welcher Browser ?

                1 Reply Last reply Reply Quote 0
                • TheDuke
                  TheDuke last edited by

                  @skokarl sagte in Hardware für Anfänger:

                  Fully Browser

                  den habe ich gerade auf meinem Handy installiert und was soll ich sagen, der funktioniert !!

                  S 1 Reply Last reply Reply Quote 0
                  • M
                    Marty56 last edited by

                    Ich kann es mir fast nicht vorstellen, dass ein Raspi für ioBroker von der Performance zu langsam ist.
                    Was natürlich passieren kann, ist, dass das RAM zu klein wird.

                    Aber bevor ich mir sofort einen NUC kaufen würde, würde ich vielleicht noch ein paar Wochen warten und dann den Compact Mode ausprobieren.

                    Der sollte den RAM Bedarf signifikant reduzieren und damit den Kauf neuer Hardware überflüssig machen.

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      skokarl @TheDuke last edited by skokarl

                      @TheDuke sagte in Hardware für Anfänger:

                      @skokarl sagte in Hardware für Anfänger:

                      Fully Browser

                      den habe ich gerade auf meinem Handy installiert und was soll ich sagen, der funktioniert !!

                      Was ist das für eine Cam
                      rtsp Stream ?, h264 oder mpeg ? oder Bild ? jpeg ?

                      Du hast ein Iphone, 🙂 ?, ...lach, da geht das nämlich,
                      das ist ein Android Problem.

                      TheDuke 1 Reply Last reply Reply Quote 0
                      • S
                        skokarl @Marty56 last edited by

                        @Marty56 sagte in Hardware für Anfänger:

                        Ich kann es mir fast nicht vorstellen, dass ein Raspi für ioBroker von der Performance zu langsam ist.
                        Was natürlich passieren kann, ist, dass das RAM zu klein wird.

                        Aber bevor ich mir sofort einen NUC kaufen würde, würde ich vielleicht noch ein paar Wochen warten und dann den Compact Mode ausprobieren.

                        Der sollte den RAM Bedarf signifikant reduzieren und damit den Kauf neuer Hardware überflüssig machen.

                        alles gut. Man muss im Leben auch mal was gönnen und spielen. 🙂

                        1 Reply Last reply Reply Quote 0
                        • TheDuke
                          TheDuke @skokarl last edited by

                          @skokarl sagte in Hardware für Anfänger:

                          Was ist das für eine Cam
                          rtsp Stream ?, h264 oder mpeg ? oder Bild ? jpeg ?

                          nein wir reden ja von Bildern (jpeg) pro Sekunde !!

                          @skokarl sagte in Hardware für Anfänger:

                          Du hast ein Iphone, ?, ...lach, da geht das nämlich,
                          das ist ein Android Problem.

                          Ich habe ein Samsung S9+ mit Android 🙂 und es funktioniert !

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

                            Moin,

                            mit welchem Tool kann ich mir die Auslastung der NUC anzeigen lassen ?
                            und wie installiere ich das auf der NUC ?

                            Danke

                            Homoran TheDuke 2 Replies Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @skokarl last edited by

                              @skokarl
                              Wie meinst du das genau?

                              Wenn du proxmox verwendest geht das mit dem proxmox Adapter, wenn du Linux nativ drauf hast, geht das "ganz normal".

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

                                @Homoran sagte in Hardware für Anfänger:

                                @skokarl
                                Wie meinst du das genau?

                                Wenn du proxmox verwendest geht das mit dem proxmox Adapter, wenn du Linux nativ drauf hast, geht das "ganz normal".

                                Sorry, nein, Promox hab ich nicht drauf, nur Debian Linux.
                                Und von Linux hab ich bisher wenig Ahnung.
                                Gibt es da einen Befehl ?

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

                                  @skokarl

                                  Mhhh, was möchtest du denn machen ? Einfach nur so mal auf dein System schauen ? Dann kann man das nützliche Tool top oder htop benutzen / installieren.

                                  Wenn du es in IoBroker haben willst dann ganz herkömmlich.

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

                                    @skokarl sagte in Hardware für Anfänger:

                                    Gibt es da einen Befehl ?

                                    Viele 😉

                                    kommt darauf an was genau du unter Auslastung verstehst

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

                                      @Homoran sagte in Hardware für Anfänger:

                                      kommt darauf an was genau du unter Auslastung verstehst

                                      Ich will CPU und RAM sehen, versuche mal das von Segway erwähnte htop

                                      Homoran crunchip Segway 3 Replies Last reply Reply Quote 0
                                      • Homoran
                                        Homoran Global Moderator Administrators @skokarl last edited by Homoran

                                        @skokarl sagte in Hardware für Anfänger:

                                        versuche mal das von Segway erwähnte htop

                                        Das auszuwerten wird nicht leicht!

                                        Ich habe damals den RPi2-Adapter modifiziert, einiges über den Parser und einiges per Blockly/Node-red ausgelesen

                                        NUC_load_03.png

                                        Habe das aber nie wirklich komplett fertiggestellt, daher sind einige Gauges nicht aktiv. Diese Ansicht habe ich einheitlich für alle meine Installationen (gehabt)

                                        1 Reply Last reply Reply Quote 0
                                        • crunchip
                                          crunchip Forum Testing Most Active @skokarl last edited by

                                          @skokarl vielleicht hilft dir sowas ja schon

                                          var pfad = "Systeminfos.ioBroker.Prozesse" + "."; // Pfad in dem die Datenpunkte angelegt werden

                                          // Datenpunktnamen:
                                          var idProzesse = pfad + 'ioBroker_Prozesse';
                                          var idMemAll = pfad + 'ioBroker_Speicher_gesamt';
                                          var idAnzProzesse = pfad + 'ioBroker_Anzahl_Prozesse';
                                          var idCpuAll = pfad + 'ioBroker_CPU_Gesamt';
                                          var idMemPercent = pfad + 'ioBroker_Speicher_prozentual';
                                          var idInstanzenEinmal = pfad + 'ioBroker_Instanzen_einmal_aktiv';

                                          // regelmässige Wiederholungen der Abfrage
                                          var cronStr = "*/2 * * * *";

                                          var abfrage = 'ps -A aux --sort -pmem | grep " [i]o.*"';

                                          // -----------------------------------------------------------------------------

                                          createState(idProzesse, "", {
                                          name: 'ioBroker laufende Prozesse Objekt',
                                          desc: 'ioBroker laufende Prozesse Objekt, Speicherverbrauch',
                                          type: 'string',
                                          unit: '',
                                          role: 'object'
                                          });

                                          createState(idMemAll, 0, {
                                          name: 'ioBroker Speicherverbrauch gesamt',
                                          desc: 'ioBroker Speicherverbrauch gesamt (RSS)',
                                          type: 'number',
                                          unit: 'MB',
                                          role: 'value'
                                          });

                                          createState(idAnzProzesse, 0, {
                                          name: 'ioBroker Anzahl Prozesse',
                                          desc: 'ioBroker Anzahl aktiver Prozesse',
                                          type: 'number',
                                          unit: '',
                                          role: 'value'
                                          });

                                          createState(idCpuAll, 0.0, {
                                          name: 'ioBroker CPU-Last gesamt',
                                          desc: 'ioBroker CPU-Last gesamt',
                                          type: 'number',
                                          unit: '%',
                                          role: 'value'
                                          });

                                          createState(idMemPercent, 0.0, {
                                          name: 'Speicherverbrauch prozentual',
                                          desc: 'Speicherverbrauch prozentual',
                                          type: 'number',
                                          unit: '%',
                                          role: 'value'
                                          });

                                          createState(idInstanzenEinmal, true, {
                                          name: 'keine Instanzen doppelt aktiv',
                                          desc: 'jeder aktive ioBroker Prozess ist nur einmal aktiv',
                                          type: 'boolean',
                                          unit: '',
                                          role: 'value'
                                          });

                                          // -----------------------------------------------------------------------------

                                          function doppelteProzesse(arr) {
                                          var mehrfacheProzesse = [];
                                          var anzProzesse = (arr.length);
                                          var anzProzessAktiv = 0;
                                          for (var i = 0; i < anzProzesse; i++) {
                                          if (mehrfacheProzesse.indexOf(arr[i].command) == -1) {
                                          anzProzessAktiv = zaehleProzesse(arr,arr[i].command);
                                          if (anzProzessAktiv > 1) {
                                          log("Prozess: " + arr[i].command+", mehrfach aktiv: " + anzProzessAktiv +" mal","warn");
                                          mehrfacheProzesse.push(arr[i].command);
                                          mehrfacheProzesse.push(anzProzessAktiv);
                                          }
                                          }
                                          }
                                          return mehrfacheProzesse;
                                          }

                                          function zaehleProzesse(arr,command) {
                                          var count = 0;
                                          var anzProzesse = (arr.length);
                                          for (var i = 0; i < anzProzesse; i++) {
                                          if(arr[i].command === command) {
                                          count++;
                                          }
                                          }
                                          return count;
                                          }

                                          function writeJson(json) {
                                          return JSON.stringify(json); // JSON in String umwandeln, damit das JSON in einem Datenpunkt geschrieben werden kann
                                          }

                                          function getMemAbsolut(json) {
                                          var anzProzesse = (json.length);
                                          var mem = 0;
                                          for (var i = 0; i < anzProzesse; i++) {
                                          mem = mem + json[i].rss;
                                          }
                                          return mem;
                                          }

                                          function getCpu(json) {
                                          var anzProzesse = (json.length);
                                          var cpu = 0.0;
                                          for (var i = 0; i < anzProzesse; i++) {
                                          cpu = cpu + json[i].cpu;
                                          }
                                          return cpu;
                                          }

                                          function getMem(json) {
                                          var anzProzesse = (json.length);
                                          var mem = 0.0;
                                          for (var i = 0; i < anzProzesse; i++) {
                                          mem = mem + json[i].mem;
                                          }
                                          return mem;
                                          }

                                          function createArrayJson(arr) {
                                          var jsonArr = [];
                                          var anzDP = 11; // Anzahl Datenreihen in der Abfrage
                                          var anzProzesse = (arr.length-1)/anzDP;

                                          for (var i = 0; i < anzProzesse; i++) {
                                              jsonArr.push({
                                                  command:    arr[10 + i*anzDP],              // ioBroker Prozess (COMMAND = Kommando, mit dem der Prozess gestartet wurde)
                                                  pid:        arr[ 1 + i*anzDP],              // Prozess ID
                                                  cpu:        parseFloat(arr[ 2 + i*anzDP]),  // aktueller CPU-Last in %
                                                  mem:        parseFloat(arr[ 3 + i*anzDP]),  // aktueller Verbrauch physikalischer Speicher %
                                                  vmem:       parseInt(arr[ 4 + i*anzDP]),    // 
                                                  rss:        parseInt(arr[ 5 + i*anzDP]),    // physikalische Speichernutzung
                                                  start:      arr[ 8 + i*anzDP],              // Startzeitpunkt des Prozesses
                                                  time:       arr[ 9 + i*anzDP]               // bisher verbrauchte CPU Zeit
                                              });
                                          }
                                          return jsonArr;
                                          

                                          }

                                          function abfrageConsole() {
                                          exec(abfrage, function(err, stdout, stderr) {
                                          if (err) {
                                          log(err,"error");
                                          return;
                                          }
                                          stdout = stdout.replace(/\n+/g, " "); // neue Zeile gegen Leerzeichen ersetzen
                                          stdout = stdout.split(/ +/g); // array erstellen, Leerzeichen als Trenner

                                              var anzProzesse = (stdout.length-1) / 11;
                                              
                                              //log(stdout);
                                              //log("Anzahl laufender ioBroker Prozesse: " + anzProzesse);
                                              
                                              var jsonArr = createArrayJson(stdout);
                                              var mem         = Math.floor(getMemAbsolut(jsonArr)/1024);
                                              var cpu         = Math.floor(getCpu(jsonArr)*10)/10;
                                              var memPercent  = Math.floor(getMem(jsonArr)*10)/10;
                                          
                                              var doppeltArr = doppelteProzesse(jsonArr);
                                              
                                              if(doppeltArr.length === 0) {
                                                  setState(idInstanzenEinmal,true);
                                              } else {
                                                  setState(idInstanzenEinmal,false);
                                              }
                                          
                                              setState(idProzesse     ,writeJson(jsonArr));
                                              setState(idMemAll       ,mem);
                                              setState(idAnzProzesse  ,anzProzesse);
                                              setState(idCpuAll       ,cpu);
                                              setState(idMemPercent   ,memPercent);
                                          });
                                          

                                          }

                                          function abfragen() {
                                          abfrageConsole();
                                          }

                                          // regelmässige Wiederholungen
                                          // -----------------------------------------------------------------------------
                                          schedule(cronStr, abfragen);

                                          // main
                                          // -----------------------------------------------------------------------------
                                          function main() {
                                          abfragen();
                                          }

                                          // Start Skript:
                                          // -----------------------------------------------------------------------------

                                          setTimeout(main, 500);

                                          Homoran 1 Reply Last reply Reply Quote 1
                                          • Segway
                                            Segway @skokarl last edited by

                                            @skokarl sagte in Hardware für Anfänger:

                                            Ich will CPU und RAM sehen

                                            Auf der Konsole oder im IoBroker ?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            718
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            15
                                            246
                                            25686
                                            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