Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Exec Befehl im Multihost

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Exec Befehl im Multihost

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

      Es ist mir fast schon peinlich.....
      In Deinem Beispiel sind jetzt zwei Variablen, Wert und cmd.

      Ich habe versucht diese nachzustellen:

      alt text

      Der Datenpunkt ist auch jetzt in der Übersicht richtig eingeordnet, wenn ich jetzt hier den Wert ändere tut sich jedoch nichts....

      alt text

      var Wert, cmd;
      
      
      createState("Test_L1", function () {
      });
      // Test_L1
      on({id: "Object ID", change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if (Wert) {
          cmd = 'sudo /home/pi/raspberry-remote/./send 11110 5 1';
        } else {
          cmd = 'sudo /home/pi/raspberry-remote/./send 11110 5 0';
        }
        exec(cmd);
        console.log("exec: " + cmd);
      });
      

      Heute klappt irgendwie gar nichts, an einer anderen Baustelle (Conbee Stick) geht auch nichts....

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @bonafide last edited by paul53

        @bonafide Wert ist keine Variable, sondern eine Eigenschaft des Triggerdatenpunktes (unter Blöcke Trigger) ! Hat leider die gleiche Farbe ☹

        Weshalb befindet sich der Datenpunkt Test_L1 unter scriptEnabled ? createState() legt ihn direkt unter javascript.1 an.

        1 Reply Last reply Reply Quote 0
        • B
          bonafide last edited by

          Ok die Eigenschaft habe ich gefunden und getauscht.
          Damit das ganze übersichtlicher wird habe ich die alten "Test-Skripts" gelöscht und ein neues erstellt.
          Dieses wird wieder an dieser Stelle abgelegt:

          alt text

          Allerdings nicht im Ordner "Enabled"

          var cmd;
          
          
          createState("Neuer_Test", function () {
          });
          // Neuer_Test
          on({id: "Object ID", change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            if ((obj.state ? obj.state.val : "")) {
              cmd = 'sudo /home/pi/raspberry-remote/./send 11110 5 1';
            } else {
              cmd = 'sudo /home/pi/raspberry-remote/./send 11110 5 0';
            }
            exec(cmd);
            console.log("exec: " + cmd);
          });
          

          Wenn ich jetzt manuell den Wert ändere passiert nichts, auch kein Log-Eintrag.

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @bonafide last edited by paul53

            @bonafide sagte:

            on({id: "Object ID",

            Ja, es muss auch erst die Datenpunkt-ID "javascript.1.Neuer_Test" zugeordnet werden, damit der Trigger darauf reagieren kann.

            B 1 Reply Last reply Reply Quote 0
            • B
              bonafide @paul53 last edited by

              @paul53

              Ok das habe ich angepasst:
              alt text

              var cmd;
              
              
              createState("Neuer_Test", function () {
              });
              // Neuer_Test
              on({id: "javascript.1.Neuer_Test"/*Neuer_Test*/, change: "ne"}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                if ((obj.state ? obj.state.val : "")) {
                  cmd = 'sudo /home/pi/raspberry-remote/./send 11110 5 1';
                } else {
                  cmd = 'sudo /home/pi/raspberry-remote/./send 11110 5 0';
                }
                exec(cmd);
                console.log("exec: " + cmd);
              });
              

              Bin ich richtig damit das wenn ich in den "Objekten" hier den Wert ändere zum. ein Log-Eintrag entstehen sollte?

              alt text

              Vielen vielen Dank für Deine Geduld!

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @bonafide last edited by

                @bonafide sagte:

                Bin ich richtig damit das wenn ich in den "Objekten" hier den Wert ändere zum. ein Log-Eintrag entstehen sollte?

                Ja.

                B 1 Reply Last reply Reply Quote 0
                • B
                  bonafide @paul53 last edited by

                  @paul53

                  Es passiert nichts, der Log bleibt leer.....

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @bonafide last edited by

                    @bonafide sagte:

                    der Log bleibt leer

                    Kein Log-Eintrag im Reiter "Log" ?
                    Die Logs unter dem Skript sind immer leer, wenn man den Reiter wechselt.

                    1 Reply Last reply Reply Quote 0
                    • B
                      bonafide last edited by bonafide

                      BINGO!!!

                      Ich bin ein Idiot!!
                      Arbeite mit zwei Bildschirmen und habe jeweils auf einem IOBroker geöffnet.
                      Bei Änderungen entstand so kein Log-Eintag auf dem anderen.

                      Dein Tipp mit Sudo war dann auch absolut Richtig, das weggenommen und schon schalten die Stecker wieder!

                      Vielen vielen Dank für Deine Hilfe!!
                      Mach jetzt ein Bier auf Dich auf, und schreibe Skripte für meine 15 Steckdosen!

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @bonafide last edited by

                        @bonafide sagte:

                        schon schalten die Stecker

                        Bitte noch [gelöst] in der Überschrift eintragen.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        444
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        2
                        16
                        977
                        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