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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. true Abfrage alle 2 Sek.

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

true Abfrage alle 2 Sek.

Geplant Angeheftet Gesperrt Verschoben Blockly
87 Beiträge 7 Kommentatoren 7.2k 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.
  • AsgothianA Asgothian

    @Aphofis
    Die Frage kann ich dir nicht beantworten. Dafür kenne ich mich mit dem was du steuern willst einfach nicht genug aus. Prinzipiell können 2 Scripte die gleichen Objekte ansteuern, allerdings ist dann (in diesem Beispiel) nicht sichergestellt das die Pumpe wirklich nur 300 s läuft, diese Zeitabfrage gilt nur für die Zeit die durch den Schwimmer eingeschaltet ist.

    A.

    AphofisA Offline
    AphofisA Offline
    Aphofis
    schrieb am zuletzt editiert von
    #34

    @Asgothian
    Das macht dann auch keinen Sinn beides laufen zu lassen.
    Dann lasse ich nur das JavaScript laufen und werde beobachten und testen. Dann melde ich mich wie es läuft.
    Vielen Dank

    1 Antwort Letzte Antwort
    0
    • AphofisA Offline
      AphofisA Offline
      Aphofis
      schrieb am zuletzt editiert von
      #35

      Also was ich sagen kann Magnetvetil reagiert auf den Schwimmer und Osmose wird fleißig weter gezählt.
      Das blockly zum steuern vom magnetventil hab ich abgeschaltet.
      Kann man eine telegram nachricht einbauen wenn die 300 sek bzw 10 liter am tag erreicht sind !?
      denn davon ist auch abhängig wann ich den Salzgehalt im Becken angleichen muss.

      AsgothianA 1 Antwort Letzte Antwort
      0
      • AphofisA Aphofis

        Also was ich sagen kann Magnetvetil reagiert auf den Schwimmer und Osmose wird fleißig weter gezählt.
        Das blockly zum steuern vom magnetventil hab ich abgeschaltet.
        Kann man eine telegram nachricht einbauen wenn die 300 sek bzw 10 liter am tag erreicht sind !?
        denn davon ist auch abhängig wann ich den Salzgehalt im Becken angleichen muss.

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

        @Aphofis
        Das einfachste ist das du an der Stelle wo die Pumpe abgestellt wird weil die Zeit abgelaufen ist die Meldung mit einbaust.

        Du kannst auch im Schedule wo die Restzeit zurück gesetzt wird eine Nachricht absetzen wieviele Minuten die Pumpe am Vortag gelaufen ist (wenn Restzeit < 0 -> 5 Minuten, ansonsten (300 - Restzeit) / 60 Minuten). Wenn du dann den Zeitpunkt von Mitternacht auf sagen wir 10 Uhr Abends oder 8 Uhr morgens setzt, dann stoert das ggf. auch nicht so beim Schlafen 🙂

        A.

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

        AphofisA 1 Antwort Letzte Antwort
        0
        • AsgothianA Asgothian

          @Aphofis
          Das einfachste ist das du an der Stelle wo die Pumpe abgestellt wird weil die Zeit abgelaufen ist die Meldung mit einbaust.

          Du kannst auch im Schedule wo die Restzeit zurück gesetzt wird eine Nachricht absetzen wieviele Minuten die Pumpe am Vortag gelaufen ist (wenn Restzeit < 0 -> 5 Minuten, ansonsten (300 - Restzeit) / 60 Minuten). Wenn du dann den Zeitpunkt von Mitternacht auf sagen wir 10 Uhr Abends oder 8 Uhr morgens setzt, dann stoert das ggf. auch nicht so beim Schlafen 🙂

          A.

          AphofisA Offline
          AphofisA Offline
          Aphofis
          schrieb am zuletzt editiert von
          #37

          @Asgothian
          Das

          JavaScript
          

          umbauen in Blockly ist keine Option?

          AsgothianA 1 Antwort Letzte Antwort
          0
          • AphofisA Aphofis

            @Asgothian
            Das

            JavaScript
            

            umbauen in Blockly ist keine Option?

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

            @Aphofis
            Das was ich dir geschrieben habe leider nicht - du musst im Blockly die Zeit fuer den Timeout fest vorgeben und kannst keine Variable dafür benutzen - zumindest konnte ich das nicht.

            Wenn diese Funktionalität existiert, dann schon.

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

            AphofisA 2 Antworten Letzte Antwort
            0
            • AsgothianA Asgothian

              @Aphofis
              Das was ich dir geschrieben habe leider nicht - du musst im Blockly die Zeit fuer den Timeout fest vorgeben und kannst keine Variable dafür benutzen - zumindest konnte ich das nicht.

              Wenn diese Funktionalität existiert, dann schon.

              AphofisA Offline
              AphofisA Offline
              Aphofis
              schrieb am zuletzt editiert von
              #39

              @Asgothian
              Kann ich jemanden im Forum Fragen, der deinen Javascript Code vllt umhechseln kann ins Blockly!?

              B 1 Antwort Letzte Antwort
              0
              • AsgothianA Asgothian

                @Aphofis
                Das was ich dir geschrieben habe leider nicht - du musst im Blockly die Zeit fuer den Timeout fest vorgeben und kannst keine Variable dafür benutzen - zumindest konnte ich das nicht.

                Wenn diese Funktionalität existiert, dann schon.

                AphofisA Offline
                AphofisA Offline
                Aphofis
                schrieb am zuletzt editiert von
                #40

                @Asgothian
                Wenn das script per steuerung zb in der fütterungspause deaktiviert wir, bleibt der timer mit der gemessenen zahl bestehen? und läuft nach einschalten des scripts normal weiter ???

                AsgothianA 1 Antwort Letzte Antwort
                0
                • AphofisA Aphofis

                  @Asgothian
                  Wenn das script per steuerung zb in der fütterungspause deaktiviert wir, bleibt der timer mit der gemessenen zahl bestehen? und läuft nach einschalten des scripts normal weiter ???

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

                  @Aphofis sagte in true Abfrage alle 2 Sek.:

                  @Asgothian
                  Wenn das script per steuerung zb in der fütterungspause deaktiviert wir, bleibt der timer mit der gemessenen zahl bestehen? und läuft nach einschalten des scripts normal weiter ???

                  Wenn die Pumpe gerade eingeschaltet ist, und du dann das Script beendest dann wird die Pumpe nicht abgeschaltet, und bei einem Neustart wird die Variable neu mit 300 initialisiert.

                  Um das zu verhindern macht es meiner Meinung nach sinn einen Datenpunkt "Futtermodus" zu erstellen, und im Script einfach nur das Aktivieren der Pumpe zu unterbinden wenn der Futtermodus aktiviert wird, und nach Ende des Futtermodus wieder zum normalen Ablauf zurück zu kehren.

                  A.

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

                  AphofisA 1 Antwort Letzte Antwort
                  0
                  • AphofisA Aphofis

                    @Asgothian
                    Kann ich jemanden im Forum Fragen, der deinen Javascript Code vllt umhechseln kann ins Blockly!?

                    B Offline
                    B Offline
                    Brati
                    schrieb am zuletzt editiert von
                    #42

                    @Aphofis

                    Du kannst dir doch dein Telegram Blockly in JS anzeigen lassen und dann in das Script kopieren.

                    CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

                    1 Antwort Letzte Antwort
                    0
                    • AsgothianA Asgothian

                      @Aphofis sagte in true Abfrage alle 2 Sek.:

                      @Asgothian
                      Wenn das script per steuerung zb in der fütterungspause deaktiviert wir, bleibt der timer mit der gemessenen zahl bestehen? und läuft nach einschalten des scripts normal weiter ???

                      Wenn die Pumpe gerade eingeschaltet ist, und du dann das Script beendest dann wird die Pumpe nicht abgeschaltet, und bei einem Neustart wird die Variable neu mit 300 initialisiert.

                      Um das zu verhindern macht es meiner Meinung nach sinn einen Datenpunkt "Futtermodus" zu erstellen, und im Script einfach nur das Aktivieren der Pumpe zu unterbinden wenn der Futtermodus aktiviert wird, und nach Ende des Futtermodus wieder zum normalen Ablauf zurück zu kehren.

                      A.

                      AphofisA Offline
                      AphofisA Offline
                      Aphofis
                      schrieb am zuletzt editiert von
                      #43

                      @Asgothian
                      Ich versuche das mir einer das JavaScript umbaut in Blockly dann kann ich damit mehr machen.
                      Kann leider kein Javascript programmieren.
                      Javascript Applets in Webseiten einbinden ist schon die Grenze.
                      ich kann den Code halbwechs verstehen aber Programmieren äh nein. Leider leider nicht.

                      AsgothianA 2 Antworten Letzte Antwort
                      0
                      • AphofisA Aphofis

                        @Asgothian
                        Ich versuche das mir einer das JavaScript umbaut in Blockly dann kann ich damit mehr machen.
                        Kann leider kein Javascript programmieren.
                        Javascript Applets in Webseiten einbinden ist schon die Grenze.
                        ich kann den Code halbwechs verstehen aber Programmieren äh nein. Leider leider nicht.

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

                        @Aphofis gib mir mal eine halbe stunde, dann kann ich dir den Blockly schicken. Der wird nicht so elegant werden, sollte aber trotzdem gehen.

                        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
                        • AsgothianA Asgothian

                          @Aphofis
                          Nicht ohne weiteres, aber es gibt da einen einfachen Trick: Bau dir die Aktionen die du haben willst als Blockly zusammen, und lass dir dann den JS code anzeigen. Den kannst du dann in das JS Script kopieren. Die relevanten Stellen hab ich im Script markiert

                          A.

                          var Restzeit, timeout, Nachricht, StartTime;
                          var Pump = "Pump Object ID"
                          var Schwimmer = 'Schwimmer Object ID'
                          
                          Restzeit = 300;
                          StartTime = -1;
                          function PumpOn()
                           {
                               if (timeout) { clearTimeout(timeout); timeout = null;};
                               timeout = setTimeout(function () {
                                  StartTime = -1;
                                 Restzeit = 0;
                                  setState(Pump, false);
                          // Hier wird die Pumpe abgeschaltet wenn die Zeit abgelaufen ist.
                              }, Restzeit * 1000);
                          // Hier wird die Pumpe eingeschaltet.
                              setState(Pump, true);
                              StartTime = (new Date().getSeconds())
                          }
                          
                          on({id: Schwimmer, change: "gt"}, function (obj) {
                            if (Restzeit > 0) { PumpOn() };
                          });
                          on({id: Schwimmer, change: "lt"}, function (obj) {
                            if (StartTime > 0) {
                              if (timeout) {
                                 clearTimeout(timeout); 
                                 timeout = null;
                             }
                             Restzeit = Restzeit - ((new Date().getSeconds()) - StartTime);
                            }
                            setState(Pump, false);
                          // Hier wird die Pumpe abgeschaltet wenn der Schwimmer "false" meldet. 
                          // Wichtig - die Pumpe wird hier auch dann abgeschaltet wenn sie nicht vorher über das Script eingeschaltet wurde.
                          });
                          schedule("0 0 * * *", function () {
                            Restzeit = 300;
                            if (getState(Schwimmer).val) {PumpOn(); }
                          });
                          
                          AphofisA Offline
                          AphofisA Offline
                          Aphofis
                          schrieb am zuletzt editiert von Aphofis
                          #45

                          @paul53
                          Nabend, ist es dir vielleicht möglich mir dieses Javascript was ich dankend von @Asgothian bekommen habe ins Blockly umzubauen !? Das wäre Super nett, da ich mit Blockly mehr anfangen kann.
                          Asche über mein Haupt.

                          1 Antwort Letzte Antwort
                          0
                          • AphofisA Aphofis

                            @Asgothian
                            Ich versuche das mir einer das JavaScript umbaut in Blockly dann kann ich damit mehr machen.
                            Kann leider kein Javascript programmieren.
                            Javascript Applets in Webseiten einbinden ist schon die Grenze.
                            ich kann den Code halbwechs verstehen aber Programmieren äh nein. Leider leider nicht.

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

                            @Aphofis
                            Versuch mal das hier:

                            Screen Shot 2019-09-05 at 19.48.48 .png

                            Nicht so schön, aber da die Laufzeit des Timeout nicht als Variable definiert werden kann muss halt ein Umweg gewählt werden.

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

                            AphofisA 1 Antwort Letzte Antwort
                            1
                            • AsgothianA Asgothian

                              @Aphofis
                              Versuch mal das hier:

                              Screen Shot 2019-09-05 at 19.48.48 .png

                              Nicht so schön, aber da die Laufzeit des Timeout nicht als Variable definiert werden kann muss halt ein Umweg gewählt werden.

                              AphofisA Offline
                              AphofisA Offline
                              Aphofis
                              schrieb am zuletzt editiert von
                              #47

                              @Asgothian
                              Das ja Cool, wo hast du das denn jetzt her !? oder mal eben aus dem Ärmel geschüttelt.

                              Restzeit 60 sind Sekunden !? da trage ich dann denke ich 300 sek ein!?
                              Was kommt bei even is objects rein das Magnetventil oder der schwimmer !?
                              und im schedule kommt ein neuer Datenpunkt rein ? Nach Zahl wo die 300 sek den count ablegen ?

                              AsgothianA 1 Antwort Letzte Antwort
                              0
                              • AphofisA Aphofis

                                @Asgothian
                                Das ja Cool, wo hast du das denn jetzt her !? oder mal eben aus dem Ärmel geschüttelt.

                                Restzeit 60 sind Sekunden !? da trage ich dann denke ich 300 sek ein!?
                                Was kommt bei even is objects rein das Magnetventil oder der schwimmer !?
                                und im schedule kommt ein neuer Datenpunkt rein ? Nach Zahl wo die 300 sek den count ablegen ?

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

                                @Aphofis Das hab ich aus dem Aermel geschüttelt. Restzeit ist 60x5 Sekunden, also bitte nicht auf 300 erhöhen.

                                Der Datenpunkt im Intervall ist der Datenpunkt des Schwimmers
                                Der Datenpunkt im "on" und im Shedule auch. Im SetState ist es die pumpe

                                A.

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

                                AphofisA 1 Antwort Letzte Antwort
                                0
                                • AsgothianA Asgothian

                                  @Aphofis Das hab ich aus dem Aermel geschüttelt. Restzeit ist 60x5 Sekunden, also bitte nicht auf 300 erhöhen.

                                  Der Datenpunkt im Intervall ist der Datenpunkt des Schwimmers
                                  Der Datenpunkt im "on" und im Shedule auch. Im SetState ist es die pumpe

                                  A.

                                  AphofisA Offline
                                  AphofisA Offline
                                  Aphofis
                                  schrieb am zuletzt editiert von
                                  #49

                                  @Asgothian Wäre es
                                  so korrekt?

                                  Bildschirmfoto 2019-09-05 um 20.13.58.png

                                  AsgothianA 1 Antwort Letzte Antwort
                                  0
                                  • AphofisA Aphofis

                                    @Asgothian Wäre es
                                    so korrekt?

                                    Bildschirmfoto 2019-09-05 um 20.13.58.png

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

                                    @Aphofis Fast:

                                    im Schedule muss im Falls auch das Osmose Niveau rein, wie auch in dem grauen "falls Objekt default"

                                    A.

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

                                    AphofisA 1 Antwort Letzte Antwort
                                    0
                                    • AsgothianA Asgothian

                                      @Aphofis Fast:

                                      im Schedule muss im Falls auch das Osmose Niveau rein, wie auch in dem grauen "falls Objekt default"

                                      A.

                                      AphofisA Offline
                                      AphofisA Offline
                                      Aphofis
                                      schrieb am zuletzt editiert von
                                      #51

                                      @Asgothian
                                      Also so ?

                                      Bildschirmfoto 2019-09-05 um 20.16.55.png

                                      AsgothianA 1 Antwort Letzte Antwort
                                      0
                                      • AphofisA Aphofis

                                        @Asgothian
                                        Also so ?

                                        Bildschirmfoto 2019-09-05 um 20.16.55.png

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

                                        @Aphofis so sollte es gehen

                                        A.

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

                                        AphofisA 1 Antwort Letzte Antwort
                                        0
                                        • AsgothianA Asgothian

                                          @Aphofis so sollte es gehen

                                          A.

                                          AphofisA Offline
                                          AphofisA Offline
                                          Aphofis
                                          schrieb am zuletzt editiert von Aphofis
                                          #53

                                          @Asgothian
                                          OK Ich werde es mal testen.
                                          Nach steuere Osmose Magnetventil unter dem intervall kann ich eine Osmose Aktiv Debug einbauen ?
                                          und im intervall unter stop zyklische ausführung ein Debug Osmose inaktiv ?

                                          AsgothianA 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

                                          503

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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