Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. [Skript] WindowsControl-Socket - Windows per Server steuern

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Skript] WindowsControl-Socket - Windows per Server steuern

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

      Hallo Zusammen, wie bereits an ein paar Stellen erwähnt habe ich eine eigene WindowsControl Version auf Basis von NodeJs entwickelt.
      Wieso? Eigentlich nur, weil ich ein Projekt entwickeln wollte.

      Es gibt bereits den Adapter Windows-Control der in Verbindung mit dem Tool GetAdmin in die gleiche Richtung geht (https://forum.iobroker.net/post/398985).

      Im Grunde steht das meiste auch möglichst einfach erklärt in der Github readme.

      Nur kurz:

      • Die Verbindung läuft über Socket.io
      • Es lassen sich Befehle und z.B. Benachrichtigungen an den Windows Client schicken
      • Auf dem Client wird anders als bei GetAdmin die Installation von NodeJs benötigt

      https://github.com/xCruziX/iobroker.WindowsControl-Socket


      0ac5ee86-fb7c-469f-8378-f901e4c2f71c-image.png

      Wenn ich die Zeit und Motivation dafür finde könnte ich mir auch mal anschauen wie sich daraus ein Adapter basteln lässt.

      @liv-in-sky

      liv-in-sky 2 Replies Last reply Reply Quote 2
      • liv-in-sky
        liv-in-sky @CruziX last edited by

        @cruzix

        danke für's benachrichtigen - werde es morgen mal ausprobieren - falls du an einen adapter denkst, solltest du evtl mit @Jey-Cee und @Mic reden - soweit ich die beiden verstanden habe, planten die etwas, haben aber ein zeitproblem

        1 Reply Last reply Reply Quote 0
        • liv-in-sky
          liv-in-sky @CruziX last edited by

          @cruzix

          wollte noch vorweg fragen:

          • kann man bat/cmd files mit parameter aufrufen - nutze powershell nicht
          • kann man andere exe- dateien mit parameter aufrufen

          nutze z.b turnoffmonitor.exe und habe sehr viele cmd scripte (batch-scripte) bei mir auf dem rechner laufen

          C 1 Reply Last reply Reply Quote 0
          • C
            CruziX @liv-in-sky last edited by

            @liv-in-sky bisher ginge das nur über den Umweg Powershell. Also ich bin mir recht sicher, dass man über Powershell auch eine Batchdatei mit Parametern öffnen kann oder eine exe.

            liv-in-sky 3 Replies Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @CruziX last edited by

              @cruzix

              habe mal mit powershell console getestet - turnoffmonitor.exe geht nicht - kann nicht aufgerufen werden
              aber der powershell befehl

              (Add-Type '[DllImport("user32.dll")]public static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);' -Name a -Pas)::SendMessage(-1,0x0112,0xF170,2)
              

              funktioniert

              1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @CruziX last edited by

                @cruzix

                habe es mal installiert:

                wenn ich den befehl

                (Add-Type '[DllImport("user32.dll")]public static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);' -Name a -Pas)::SendMessage(-1,0x0112,0xF170,2) 
                

                in den dp eingebe, wird der monitor abgeschalten - aber nach dem aktivieren bleibt ein powershell fenster stehen - im gif unten sieht man nicht, das der monitor aus geht - macht er aber - aber das fenster bleibt

                AApossis (41).gif

                die benachrichtigungen funktionieren - die habe ich allerdings ausgeschaltet - wollte keine werbung bekommen - muss noch herausfinden, wie ich das einstelle, damit nur die nachrichten von deinem script ankommen dürfen - weiß garnicht, ob das geht ?

                1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @CruziX last edited by

                  @cruzix

                  energy standby funktioniert auch - nutze ich meistens

                  rundll32.exe powrprof.dll,SetSuspendState hibernate
                  

                  batch dateien kann ich auch aufrufen

                  C:\BATCH-FILES\mute.cmd
                  

                  nur das powershell fenster bleibt immer stehen

                  ansonsten - tolle arbeit 👍

                  C 1 Reply Last reply Reply Quote 0
                  • C
                    CruziX @liv-in-sky last edited by

                    @liv-in-sky ich glaube man kann Powershell auch einen Window Hidden befehl mitgeben, aber soviel habe ich damit noch nicht gemacht 🙂

                    Welche Werbung meinst du denn bei den Benachrichtigungen?

                    liv-in-sky 3 Replies Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @CruziX last edited by

                      @cruzix ich weiß nicht, ob ich das noch richtig in erinnerung habe , aber nach irgendeinem update hatte ich plötzlich werbung als einblendungen - wsr auch in der presse - hat mich so genervt, dass ich die benachrichtigungen abgeschlaltet habe

                      muss mal "kucken" was da jetzt so kommt - habe es für deinen test wieder aktiviert

                      das auto-schliesen des ps-fensters wäre schon gut - ich muss auch jedesmal 2-mal auf das fenster schliessen "x" drücken, damit das fenster weg geht

                      das mitgeben des window hidden: muss ich das im dp mitgeben oder kannst du da was in den scripten machen ?

                      1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @CruziX last edited by

                        @cruzix

                        so wie der dp-aufbau aussieht, kann ich auch mehrere pc's fernsteuern ?

                        also einfach die ganze node-sache auf einen anderen pc installieren - selber port - und es sollte funktionieren ?

                        C 1 Reply Last reply Reply Quote 0
                        • C
                          CruziX @liv-in-sky last edited by

                          @liv-in-sky achso, also eine Windows Sache mit der Werbung 🙂
                          Also wenn ich nen Trick weiß wie man das Fenster gar nicht anzeigt, lässt sich das bestimmt unabhängig vom Userinput einbauen 🙂
                          Wenn ich mich recht erinnere hat man ja bei Batchdateien ein ähnliches Problem. Nach einer schnellen Recherche führt der Hidden Befehl dazu, dass sich das Fenster nach Ausführung schließt aber solange offen bleibt. Der kleine Perfektionist in mir fände es natürlich cool, wenn das garnicht erst angezeigt wird.

                          Ich schaue auch mal nach ob man aus Nodejs relativ easy batch commands ausführen kann, dann kann ich das wie eben Powershell noch einbauen.

                          Hat ne ganze Weile gedauert, aber hab das Serverscript extra so konzipiert, dass ich recht zügig neue Datenpunkte mit Funktionen einbauen kann.

                          liv-in-sky 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @CruziX last edited by liv-in-sky

                            @cruzix

                            ich habe es noch nicht zu ende gedacht - aber - wäre es möglich, eigene dp zu definieren, die dann in windows gesetzt werden und die im iobroker auftauchen.

                            habe einiges an daten z.b. temp, ob bestimmte apps laufen, die ich über curl vom windows pc an den iobroker sende. habe zwar keine idee, wie ich das auf der pc seite machen könnte - also das batch-files in dein clientscript schreibt

                            1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @CruziX last edited by

                              @cruzix

                              hier mal ein beispiel eines batchjobs, der einen dp bei iobroker abprüft - echt umständlich

                              Image 2.png

                              ich denke mal, dass sowas nicht so einfach umzusetzen ist. denn der batch müßte ja auf deinen webserver zugreifen. aber man könnte halt , da ja jetzt ein node server auf dem windows ist, die batch-scripts durch javascript ersetzen

                              macht das alles sinn ?

                              oder ginge es, über einen dp ein javascript auf dem pc zu aktivieren - und die antwort in einen dp zu schreiben - so dass man eigene "js-module" schreiben kann, die dann die antwort in einem dp übernimmt.

                              wie erwähnt - ich spinne nur mal so rum - mit deinem scripten kann ich schon die ganze windows-controll sache ersetzen, sowie auch den anderen rudimentären webserver, der momentan läuft - und das ist schon mal eine tolle sache

                              C 1 Reply Last reply Reply Quote 0
                              • C
                                CruziX @liv-in-sky last edited by

                                @liv-in-sky In der neusten Version ist das Powershell Fenster nicht zu sehen

                                liv-in-sky 1 Reply Last reply Reply Quote 1
                                • liv-in-sky
                                  liv-in-sky @CruziX last edited by

                                  @cruzix danke und funktioniert - fenster schliesst sofort wieder 🙂

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  749
                                  Online

                                  31.7k
                                  Users

                                  79.8k
                                  Topics

                                  1.3m
                                  Posts

                                  2
                                  15
                                  1092
                                  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