Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Script nur kurz / einmal ausführen?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Script nur kurz / einmal ausführen?

    This topic has been deleted. Only users with topic management privileges can see it.
    • BBTown
      BBTown @exmerci last edited by BBTown

      @exmerci
      vielleicht kannst Du kurz witere Details erklären, wieso, weshalb warum?
      Wenn Du bspw. einen Trigger hast auf den ein Script reagiert, dann wird das Script sowieso nur bei "Bedarf" ausgelöst. So ein Trigger kann zum Beispiel eine bestimmte Uhrzeit sein, die dann nur 1 x am Tag zutrifft

      1 Reply Last reply Reply Quote 0
      • Thomas Braun
        Thomas Braun Most Active @exmerci last edited by

        @exmerci
        Skripte laufen immer und werden 'getriggert'.

        1 Reply Last reply Reply Quote 0
        • E
          exmerci last edited by

          Gestartet werden soll das Script durch einen Button.
          Ich drücke auf demn Button, Script wird abgearbeitet, dann aber nicht mehr benötigt.
          Also ich drücke den Button Profil1 und das Script zu Profil1 wird gestartet.
          Jetzt habe ich noch ein Profil2. Ich drücke den Button Profil2 und das Script zu Profil 2 wird gestartet.
          Aber das Script von Profil1 läuft ja dann noch. Würden die beiden Scripte dann nicht dauern gegeneinander laufen?
          Ich verstehe die Vorgehensweise noch nicht ganz.
          Ich kenne das nur von Phyton oder aus der Bash. Man hat in Script. Das startet man und durch den Exit Code am Ende ist es fertig und wird beendet. Wenn man es wieder braucht startet man es wieder.
          Aber hier laufen die Scripte ja die ganze Zeit.

          BBTown 1 Reply Last reply Reply Quote 0
          • BBTown
            BBTown @exmerci last edited by

            @exmerci
            und was genau führt das Script aus, dass es nicht unmittelbar nach dem Start fertig durchlaufen ist Sondern ununterbrochen weiter aktionen ausführt?

            1 Reply Last reply Reply Quote 0
            • E
              exmerci last edited by

              Ich glaube ich bin vielleicht auf dem Holzweg.
              Wenn ich ein Script baue, das ich über einen Button starten will, läuft das auch, wenn es im Scripe Bereich, wo man es erstellt, auf Pause steht?

              Homoran 1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @exmerci last edited by Homoran

                @exmerci
                Bitte zum Grundverständnis:
                Laufen ist nicht Laufen 😉

                Die mehrfach gestellte Frage, was du genau machen willst, bzw. das Skriopt nach abarbeiten NICHT mehr machen soll bitte beantworten, denn:

                Das Skript ist bei js immer aktiv
                Ein Trigger löst es aus (in deinem Fall der Button)
                Das Skript wird abgearbeitet und wartet in einer ruhigen dunklen Ecke auf en nächsten Knopfdruck.

                Da muss nichts gestoppt werden, außer du hast eine unsaubere Schleife programmiert

                1 Reply Last reply Reply Quote 0
                • E
                  exmerci last edited by

                  @Homoran sagte in Script nur kurz / einmal ausführen?:

                  Die mehrfach gestellte Frage, was du genau machen willst, bzw. das Skriopt nach abarbeiten NICHT mehr machen soll bitte beantworten, denn

                  Wieso. Ich habe doch oben geschrieben was es machen soll.

                  ich baue mir gerade ein Blockly Script, was im heatingControl meine Temperatur Profile setzen soll.

                  Und was es nicht machen soll, ist wenn ich das Script für Profil2 sozusagen starte, die Werte von Script 2 wieder überschreiben, weil es ja noch läuft (nach meinem Vertändniss).
                  Ist wohl so, das ich das mit dem triggern nicht verstehe, da ich keine JS Erfahrung habe.
                  Wie triggere ich den das Script. Indem ich einfach einen Button in VIS baue und das Script dort eintrage?

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @exmerci last edited by

                    @exmerci sagte in Script nur kurz / einmal ausführen?:

                    Ist wohl so, das ich das mit dem triggern nicht verstehe, da ich keine JS Erfahrung habe.

                    Wahrscheinlich.

                    Der Trigger (eigene Gruppe von Blöcken) "startet" (korrekt= löst aus) das Skript.
                    Danach schläft es und macht nichts mehr, bis es wieder getriggert wird.
                    (Außer es läuft eine falsche Endlosschleife)

                    @exmerci sagte in Script nur kurz / einmal ausführen?:

                    Wie triggere ich den das Script.

                    Das ist unterschiedlich. In deinem Fall wohl über einen selbst angelegten Datenpunkt.
                    Je nach Wunsch wäre das ein boolscher Zustand, der durch das Button-Widget kurz auf true gesetzt wird oder ein Dantenpunkt vom Typ number in das du "1" oder "2" für das gewünschte Programm einträgst und darauf wird dann getriggert

                    1 Reply Last reply Reply Quote 0
                    • harrym
                      harrym last edited by

                      Eventuell auch ne Möglichkeit ? Den DP javascript.0.scriptEnabled vom Script auf true und verzögert wieder auf false setzen via toggle Button ?

                      Nur so ne Idee von mir ....

                      Homoran 1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @harrym last edited by

                        @harrym sagte in Script nur kurz / einmal ausführen?:

                        Nur so ne Idee von mir ....

                        soll man aber nicht machen 😉

                        harrym 1 Reply Last reply Reply Quote 0
                        • harrym
                          harrym @Homoran last edited by

                          @Homoran OK. Dann war's ne blöde Idee 😊

                          1 Reply Last reply Reply Quote 0
                          • E
                            exmerci last edited by

                            Ich hatte jetzt mal so etwas gebaut. Aber irgendwie geht das nicht.

                            1a411c3d-258c-4ce4-b705-76235f249f0a-image.png

                            Zugehörige Objekte:

                            525c096f-b634-478a-b690-3a5dce1bcacd-image.png

                            Homoran BBTown 2 Replies Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @exmerci last edited by

                              @exmerci sagte in Script nur kurz / einmal ausführen?:

                              Aber irgendwie geht das nicht.

                              Die Zahlen bitte als Mathematik-Block nehmen.
                              unwahr = falsch bitte las Logikblock
                              steuere durch aktualisiere-Block ersetzen

                              1 Reply Last reply Reply Quote 0
                              • BBTown
                                BBTown @exmerci last edited by BBTown

                                @exmerci
                                mache aus "normal" mal einen "button" (ausser der kann auch "false" sein)
                                Du darfst "string" (Textbausteine) auch nur für "string" Inhalte verwenden und nicht für Zahlen oder "true/false" Werte

                                1 Reply Last reply Reply Quote 0
                                • E
                                  exmerci last edited by

                                  Ok. Ich versuche es. Muss jetzt erst noch mal ein bisschen arbeiten.
                                  Melde mich wieder ob ich es hinbekommen habe oder nicht.

                                  1 Reply Last reply Reply Quote 0
                                  • E
                                    exmerci last edited by

                                    @Homoran sagte in Script nur kurz / einmal ausführen?:

                                    Die Zahlen bitte als Mathematik-Block nehmen.

                                    Wenn ich das mache, kann ich keine Zahlen wie 12:00 eingeben für die Uhrzeit.

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

                                      @exmerci sagte:

                                      keine Zahlen wie 12:00 eingeben für die Uhrzeit.

                                      12:00 ist keine Zahl, sondern ein String. Die target temperature sollte eine Zahl sein.

                                      1 Reply Last reply Reply Quote 0
                                      • E
                                        exmerci last edited by

                                        Obwohl es zu funktionieren scheint, wird folgender Fehler angezeigt.

                                        7d926f71-3f38-4d96-ba9b-98642fed1463-image.png

                                        Was habe ich noch falsch gemacht?

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

                                          @exmerci sagte in Script nur kurz / einmal ausführen?:

                                          Was habe ich noch falsch gemacht?

                                          Was steht in Zeile 11 des erzeugten Javascript-Codes (Button blockly/JS rechts oben) ?

                                          1 Reply Last reply Reply Quote 0
                                          • E
                                            exmerci last edited by Homoran

                                            setState("0_userdata.0.Normal"/*Normal*/, false, true);

                                            Homoran paul53 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            678
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly
                                            7
                                            38
                                            3028
                                            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