Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Skript will sich einfach nicht ausführen lassen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Skript will sich einfach nicht ausführen lassen

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

      Hallo, bin neu hier und versuche mich mit meinem Raspi ein bisschen in iobroker einzuarbeiten.

      iobroker läuft soweit super.

      Habe nun ein Skript im Javascript-Adapter angelegt mit folgendem Inhalt

      on('scriptEnabled.global.Funksteckdose1.status', function (obj) {
          if (!obj.state.ack && obj.state.val) {
            exec('/home/pi/raspberry-remote/send 11111 2 1')
          }
      });
      
      

      Das Feld "Status" hab ich zuvor unter dem Reiter Objekte angelegt.

      Wenn ich jetzt ein bool.button im VIS Editor erstelle und die Object ID auf scriptEnabled.global.Funksteckdose1.status setze und es teste, tut sich nichts.

      Was mach ich falsch?

      Ziel ist es per Button im VIS eine Funksteckdose anzuschalten

      Viele Grüße aus Hessen

      scooop

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

        Füg mal einen Debug-Log ein, um zu sehen wo es hängt:

        on('scriptEnabled.global.Funksteckdose1.status', function (obj) {
            log("A: ack = " + obj.state.ack + "; val = " + obj.state.val);
            if (!obj.state.ack && obj.state.val) {
              log("B");
              exec('/home/pi/raspberry-remote/send 11111 2 1');
              log("C");
            }
        });
        
        1 Reply Last reply Reply Quote 0
        • P
          pix last edited by

          Hallo, schnell von unterwegs:

          Du solltest Objekte nicht unter scriptEnabled anlegen sondern direkt unter zB 'javascript.0'.

          Pix

          1 Reply Last reply Reply Quote 0
          • S
            scooop last edited by

            Hallo,

            cool, danke für die schnelle Hilfe. Werde mal beide Tipps angehen 🙂

            gruß scooop

            1 Reply Last reply Reply Quote 0
            • S
              scooop last edited by

              Suche jetzt seit einer dreiviertel Stunde herauszufinden, wie man skripte verschiebt (z.B. javascript.0.scriptEnabled.global.skript1 nach javascript.0.skript1).

              Und wie tue ich das genrell und ohne Abhängigkeiten zu verletzen?

              gruß scooop

              EDIT: und wie lege ich in zukunft die skripte immer in javascript.0 an und nicht mehr im enabled Ordner, wo sie automatisch hinterlegt werden?

              1 Reply Last reply Reply Quote 0
              • Dutchman
                Dutchman Developer Most Active Administrators last edited by

                @scooop:

                Suche jetzt seit einer dreiviertel Stunde herauszufinden, wie man skripte verschiebt (z.B. javascript.0.scriptEnabled.global.skript1 nach javascript.0.skript1).

                Und wie tue ich das genrell und ohne Abhängigkeiten zu verletzen?

                gruß scooop

                EDIT: und wie lege ich in zukunft die skripte immer in javascript.0 an und nicht mehr im enabled Ordner, wo sie automatisch hinterlegt werden? `

                scripte sind immer in enabled ordner, wen ich es richtig verstehe war de kommentar "objecte" sollten im javascript.o und nicht "enabled" erstellt werden

                Greetz,

                Dutch

                1 Reply Last reply Reply Quote 0
                • P
                  pix last edited by

                  Korrekt. Nicht die Skripte verschieben, sondern im javascript.0. die Objekte anlegen. Wenn du die Objekte per Skript mit createState() anlegst, wird das automatisch so gemacht.

                  Pix

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

                    @scooop:

                    Suche jetzt seit einer dreiviertel Stunde herauszufinden, wie man skripte verschiebt (z.B. javascript.0.scriptEnabled.global.skript1 nach javascript.0.skript1). `

                    javascript.0.scriptEnabled.global.skript1 ist der State, der ioBroker sagt, ob "GLOBAL.skript1" aktiv ist oder nicht. Da brauchst du nichts machen.

                    Es geht um deinen überwachten State, der nicht unter scriptEnabled, sondern unter javascript.0 abgelegt sein sollte.

                    Eigentlich solltest du scriptEnabled auch gar nicht sehen, außer du hast den Expertenmodus an.

                    1 Reply Last reply Reply Quote 0
                    • S
                      scooop last edited by

                      Danke für die vielen Antworten, hat jetzt geklappt 🙂 Habe jetzt ne mobile UI über die ich per Button meine Funksteckdose an und ausschalten kann.

                      gruß scooop

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      641
                      Online

                      31.7k
                      Users

                      79.8k
                      Topics

                      1.3m
                      Posts

                      4
                      9
                      1407
                      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