Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. PC Booten / Herunterfahren und Befehle ausführen (v2)

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    PC Booten / Herunterfahren und Befehle ausführen (v2)

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

      hab die Module hinzugefügt.
      Wenn ich nun aber das Script ausführe bekomme ich

      javascript.0	2019-03-02 15:45:04.034	warn	at Object.<anonymous> (script.js.common.WoL:40:26)
      javascript.0	2019-03-02 15:45:04.034	warn	at updateState (script.js.common.WoL:36:9)
      javascript.0	2019-03-02 15:45:04.034	warn	State "pc.0.power" not found
      javascript.0	2019-03-02 15:45:04.034	warn	at Object.<anonymous> (script.js.common.WoL:40:26)
      javascript.0	2019-03-02 15:45:04.033	warn	at updateState (script.js.common.WoL:31:20)
      javascript.0	2019-03-02 15:45:04.032	warn	getState "pc.0.power" not found (3)
      

      Die Host IP ist die Ip meines PCs, Mac Adresse auch.

      In XAMPP habe ich die index nun in idex.php umgenannt. Hier werde ich jetzt auch im Browser weitergeleitet wenn ich auf Admin klicke. Muss ich hier noch irgendetwas einstellen?

      Wo liegt mein Fehler?

      Asgothian 1 Reply Last reply Reply Quote 0
      • Asgothian
        Asgothian Developer @Grace13 last edited by

        @Grace13
        Du musst noch ein objekt anlegen mit dem du den aktuellen Zustand des Rechners steuerst. Im Script ist dazu pc.0.power vorgesehen.

        Also - Objekt anlegen,Skript entsprechend anpassen das es dieses Objekt auch nutzt

        var obj_root  = 'pc.0';
        var obj_state = 'power';
        
        G 1 Reply Last reply Reply Quote 0
        • G
          Grace13 @Asgothian last edited by

          @Asgothian
          Also nochmal zusätzlich eins wo nur die zwei Zeilen drin stehn?

          Das dann als Objekt auswählen.
          Und das ist dann mein schalter?

          Das ausgewählte Objekt ist dann sozusagen der Pc der im hauptsächlichen Skript das oben steht angegeben wurde?

          Asgothian 1 Reply Last reply Reply Quote 0
          • Asgothian
            Asgothian Developer @Grace13 last edited by

            @Grace13
            Nein, die 2 Zeilen sollten in dem Script das du hast schon drin sein. Du musst sie ändern um das richtige Objekt anzusprechen. Ich würde das so machen:

            Im Objektbaum unter JavaScript.0 ein Objekt „rechnerstatus“ anlegen (Art Status, Typ Zahl)

            Dann musst du bei obj_root „javascript.0“ stehen und bei obj_state „rechnerstatus“.

            A.

            Asgothian 1 Reply Last reply Reply Quote 0
            • G
              Grace13 last edited by

              12:29:19.968	[warn]	javascript.0 at updateState (script.js.common.rechnerstatus:31:20)
              12:29:19.968	[warn]	javascript.0 at Object. (script.js.common.rechnerstatus:40:26)
              12:29:19.968	[warn]	javascript.0 at updateState (script.js.common.rechnerstatus:36:9)
              12:29:19.968	[warn]	javascript.0 at Object. (script.js.common.rechnerstatus:40:26)
              

              Irgdnwie bin ich nicht viel weiter gekommen.

              Ich hab die zwei Zeilen

              var obj_root  = 'pc.0';
              var obj_state = 'power';
              
              

              in

              var obj_root  = 'javascript.0;
              var obj_state = 'rechnerstatus';
              

              geändert..

              Damit keine Verständnissfehler aufkommen hab ich das gleiche nochmal als Skript in Common angelegt ( war mir nicht ersichtlich das direkt unter objektem - javascript.0 einzutragen)

              könnte der fehler vll bei XAMPP liegen?

              Wohl eher kaufm das Script kann ja nicht ausgeführt werden ?

              1 Reply Last reply Reply Quote 0
              • Asgothian
                Asgothian Developer @Asgothian last edited by

                @Asgothian sagte in PC Booten / Herunterfahren und Befehle ausführen:

                Im Objektbaum unter JavaScript.0 ein Objekt „rechnerstatus“ anlegen (Art Status, Typ Zahl)

                Das musst du auch machen - sonst geht es nicht.

                Asgothian 1 Reply Last reply Reply Quote 0
                • Asgothian
                  Asgothian Developer @Asgothian last edited by

                  @Asgothian

                  Füge doch bitte in das script den Befehl

                  createState(obj_root+'.'+obj_state, false)
                  

                  ein, direkt unter den Zeilen wo du obj_root und obj_state gesetzt hast.

                  Dann sollte Ruhe sein.

                  1 Reply Last reply Reply Quote 1
                  • G
                    Grace13 last edited by

                    Ich schon wieder..

                    Ich hab was du gesagt hast in zeile 10 eingefügt? Oder soll ichs doch bei zeile 3 einfügen?

                    Der PC macht aber kein muchs
                    Liegt das vll am Appache?

                    Wo könnte der Fehler noch liegen?

                    Asgothian 1 Reply Last reply Reply Quote 0
                    • Asgothian
                      Asgothian Developer @Grace13 last edited by

                      @Grace13
                      Bei Zeile 10 ist schon einmal richtig.

                      Was hast du denn getan um den pc zu einer Aktion zu bewegen ?

                      A.

                      1 Reply Last reply Reply Quote 0
                      • G
                        Grace13 last edited by Grace13

                        Also

                        Ich hab das erste Script mit Editor in die.php vom xampp eingefügt.

                        Das zwei im common eingefügt dann so geändert wie du gesagt hast.

                        Ein Gerät im Cloud Adapter eingefügt und das geschrieben Java Script mit dem Namen rechnerstatus ausgewählt

                        Dann bei alexa das übliche prozeder

                        Nun kann ich auf An klicken hier bekomm ich im Log dann den Eintrag "javascript.js.common.rechnerstatus: registered 1 subscription and 0 schedules"
                        Das wars.. Wenn ich auf aus klicke kommt wird das Script gestoppt.

                        Bei im Objektbaum und JavaScript bei Vis hab wird mir "rechnerstatus" auch angezeigt kann es aber aus irgend einem Grund nicht im Cloud Adapter einfüge bzw wird mir nicht angezeigt

                        Hab in nem anderen forum das hier
                        "EDIT:

                        Ich glaube es leigt daran, weil das Script nicht in javascript.0 liegt sondern in javascript.0->ScriptEnabled"

                        Gefunden mal sehn obs was bringt wenn ichs ändere

                        1 Reply Last reply Reply Quote 0
                        • Asgothian
                          Asgothian Developer last edited by Asgothian

                          Immer mit dr Ruhe - teste mal bitte folgendes:

                          • Script starten

                          • Rechner starten (den du steuern willst

                          • datenpunkt javascript.0.rechnerstatus im objektbaum auf true setzen.

                          • datenpunkt javascript.0.rechnerstatus auf false setzen

                          • ins log schauen - da müsste “powered off” auftauchen

                          • Rechner beobachten - er sollte jetzt herunter gefahren werden wenn das kein offenes Programm blockiert. Wenn der Rechner nach 5 Minuten noch läuft bitte herunter fahren

                          • wenn der Rechner aus ist den datenpunkt wieder auf wahr setzen - jetzt müsste der Rechner starten.

                          • wieder ins log schauen - da müsste “powered on” auftauchen.

                          A.

                          Nachtrag - nur zur Sicherheit: du hast im Kopf des scriptes die pi und mac Adresse deines zu steuernden Rechners eingetragen ?

                          var host_ip   = '192.168.X.X';
                          var mac_addr  = 'XX:XX:XX:XX:XX:XX';
                          
                          G 1 Reply Last reply Reply Quote 0
                          • G
                            Grace13 @Asgothian last edited by Grace13

                            @Asgothian
                            Ich probiers später mal aus

                            Aber dir schonmal vielen Dank für die Mühe!!

                            Mit rechner aus meinst du ganz normal herunterfahren?
                            Das Script dann am besten über nen anderen Computer starte?

                            Okay, guter Tipp werd drauf auchten das alle Programme zu sind.

                            Mit Script false und true einfach nur die hacken bei setzen, hab ich das richtig verstanden?

                            Asgothian 1 Reply Last reply Reply Quote 0
                            • Asgothian
                              Asgothian Developer @Grace13 last edited by

                              @Grace13 ja

                              1 Reply Last reply Reply Quote 0
                              • H
                                Hc-Yami last edited by

                                Hey,
                                generell eine coole Sache.
                                Aber ist das ganze nicht mit dem GetAdmin wesentlich einfacher und schlanker?

                                Grüße

                                S 1 Reply Last reply Reply Quote 0
                                • S
                                  schreda @Hc-Yami last edited by

                                  Ich habe nun das Script ein wenig angepasst.
                                  Es wird nun der State im Script erstellt und muss somit nicht mehr manuell erfolgen.
                                  Desweiteren wird ein Ping durchgeführt um den Online state des PC zu ermitteln. (Hierzu bitte ping zu den Modulen in der Instanz-Config hinzufügen)

                                  @Hc-Yami
                                  Mir hat das Russen-Tool leider nur Probleme beschert und ich wollte das Ganze gerne selber in die Hand nehmen.
                                  Ausserdem bin ich lieber vorsichtig mir solche Tools..

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  826
                                  Online

                                  31.7k
                                  Users

                                  79.8k
                                  Topics

                                  1.3m
                                  Posts

                                  5
                                  21
                                  2165
                                  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