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

    • History/SQL/InfluxDB Major Updates (Stable)

    • Alexa2 BETA 3.14+ war Buggy->UNBEDINGT 3.17.4+ installieren!

    • Node.js 16.x neue Empfehlung für ioBroker

    Windows Steuerung

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

      Hallo,

      ich habe mal das GetAdmin herunter geladen.

      Auf einem Rechner mit Kaspersky konnte ich es entpacken und starten.

      Auf einem anderen Rechner mit Avira meckert das Antivirenprogramm und sagt, es hätte den BDS/Hupigon.Gen Tronjaner gefunden.

      Jetzt bin ich verunsichert, ob ich das überhaupt installieren soll.

      Kann jemand etwas dazu sagen?

      LG aus Münster

      Volker

      bahnuhr 1 Reply Last reply Reply Quote 0
      • SmarthomeMF
        SmarthomeMF last edited by

        Werde ich auch testen

        wo finde ich da die Doku

        Danke

        1 Reply Last reply Reply Quote 0
        • Jeeper.at
          Jeeper.at last edited by

          Avira ist meiner Meinung nach ein wenig übervorsichtig.

          1 Reply Last reply Reply Quote 0
          • K
            Karl00 last edited by

            @Bluefox:

            Ein russisch-sprechender Benutzer hat ein Programm geschrieben um mit der Hilfe von ioBroker(und alles anderem) Windows PC zu steuern. Das Programm sollte english auch unterstützen.

            Hier ist die Übersetzung:

            Es wird ein HTTP Server gestartet und in SystemTray angezeigt. Server akzeptiert RESTful GET Anfragen:

            z.B:

            http://192.168.1.10:8585/?cmd=foobar

            http://192.168.1.10:8585/?cmd=shutdown

            http://192.168.1.10:8585/?cmd=process

            http://192.168.1.10:8585/?chk=foobar2000.exe

            http://192.168.1.10:8585/?key=CTRL+ALT+DOWN

            Commands-Liste:

            cmd

            foobar (Um vorher definierte Applikation zu starten)

            process (Zeigt alle gestartete Prozesse am PC)

            shutdown

            poweroff

            reboot

            forceifhung

            logoff

            monitor1 (schaltet Monitor um wie WIN+P)

            monitor2

            chk:

            http://192.168.1.10:8585/?chk=FILE_NAME.exe (Sucht diese Applikation in Prozessen und gibt true zurück, falls gefunden)

            key:

            http://192.168.1.10:8585/?key=CTRL+ALT+X (Global HotKeys)

            http://192.168.1.10:8585/?key=VOLUP

            Liste von unterstützen Keykombinationen:

            ! CTRL
            ! RCTRL
            ! ALT
            ! RALT
            ! SHIFT
            ! RSHIFT
            ! WIN
            ! RWIN
            ! ESC
            ! ENT
            ! DEL
            ! INS
            ! VOLUP
            ! VOLDN
            ! MUTE
            ! NEXT
            ! PREV
            ! PLAY
            ! STOP
            ! BACK
            ! SPACE
            ! TAB
            ! NUMP
            ! NUMS
            ! NUMD
            ! NUM*
            ! NUMM
            ! NUML
            ! CAPS
            ! END
            ! HOME
            ! PGDN
            ! PGUP
            ! SCRL
            ! PRNTSCR
            ! SLEEP
            ! DOWN
            ! UP
            ! LEFT
            ! RIGHT
            ! F1
            ! F2
            ! F3
            ! F4
            ! F5
            ! F6
            ! F7
            ! F8
            ! F9
            ! F10
            ! F11
            ! F12
            ! F13
            ! F14
            ! F15
            ! F16
            ! F17
            ! F18
            ! F19
            ! F20
            ! F21
            ! F22
            ! F23
            ! F24
            ! NUM0
            ! NUM1
            ! NUM2
            ! NUM3
            ! NUM4
            ! NUM5
            ! NUM6
            ! NUM7
            ! NUM8
            ! NUM9
            ! 0
            ! 1
            ! 2
            ! 3
            ! 4
            ! 5
            ! 6
            ! 7
            ! 8
            ! 9
            ! A
            ! B
            ! C
            ! D
            ! E
            ! F
            ! G
            ! H
            ! I
            ! J
            ! K
            ! L
            ! M
            ! N
            ! O
            ! P
            ! Q
            ! R
            ! S
            ! T
            ! U
            ! V
            ! W
            ! X
            ! Y
            ! Z

            Skript für ioBroker um mit dem Programm zu kommunizieren.

            Falls in Program IP Adresse und Port zu setzen: IP SimpleAPI und PortSimpleAPI dann GetAdmin wird eigene Addresse und Port über die Variablen GetAdmin.Host und GetAdmin.Port mitteilen. Dafür muss SimpleAPI aktiviert sein.

            Skript für IOBROKER:

            ! ````
            createState('GetAdmin.cmd', '');
            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) {
            ! }
            });
            }

            
            Commands und Applikationen können im Programm konfiguriert werden
            
            Programm selbst kann man hier runterladen:
            
            [http://forum.iobroker.net/viewtopic.php?f=29&t=1783](http://forum.iobroker.net/viewtopic.php?f=29&t=1783)
            
            GetAdmin2.5.rar[http://www.shuttle-paris-airports.com/paris-shuttle](http://www.shuttle-paris-airports.com/paris-shuttle) `  
            

            Thank you for all link

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

              Oder einfach einen kleinen node.js server auf dem Windows Rechner laufen lassen und dann mit ein paar Codezeilen sein Rest API programmieren.

              Beispiel:

              /*
              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 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] == "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}`)
              });</ip></ip> 
              
              1 Reply Last reply Reply Quote 0
              • Jey Cee
                Jey Cee Developer last edited by

                @Marty56:

                Oder einfach einen kleinen node.js server auf dem Windows Rechner laufen lassen und dann mit ein paar Codezeilen sein Rest API programmieren.

                Beispiel: ` :mrgreen: Etwas ähnliches dachte ich mir auch, allerdings nutze ich das auf Ubuntu. Ich hab mir einen Service geschrieben der sich selbst registriert Automatisch gestartet wird und jetzt kommts, er erstellt selbstständig Objekte in ioBroker und meldet ob verfügbar.

                Der Service stellt mir in ioBroker ein Objekt zur Verfügung in den ich den Befehl schreibe und der wird dann ausgeführt. Dank root rechten und Linux kann man fast alles machen.

                Die Kommunikation läuft über socket.io Adapter.

                Angelegt ist es so das es man es erweitern kann für andere Betriebssysteme. Aktuell läuft die Testphase ob die Basis zuverlässig funktioniert.

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

                  @Marty56:

                  Oder einfach einen kleinen node.js server auf dem Windows Rechner laufen lassen und dann mit ein paar Codezeilen sein Rest API programmieren.

                  Beispiel:

                  /*
                  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 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] == "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}`)
                  });</ip></ip> 
                  ```` `  
                  

                  Hi,

                  sehe ich das richtig das man hiermit auch den Akkuzustand abfragen und an iobroker übertragen kann?

                  Wenn ja, wie genau muss ich das einrichten?

                  1 Reply Last reply Reply Quote 0
                  • 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
                                            • First post
                                              Last post

                                            Support us

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

                                            1.2k
                                            Online

                                            23.8k
                                            Users

                                            56.5k
                                            Topics

                                            838.9k
                                            Posts

                                            windows
                                            35
                                            176
                                            18449
                                            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-2021
                                            logo