Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Windows Steuerung

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Windows Steuerung

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

      Node.js installieren, die zwei Zusatzmodule, die "required" sind und das Serverscript starten.

      Für mehr Background zu node.js kann ich diesen Kurs empfehlen.

      https://www.udemy.com/derkomplettenodejskurs/

      Super Einstieg. Es wird auch gezeigt, wie man einen kleinen Web Server aufsetzt.

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

        Danke für den Link.

        Auch wenn mir das auf die schnelle bei meiner Umsetzung nicht weiter hilft.

        Edit: Habe es hinbekommen. Jetzt nur noch aus iobroker Abfragen, Auswerten und verwenden.

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

          So habe ich es gemacht für die Akku Überwachung des Tablets.

          Vermutlich muss Du das Script anpassen, aber vielleicht hilft es ein bisschen.

          //------------ Akkustand des Wandtabletts abfragen und Warnung ausgeben --------
          var http = require('http');
          function tablet_battery(next) {
                  var reqOptions = {
                      hostname: '192.168.10.30',
                      port:     3000,
                      path:     '/battery',
                      method:   'GET'
                  };
          
                  var req = http.request(reqOptions, function (res) {
                      res.on('data',function (result) {
                          next(false, Number(result));
                      });
                      res.on('end', function () {});
                  });
          
                  req.on('error', function (e) {
                      next(true, "");
                  });
                  req.end();
          } 
          var tablet_battery_warm = false;
          var tablet_unreach_warn = false;
          createState("Akku_Tablett",0);
          createState("Tablett_LOWBAT",false);
          createState('Tablett_unreach',false);
          schedule("*/15 * * * *", function(obj){
              tablet_battery(function(err, res){
                  if (err === false) {
                      setState('Tablett_unreach',false);
                      var batterylevel = res;
                      setState("Akku_Tablett",batterylevel*100);
                      if ((batterylevel < 0.5) && (tablet_battery_warm === false)){
                          setState("Tablett_LOWBAT",true);
                          tablet_battery_warm =true;
                          setState('Botschaft', 'Der Akku des Tabletts ist mit ' + batterylevel*100 + ' % kritisch');
                          setState("speechout2",JSON.stringify({text:'Akku des Tabletts ist mit ' + batterylevel*100 + ' % kritisch',device: "HausohneKZ"}));
                      } else {
                          if (batterylevel > 0.7) {
                              setState("Tablett_LOWBAT",false);
                              tablet_battery_warm =false;
                              //log('Akku des Tablets mit ' + batterylevel*100 + ' % ist gut');
                          }
                      }
                  } else {
                      if (getState('Tablett_unreach').val === false) {
                          log("Akkustandsmessung ist nicht erreichbar");
                          setState('Tablett_unreach',true);
                          setState('Botschaft', 'Akkustandsmessung des Tabletts ist nicht erreichbar');
                      }
          
                  }
              });
          
          });
          
          1 Reply Last reply Reply Quote 0
          • wendy2702
            wendy2702 last edited by

            Danke. Schaue ich mir an hatte es bis jetzt mit Blockly und dem Syteminfo Adapter gelöst.

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

              Hi,

              weiß zufällig jemand ob man über diesen Weg auch die Prozessor Temperatur abfragen kann?

              Danke und Gruß

              Bluefox 1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox @wendy2702 last edited by

                @wendy2702 Man kann Prozessor-Temperatur nicht mal mit Standard-Windows tools auslesen. Und damit auch nicht

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

                  Hm,

                  für Windows direkt auf dem Desktop gibt es z.B. dieses Tool: https://www.alcpu.com/CoreTemp/

                  Hatte gedacht das es eventuell auch ein NodeJS Package oder so gibt.

                  Mal googeln...

                  EDIT: Google --> https://stackoverflow.com/questions/47136213/node-js-read-cpu-temperature

                  werde ich mal testen

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

                    Hi,

                    habe mir das NodeJS Package "Systeminformation" mal auf einem WIN10 Rechner installiert und die NodeJS Datei versucht zu erweitern.

                    Sieht jetzt aktuell so aus:

                    /*
                    Examples
                    http://<ip>:3000/helligkeit/10  switches brightness of server display to 10%
                    http://<ip>:3000/battery returns a number containing the battery level 0..1
                    */
                    const brightness = require('brightness');
                    const batteryLevel = require('battery-level');
                    const si = require('systeminformation');
                    const http = require('http');
                    const port = 3000;
                    const requestHandler = (request, response) => {
                      console.log(request.url);
                      var  payload = request.url;
                      var arr = payload.split("/");
                      if (arr[1] == "battery") {
                        batteryLevel().then(level => {
                    		console.log(level);
                    		response.end(''+level);
                    	   });
                       }
                      if (arr[1] == "temp") {
                        si.cpuTemperature().then(data => {
                    		console.log(data);
                    		response.end(''+data);
                    	   });
                       }    
                      if (arr[1] == "brightness") {
                    	  var value = Number(arr[2])/100;
                    	  brightness.set(value).then(() => {
                    		console.log('Changed brightness to ' + value);
                    	   });
                    	   response.end('Changed brightness to ' + value);
                      }
                    }
                    
                    const server = http.createServer(requestHandler);
                    server.listen(port, (err) => {
                      if (err) {
                        return console.log('something bad happened', err)
                      }
                      console.log(`server is listening on ${port}`)
                    });
                    
                    

                    Wenn ich jetzt aus dem Browser das abschicke:

                    http://192.168.178.103:3000/temp
                    

                    Bekomme ich auf dem Windows 10 Rechner im NodeJS Fenster das zurück:

                    b53dd6b0-18c9-4d2f-9a8d-c8f83b201bda-image.png

                    Im Browser erhalte ich aber nur das als Antwort:

                    71111332-e799-4246-b4f6-d0303fb84105-image.png

                    Ob mir eventuell jemand helfen kann das richtig hinzubekommen?

                    Danke und Gruß

                    Mirko

                    Bluefox 1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox @wendy2702 last edited by

                      @wendy2702 said in Windows Steuerung:

                      si.cpuTemperature().then(data => { console.log(data); response.end(''+data); });

                      si.cpuTemperature().then(data => {
                      	console.log(data);
                      	response.end(JSON.stringify(data));
                      });
                      
                      wendy2702 1 Reply Last reply Reply Quote 1
                      • wendy2702
                        wendy2702 @Bluefox last edited by

                        @Bluefox sagte in Windows Steuerung:

                        si.cpuTemperature().then(data => { console.log(data); response.end(JSON.stringify(data));

                        Danke....!

                        Jetzt nur noch mit dem Systeminfo Adapter parsen damit ich die Werte verarbeiten kann und gut ist.

                        1 Reply Last reply Reply Quote 0
                        • Q
                          Qlink last edited by

                          Hi Leute,

                          ich finde den Download Link nicht für GetAdmin2.6.rar.

                          Kann mir jemand den richtigen Link posten ?

                          Besten Dank.

                          wendy2702 1 Reply Last reply Reply Quote 0
                          • wendy2702
                            wendy2702 @Qlink last edited by wendy2702

                            @Qlink steht im zweiten Beitrag: https://forum.iobroker.net/topic/1505/программа-управления-компьютером-getadmin

                            Ich nehme alles zurück. Auch wenn er da steht kann man in dem Tollen Forum nach dem Import scheinbar die Files nicht mehr runterladen 😞

                            Hoffentlich klappt das hochladen...

                            GetAdmin2.6.rar

                            1 Reply Last reply Reply Quote 2
                            • Q
                              Qlink last edited by

                              Danke für das file !
                              Ich hätte nun probiert GetAdmin auszuführen, bekomme aber gleich mal einen Socket Fehler:

                              getadmin.PNG

                              Habe ich es richtig verstanden, dass unter Server IP die Adresse des Windows PCs, auf dem GetAdmin läuft, den ich also steuern bzw. auslesen will, eingetragen werden muss und unter Simple API die Adresse meines Iobroker Servers ?

                              Firewalls hätte ich testweise deaktiviert, Simple API Adapter läuft in iobroker ...

                              Muss sonst noch etwas durchgeführt werden, damit GetAdmin läuft ?

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

                                Das kleine JavaScript auf deinem ioBroker hast du angelegt und gestartet?

                                1 Reply Last reply Reply Quote 0
                                • Q
                                  Qlink last edited by Qlink

                                  Nein, danke für den Hinweis.
                                  Das läuft nur leider auch nicht 😞
                                  Muss ich an dem Script etwas verändern/ergänzen, oder sollte das einfach per copy/paste funktionieren ?

                                  getadmin3.PNG

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

                                    Du hast da glaube ich Zeichen drin die da nicht hin gehören. In Zeile 23 das „!“ zum Beispiel.

                                    createState('GetAdmin.Host', '');
                                    createState('GetAdmin.Port', '');
                                    var request = require('request');
                                    
                                    on({id: 'javascript.0.GetAdmin.cmd', change: 'any'}, function (obj) {
                                        if(obj.newState.val !== '' || typeof obj.newState.val !== "undefined"){
                                            var host = getState('javascript.0.GetAdmin.Host').val;
                                            var port = getState('javascript.0.GetAdmin.Port').val;
                                            sendCmdGetAdmin(obj.newState.val,host,port);
                                            log('Send command to GetAdmin - cmd: '+ obj.newState.val);
                                        }else{log('GetAdmin. No command found.');}
                                    });
                                    /***************************************************************************************/
                                    function sendCmdGetAdmin(value, host, port){
                                        var options = {
                                            url: 'http://'+host+':'+port+'/?cmd='+value 
                                        };
                                        log('Send command to GetAdmin - ' +options.url);
                                        request(options, function (error, response, body) {
                                            log('Server response - ' + response.statusCode); 
                                            if (!error && response.statusCode == 200) {
                                    
                                            }
                                        });
                                    }
                                    
                                    Q 1 Reply Last reply Reply Quote 0
                                    • D
                                      dos1973 last edited by

                                      ich versuche mich auch derzeit daran.

                                      wenn ich im browser "http://192.168.10.39:8585/?key=reboot" eingebe
                                      kommt als Antwort

                                      Ok!reboot
                                      true
                                      

                                      aber passiert nichts?
                                      das Programm habe ich installiert, das script ebenfalls?

                                      wendy2702 1 Reply Last reply Reply Quote 0
                                      • wendy2702
                                        wendy2702 @dos1973 last edited by

                                        @dos1973

                                        GetAdmin gestartet ?

                                        Firewall?

                                        Screenshot der Einstellungen?

                                        Funktioniert nur der Reboot nicht ?

                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          dos1973 last edited by

                                          getadmin läuft,

                                          Bildschirmfoto 2019-02-17 um 17.36.37.png
                                          darin habe ich aber nichts konfiguriert, bis auf die IP und Ports.
                                          was da rein muss, verstehe ich noch nicht.

                                          Bildschirmfoto 2019-02-17 um 17.32.36.png
                                          die ipadresse der Win Server habe ich selbst reinschreiben müssen.

                                          Firewall habe ich zum test mal deaktiviert.

                                          der reboot war erstmal ein Test, was ich ebenfalls noch nicht verstehe - wie ich aus vis heraus den Befehl senden kann. Mit einem "basic-Link" klappt es nicht.

                                          1 Reply Last reply Reply Quote 0
                                          • D
                                            dos1973 last edited by

                                            achsooo, es fehlt der cmd Datenpunkt
                                            den pflege ich mit den befehlen aus vis heraus und dann macht er auch...☺

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

                                            Support us

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

                                            781
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            windows
                                            36
                                            178
                                            35879
                                            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