Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Gelöst] Monitor per Scriptbefehl aufwecken. (Linux / Raspian)

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

[Gelöst] Monitor per Scriptbefehl aufwecken. (Linux / Raspian)

Scheduled Pinned Locked Moved Skripten / Logik
12 Posts 3 Posters 1.6k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Offline
    T Offline
    ThomasD
    wrote on last edited by
    #2

    Hallo,

    Eine Möglichkeit die ich gefunden habe ist das "xdotool".

    Damit eine Mausbewegung gesendet und der Monitor geht an.

    Schöne Grüße

    ThomasD

    1 Reply Last reply
    0
    • T Offline
      T Offline
      ThomasD
      wrote on last edited by
      #3

      Hallo,

      das commando an sich funktioniert, nur hab ich ein Problem das Kommando nicht ausführt.

      Als Test habe ich dann das Beispiel aus der Javascipt Beschreibung genommen und erhalte auch dort einen Fehler:
      ` > javascript.0 2017-12-01 22:45:00.111 error at Object. (script.js.STH_Test:2:1)

      javascript.0 2017-12-01 22:45:00.111 error Error in callback: ReferenceError: sendToHost is not defined `

      Hier das Script:

      schedule("* * * * *", function (obj) {
      sendToHost('iobroker3', cmdExec, 'ls /', function (res) {
          console.log('List of files: ' + res.data);
      });
      });
      
      

      Wo ran kann das liegen?

      IOBroker und System hab ich schon mal auf den neusten Update Stand gebracht.

      Schöne Grüße

      ThomasD

      1 Reply Last reply
      0
      • T Offline
        T Offline
        ThomasD
        wrote on last edited by
        #4

        Hallo,

        und noch ein Update, der Verwarungsort latest ist auch nicht ganz aktuell und ich hab den Javascript Adapter direkt über Git installiert, nun mit der Version 3.5.0 gibt es die Funktion sendToHost, aber leider nicht das "cmdExec", Fehlermeldung:
        ` > javascript.0 2017-12-01 23:48:00.131 error at Object. (script.js.STH_Test:2:25)

        javascript.0 2017-12-01 23:48:00.130 error Error in callback: ReferenceError: cmdExec is not defined `

        Wenn ich Git nach cmdExec durchsuche finde ich auch nichts zu cmdExec gefunden ausser die Beschreibung das cmdExec Funktionieren soll.

        Schöne Grüße

        ThomasD

        1 Reply Last reply
        0
        • T Offline
          T Offline
          ThomasD
          wrote on last edited by
          #5

          Hallo,

          im Moment bringt es wohl nichts hier weiter zu machen, ist ein Fehler beseitigt kommt ein anderer oder neuer Fehler hinzu.

          In der Javescript instanz gibt es probleme mit der Instanz Zuordnung, zum einen geht die Liste mit den Instanzen extrem schnell wieder zu und hat man eine Instanz ausgewählt, springt sie beim speichern des Scriptes wieder zurück auf die vorige.

          Schöne Grüße

          ThomasD

          1 Reply Last reply
          0
          • Jey CeeJ Online
            Jey CeeJ Online
            Jey Cee
            Developer
            wrote on last edited by
            #6

            Du hast nirgendwo geschrieben ob iobroker auf dem pi läuft oder wo anders.

            Und ohne die information kann man ein ganzes Buch für eine Lösung verfassen und trotzdem ist nicht die Lösung dabei die du brauchst.

            Das sendToHost nur funktioniert wenn du eine Multihost Umgebung hast ist dir klar?

            Und setObject hast du in den Einstellungen deiner JS Instanz aktiviert?

            Möglicherweise ist die sendToHost Implementierung noch nicht fertiggestellt.

            Gesendet von Unterwegs

            Persönlicher Support
            Spenden -> paypal.me/J3YC33

            1 Reply Last reply
            0
            • T Offline
              T Offline
              ThomasD
              wrote on last edited by
              #7

              Hallo,

              ja, es handelt sich um einen Multihost.

              SetObjekt ist Aktiviert, ebendso SendToHost und Exec.

              Schöne Grüße

              ThomasD

              1 Reply Last reply
              0
              • Jey CeeJ Online
                Jey CeeJ Online
                Jey Cee
                Developer
                wrote on last edited by
                #8

                Wenn das so nicht geht könntest du noch versuchen eine JS instanz auf dem slave zu installieren und mit exec deinen Aufruf machen.

                Gesendet von Unterwegs

                Persönlicher Support
                Spenden -> paypal.me/J3YC33

                1 Reply Last reply
                0
                • DutchmanD Offline
                  DutchmanD Offline
                  Dutchman
                  Developer Most Active Administrators
                  wrote on last edited by
                  #9

                  @Jey Cee:

                  Wenn das so nicht geht könntest du noch versuchen eine JS instanz auf dem slave zu installieren und mit exec deinen Aufruf machen.

                  Gesendet von Unterwegs `

                  So würde ich es auch machen, bei mir läufts genau auf diese Art und Weise seit Monaten ohne Probleme

                  –-----------------------

                  Send from mobile device

                  1 Reply Last reply
                  0
                  • T Offline
                    T Offline
                    ThomasD
                    wrote on last edited by
                    #10

                    Hallo,

                    so wollte ich es dann auch machen, aber irgend wie bekomme ich den exec() string nicht hin, egal wie ich es drehe und wende, schicke ich den Befehl vom IOBroker aus funktioniert es nicht.

                    Der String sieht so aus:

                    export DISPLAY=":0"
                    xdotool mousemove 10 20
                    
                    

                    Versuch 1, direkt exec('xdotool mousemove 10 20') kein Erfolg.

                    Um Leerzeichen und Sonderzeichen zu umgehen hab ich das dann in eine Batchdatei gepackt.

                    Über SSH eingelogt und ausgeführt funktioniert, mit exec('/opt/iobroker/wakeup.sh') kein Erfolg.

                    Zur Sicherheit noch einen Befehl eingefügt der mir zeigt das die Datei ausgeführt wird.

                    Dann per Remote Befehl mit ssh pi@rechnername 'xdotool mousemove 10 20' oder ssh pi@rechnername '/opt/iobroker/wakeup.sh', direkt funktioniert es mit exec('ssh pi@rechnername '/opt/iobroker/wakeup.sh'') oder exec('ssh pi@rechnername '/opt/iobroker/wakeup.sh'') funktioniert wieder nicht. Und zur Sicherheit das es nicht an einen fehlenden Consolenfenster liegt das ganze zum Test als cron Job angelegt, funktioniert auch.

                    Schöne Grüße

                    ThomasD

                    1 Reply Last reply
                    0
                    • DutchmanD Offline
                      DutchmanD Offline
                      Dutchman
                      Developer Most Active Administrators
                      wrote on last edited by
                      #11

                      Poste Mal dein komplettes Script

                      –-----------------------

                      Send from mobile device

                      1 Reply Last reply
                      0
                      • T Offline
                        T Offline
                        ThomasD
                        wrote on last edited by
                        #12

                        Hallo,

                        so, ich denke ich hab es.

                        Hier aber trotzdem nach meine Skripte:

                        Javascript Adapter auf dem slave wo auch der Webbrowser läuft:

                        schedule("* * * * *", function (obj) {
                        var wakeup = '/opt/iobroker/wakeup.sh';
                        exec(wakeup);
                        });
                        
                        

                        Da ioBroker als root läuft, braucht man den ersten Schritt nicht:
                        > setfacl -m u:the-user:r ~/.Xauthority

                        Hier dann das shell Skript:

                        #!/bin/bash
                        DISPLAY=:0 XAUTHORITY=~pi/.Xauthority xdotool mousemove 10 20
                        
                        

                        Danke und Schöne Grüße

                        ThomasD

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        249

                        Online

                        32.4k

                        Users

                        81.4k

                        Topics

                        1.3m

                        Posts
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        ioBroker Community 2014-2025
                        logo
                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Recent
                        • Tags
                        • Unread 0
                        • Categories
                        • Unreplied
                        • Popular
                        • GitHub
                        • Docu
                        • Hilfe