Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [vorerst gelöst] Suche anders geartete Zeitverzögerung

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    247

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

[vorerst gelöst] Suche anders geartete Zeitverzögerung

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
16 Beiträge 5 Kommentatoren 839 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • docadamsD Offline
    docadamsD Offline
    docadams
    schrieb am zuletzt editiert von docadams
    #5

    Ich arbeite mich ja erst ein.
    Ich habe ein unter common ein leeres Javaskript erzeugt und dein Skript hineinkopiert.
    Ist das richtig so? Und wie handle ich das weiter?

    Und jetzt noch eine etwas anspruchsvollere Frage.
    Ist es möglich, die Timeoutdauer, hier also die 10000, irgendwie zentral, z.B. als Datenpunkt Typ Zahl, zu hinterlegen?
    Der Hintergrund ist folgender: Das Timeout benötige ich für die Dauer, in der meine Rolläden hoch und runter fahren. Zur Zeit kurbele ich noch, will aber im Frühjahr die Rollläden motorisieren. Ich weiß also noch nicht, wie lange konkret die Dauer sein wird. Ich möchte aber schon mal mit dem Programmieren beginnen.
    Wäre nur schön, wenn ich das dann einmalig für alle anpassen könnte.

    1 Antwort Letzte Antwort
    0
    • docadamsD Offline
      docadamsD Offline
      docadams
      schrieb am zuletzt editiert von docadams
      #6

      gelöscht.

      1 Antwort Letzte Antwort
      0
      • docadamsD Offline
        docadamsD Offline
        docadams
        schrieb am zuletzt editiert von
        #7

        Darf ich noch mal anfragen, wie ich das von dir vorgeschlagene Script nutzen kann? Ich habe solchen Code noch nie importiert.

        AsgothianA 1 Antwort Letzte Antwort
        0
        • docadamsD docadams

          Darf ich noch mal anfragen, wie ich das von dir vorgeschlagene Script nutzen kann? Ich habe solchen Code noch nie importiert.

          AsgothianA Offline
          AsgothianA Offline
          Asgothian
          Developer
          schrieb am zuletzt editiert von
          #8

          @docadams
          Darst du.. du gehst auf den Eintag <> Script links, dan bekommst du die Liste der bei Dir laufenden Scripte.
          Dann erzeugst du mit + ein neues Script - wichtig, ein Script vom Typ JS

          Dann kopierst du den Text der oben Steht in das rechte Fenster und speicherst den.. Damit hast das ganze dann erstmal drin.

          Jetzt noch ein paar Warnhinweise:
          da wo ich 'triggerobjekt ...' im Script stehen habe musst du die ID des Datenpunktes eintragen, mit dem du trigger willst.
          da wo 'relaisobject' steht muss die ID es Datenpunktes den du schalten willst stehen

          Wenn du die Dauer des Timeout ueber einen Datenpunkt steuern willst , dann musst du an Stelle der 10000
          getState('id des Datenpunktes mit der Zahl') schreiben.

          A.

          ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
          "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

          1 Antwort Letzte Antwort
          1
          • docadamsD Offline
            docadamsD Offline
            docadams
            schrieb am zuletzt editiert von docadams
            #9

            Vielen Dank.

            wenn ich das reinkopiere erscheint zwischen jeder Zeile eine Leerzeile, die ich dann manuell rauslösche. Ist das korrekt?
            Aber meine eigentliche Frage ist, wie binde ich das Skript nun ein? Ich mache den Rest in Blockly. Kann ich das Skript dann irgendwie als Befehl/Block in Blockly aufrufen?

            Dein letzter Hinweis greift eine künftige Frage voraus. Mein Ziel wird sein, eine variierende Zeit zwischen zwei zu steuernden Ereignissen zu programmieren. Mir ist es schon gelungen, mit Zufallszahl einen Datenpunkt "Zufall5-15" zu befüllen. Dann bräuchte ich dann nur noch statt der 1000

            getState('id des Datenpunktes Zufall5-15')

            anzusprechen. Das find ich gut.
            Allerdings muss diese Zufallszahl dann unbedingt in Milisekunden erscheinen, oder?

            AsgothianA 1 Antwort Letzte Antwort
            0
            • docadamsD docadams

              Vielen Dank.

              wenn ich das reinkopiere erscheint zwischen jeder Zeile eine Leerzeile, die ich dann manuell rauslösche. Ist das korrekt?
              Aber meine eigentliche Frage ist, wie binde ich das Skript nun ein? Ich mache den Rest in Blockly. Kann ich das Skript dann irgendwie als Befehl/Block in Blockly aufrufen?

              Dein letzter Hinweis greift eine künftige Frage voraus. Mein Ziel wird sein, eine variierende Zeit zwischen zwei zu steuernden Ereignissen zu programmieren. Mir ist es schon gelungen, mit Zufallszahl einen Datenpunkt "Zufall5-15" zu befüllen. Dann bräuchte ich dann nur noch statt der 1000

              getState('id des Datenpunktes Zufall5-15')

              anzusprechen. Das find ich gut.
              Allerdings muss diese Zufallszahl dann unbedingt in Milisekunden erscheinen, oder?

              AsgothianA Offline
              AsgothianA Offline
              Asgothian
              Developer
              schrieb am zuletzt editiert von
              #10

              @docadams
              Das script läuft automatisch, und triggers darauf das die beiden trigger Datenpunkte auf true gehen.
              Du kannst auch im script rechnen, in dem du getState()*1000 machst

              ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
              "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

              1 Antwort Letzte Antwort
              0
              • DutchmanD Offline
                DutchmanD Offline
                Dutchman
                Developer Most Active Administrators
                schrieb am zuletzt editiert von
                #11

                hier mal zum Verständnis das selbe in blockly, trigger löst timer aus worin ein object gesteuert wird.
                Wird der trigger nochmal aufgerufen startet der time neu (set time-out / reset-timeout)

                Schermafbeelding 2019-03-25 om 08.29.23.png

                1 Antwort Letzte Antwort
                0
                • docadamsD Offline
                  docadamsD Offline
                  docadams
                  schrieb am zuletzt editiert von docadams
                  #12

                  Das "Stopp Timeout" ist noch ein wichtiger Hinweis, danke.

                  Eigentlich prinzipiell gibt es doch keinen Unterschied zwischen dem Blockly und den JS-Code von Asgothian, oder?
                  Oder ist der Code flexibler?

                  Ich frage das deshalb, weil ich noch eine Lösung von folgendem Problem suche:

                  • mache etwas
                  • warte 5 ... 15 Minuten (zufällig jeden Tag anders)
                  • mache das Nächste

                  Geht das überhaupt und könnte man das auch in Blockly erzeugen, oder nur als JS?

                  AsgothianA 1 Antwort Letzte Antwort
                  0
                  • docadamsD docadams

                    Das "Stopp Timeout" ist noch ein wichtiger Hinweis, danke.

                    Eigentlich prinzipiell gibt es doch keinen Unterschied zwischen dem Blockly und den JS-Code von Asgothian, oder?
                    Oder ist der Code flexibler?

                    Ich frage das deshalb, weil ich noch eine Lösung von folgendem Problem suche:

                    • mache etwas
                    • warte 5 ... 15 Minuten (zufällig jeden Tag anders)
                    • mache das Nächste

                    Geht das überhaupt und könnte man das auch in Blockly erzeugen, oder nur als JS?

                    AsgothianA Offline
                    AsgothianA Offline
                    Asgothian
                    Developer
                    schrieb am zuletzt editiert von
                    #13

                    @docadams sagte in Suche anders geartete Zeitverzögerung:

                    Geht das überhaupt und könnte man das auch in Blockly erzeugen, oder nur als JS?

                    Prinzipiell geht fast alles auch mit blockly. Wenn du das gleiche prinzipiell immer wieder mit unterschiedlichen Datenpunkte n machen willst ist js flexibler, kürzer, aber auch komplexer zu lesen.

                    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                    1 Antwort Letzte Antwort
                    0
                    • docadamsD Offline
                      docadamsD Offline
                      docadams
                      schrieb am zuletzt editiert von
                      #14

                      Hallo,
                      endlich kann ich auch mal was Positives einbringen und nicht nur Fragen stellen :-)
                      Auf die Lösung hat mich "Svens ioBroker Tutorials" gebracht, hier etwa ab Minute 16.

                      Ich möchte ja etwas zufällig schalten wollen. Hier im Beispiel eine Lampe für die Dauer von 11 bis 33 Sekunden lang leuchten lassen.
                      Die Idee ist, eine Variable erzeugen, die einmal täglich mit dem Inhalt der zufälligen Leuchtdauer in Millisekunden befüllt wird.
                      Und im Timeout-Modul wird an Stelle der Dauer in Ziffern der Name der Variablen eingetragen.
                      Zufall.PNG
                      Das wars.

                      rantanplanR 1 Antwort Letzte Antwort
                      0
                      • docadamsD docadams

                        Hallo,
                        endlich kann ich auch mal was Positives einbringen und nicht nur Fragen stellen :-)
                        Auf die Lösung hat mich "Svens ioBroker Tutorials" gebracht, hier etwa ab Minute 16.

                        Ich möchte ja etwas zufällig schalten wollen. Hier im Beispiel eine Lampe für die Dauer von 11 bis 33 Sekunden lang leuchten lassen.
                        Die Idee ist, eine Variable erzeugen, die einmal täglich mit dem Inhalt der zufälligen Leuchtdauer in Millisekunden befüllt wird.
                        Und im Timeout-Modul wird an Stelle der Dauer in Ziffern der Name der Variablen eingetragen.
                        Zufall.PNG
                        Das wars.

                        rantanplanR Offline
                        rantanplanR Offline
                        rantanplan
                        schrieb am zuletzt editiert von
                        #15

                        @docadams Hallo

                        Funktioniert nur mit "ms" und wird offiziell nicht unterstützt. Kann also irgendwann nicht mehr funktionieren.
                        So mein letzter Stand.

                        Rantanplan

                        CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                        1 Antwort Letzte Antwort
                        0
                        • docadamsD Offline
                          docadamsD Offline
                          docadams
                          schrieb am zuletzt editiert von
                          #16

                          Naja, deshalb ja auch der Faktor 1000 oder wenn es um Minuten geht, halt Faktor 60000.
                          Wäre echt schade, wenn das mal wegver(schlimm)bessert werden sollte. Zumindest für mich "NichtJavaKenner" ist das eine elegante Lösung, die sogar ich verstehe ;-).
                          Mal sehen....

                          1 Antwort Letzte Antwort
                          0
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          254

                          Online

                          32.7k

                          Benutzer

                          82.5k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Anmelden

                          • Du hast noch kein Konto? Registrieren

                          • Anmelden oder registrieren, um zu suchen
                          • Erster Beitrag
                            Letzter Beitrag
                          0
                          • Home
                          • Aktuell
                          • Tags
                          • Ungelesen 0
                          • Kategorien
                          • Unreplied
                          • Beliebt
                          • GitHub
                          • Docu
                          • Hilfe