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. Script wenn mehr als 30min true

NEWS

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

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

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

Script wenn mehr als 30min true

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
27 Beiträge 7 Kommentatoren 2.2k Aufrufe 7 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.
  • M Offline
    M Offline
    mrhary
    schrieb am zuletzt editiert von
    #1

    Gibt es ein Blockly oder Script, das wenn ein Datenpunkt mehr als 30min true ist, mich benachrichtigt?

    Meine Freundin und ich vergessen regelmäßig das Licht im Keller abzuschalten, da wäre eine Erinnerung sinnvoll!

    Leider würde ich gerne nicht nur 1 Datenpunkt überprüfen sondern 10-20 Datenpunkte, quasi das ganze Haus!

    DJMarc75D 1 Antwort Letzte Antwort
    0
    • M mrhary

      Gibt es ein Blockly oder Script, das wenn ein Datenpunkt mehr als 30min true ist, mich benachrichtigt?

      Meine Freundin und ich vergessen regelmäßig das Licht im Keller abzuschalten, da wäre eine Erinnerung sinnvoll!

      Leider würde ich gerne nicht nur 1 Datenpunkt überprüfen sondern 10-20 Datenpunkte, quasi das ganze Haus!

      DJMarc75D Offline
      DJMarc75D Offline
      DJMarc75
      schrieb am zuletzt editiert von
      #2

      @mrhary im Keller könnte ja noch Sinn machen aber ALLE Lichter ? Stell Dir vor Du bist für ne lange Sitzung "unterwegs" und plötzlich kannst Du das Klopapier nicht mehr finden weil dunkel :face_with_rolling_eyes: :hankey:

      für eine Lampe (die muss natürlich smart sein):

      Screenshot 2023-01-29 224426.png

      Lehrling seit 1975 !!!
      Beitrag geholfen ? dann gerne ein upvote rechts unten im Beitrag klicken ;)
      https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge

      M V 3 Antworten Letzte Antwort
      0
      • DJMarc75D DJMarc75

        @mrhary im Keller könnte ja noch Sinn machen aber ALLE Lichter ? Stell Dir vor Du bist für ne lange Sitzung "unterwegs" und plötzlich kannst Du das Klopapier nicht mehr finden weil dunkel :face_with_rolling_eyes: :hankey:

        für eine Lampe (die muss natürlich smart sein):

        Screenshot 2023-01-29 224426.png

        M Offline
        M Offline
        mrhary
        schrieb am zuletzt editiert von
        #3

        @djmarc75

        Er soll ja nichts automatisch ausschalten sondern nur Informieren, hilft da ID von Selektor?

        1 Antwort Letzte Antwort
        0
        • DJMarc75D DJMarc75

          @mrhary im Keller könnte ja noch Sinn machen aber ALLE Lichter ? Stell Dir vor Du bist für ne lange Sitzung "unterwegs" und plötzlich kannst Du das Klopapier nicht mehr finden weil dunkel :face_with_rolling_eyes: :hankey:

          für eine Lampe (die muss natürlich smart sein):

          Screenshot 2023-01-29 224426.png

          V Offline
          V Offline
          vitaminc
          schrieb am zuletzt editiert von
          #4

          @djmarc75

          Hab das mal gerade probiert. Was für ein Datenpunkt muss hier vorhanden sein, ich habe es mit einer Lampe probiert die false/true setzt. Funktioniert aber so nicht.

          0c5dfb45-280c-4f62-bd82-572223a12813-image.png

          Ich hatte es auch mal so probiert, allerdings da empfange ich dann alle 2 Minuten eine Nachricht, anstatt nur 1mal.

          5795cff1-9d21-45ef-8586-8bcbe654ed04-image.png

          1 Antwort Letzte Antwort
          0
          • DJMarc75D DJMarc75

            @mrhary im Keller könnte ja noch Sinn machen aber ALLE Lichter ? Stell Dir vor Du bist für ne lange Sitzung "unterwegs" und plötzlich kannst Du das Klopapier nicht mehr finden weil dunkel :face_with_rolling_eyes: :hankey:

            für eine Lampe (die muss natürlich smart sein):

            Screenshot 2023-01-29 224426.png

            V Offline
            V Offline
            vitaminc
            schrieb am zuletzt editiert von
            #5

            @djmarc75 said in Script wenn mehr als 30min true:

            @mrhary im Keller könnte ja noch Sinn machen aber ALLE Lichter ? Stell Dir vor Du bist für ne lange Sitzung "unterwegs" und plötzlich kannst Du das Klopapier nicht mehr finden weil dunkel :face_with_rolling_eyes: :hankey:

            für eine Lampe (die muss natürlich smart sein):

            Screenshot 2023-01-29 224426.png

            pardon, das Script funktioniert doch.
            Allerdings hab ich einen anderen Anwendungsfall, ich will die Information weiterverarbeiten, wenn keiner der Motion Sensoren im Haus für z.B. 30min nicht mehr aktualisiert hat.

            V 1 Antwort Letzte Antwort
            0
            • V vitaminc

              @djmarc75 said in Script wenn mehr als 30min true:

              @mrhary im Keller könnte ja noch Sinn machen aber ALLE Lichter ? Stell Dir vor Du bist für ne lange Sitzung "unterwegs" und plötzlich kannst Du das Klopapier nicht mehr finden weil dunkel :face_with_rolling_eyes: :hankey:

              für eine Lampe (die muss natürlich smart sein):

              Screenshot 2023-01-29 224426.png

              pardon, das Script funktioniert doch.
              Allerdings hab ich einen anderen Anwendungsfall, ich will die Information weiterverarbeiten, wenn keiner der Motion Sensoren im Haus für z.B. 30min nicht mehr aktualisiert hat.

              V Offline
              V Offline
              vitaminc
              schrieb am zuletzt editiert von
              #6

              Komisch, es hat einmal funktioniert, und jetzt wieder nicht mehr.. hmm.

              13263109-a5af-43aa-8593-ba462944a633-image.png

              V 1 Antwort Letzte Antwort
              0
              • V vitaminc

                Komisch, es hat einmal funktioniert, und jetzt wieder nicht mehr.. hmm.

                13263109-a5af-43aa-8593-ba462944a633-image.png

                V Offline
                V Offline
                vitaminc
                schrieb am zuletzt editiert von
                #7

                glaube so passt es jetzt:

                ad07a961-52b7-4d9c-9b3c-77541878759b-image.png

                CephalopodC 1 Antwort Letzte Antwort
                0
                • V vitaminc

                  glaube so passt es jetzt:

                  ad07a961-52b7-4d9c-9b3c-77541878759b-image.png

                  CephalopodC Online
                  CephalopodC Online
                  Cephalopod
                  schrieb am zuletzt editiert von Cephalopod
                  #8

                  @vitaminc

                  Ähnliche Anwendung:
                  Falls ein offenes Fenster (HomaticIP Fensterkotakt) länger als X Minuten offen steht, dann bitte über die Alexa in dem Raum einen Spruch sagen.
                  Wenn es nach weiteren Y Minuten immer noch offen steht, dann über eine andere Alexa einen Spruch sagen.
                  Wenn es inzwischen geschlossen wurde, dann natürlich nicht mehr.

                  Wäre das das gleiche Script?

                  M V 2 Antworten Letzte Antwort
                  0
                  • CephalopodC Cephalopod

                    @vitaminc

                    Ähnliche Anwendung:
                    Falls ein offenes Fenster (HomaticIP Fensterkotakt) länger als X Minuten offen steht, dann bitte über die Alexa in dem Raum einen Spruch sagen.
                    Wenn es nach weiteren Y Minuten immer noch offen steht, dann über eine andere Alexa einen Spruch sagen.
                    Wenn es inzwischen geschlossen wurde, dann natürlich nicht mehr.

                    Wäre das das gleiche Script?

                    M Offline
                    M Offline
                    mrhary
                    schrieb am zuletzt editiert von
                    #9

                    @cephalopod von der Logik her ja, denn ob es eine Ausgabe via Alexa oder Telegram ist, ist völlig egal!

                    1 Antwort Letzte Antwort
                    1
                    • CephalopodC Cephalopod

                      @vitaminc

                      Ähnliche Anwendung:
                      Falls ein offenes Fenster (HomaticIP Fensterkotakt) länger als X Minuten offen steht, dann bitte über die Alexa in dem Raum einen Spruch sagen.
                      Wenn es nach weiteren Y Minuten immer noch offen steht, dann über eine andere Alexa einen Spruch sagen.
                      Wenn es inzwischen geschlossen wurde, dann natürlich nicht mehr.

                      Wäre das das gleiche Script?

                      V Offline
                      V Offline
                      vitaminc
                      schrieb am zuletzt editiert von
                      #10

                      Ich bin gerade dabei folgendes aufzubauen:
                      Wenn KEIN Licht im Haus für eine bestimmte Zeit eingeschaltet ist, schreibe ich eine 1 in einen Datenpunkt.
                      Wenn wieder Licht brennt, dann schreibe ich eine 0 in den Datenpunkt.
                      Hintergrund ist, ich möchte es als zusätzliches Objekt für Präsenz benutzen.

                      Macht das so in etwa Sinn?
                      Funktionieren tut es so, aber leider triggert er mir den "sonst Ausführen timeout2" leider mehrfach:
                      22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                      22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an

                      91c16512-57ea-45a2-b209-6ce7a8d76b56-image.png

                      AsgothianA DJMarc75D 2 Antworten Letzte Antwort
                      0
                      • V vitaminc

                        Ich bin gerade dabei folgendes aufzubauen:
                        Wenn KEIN Licht im Haus für eine bestimmte Zeit eingeschaltet ist, schreibe ich eine 1 in einen Datenpunkt.
                        Wenn wieder Licht brennt, dann schreibe ich eine 0 in den Datenpunkt.
                        Hintergrund ist, ich möchte es als zusätzliches Objekt für Präsenz benutzen.

                        Macht das so in etwa Sinn?
                        Funktionieren tut es so, aber leider triggert er mir den "sonst Ausführen timeout2" leider mehrfach:
                        22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                        22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an

                        91c16512-57ea-45a2-b209-6ce7a8d76b56-image.png

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

                        @vitaminc Computer sind leider nicht schlau. Sie machen genau das was du ihnen sagst (auch wenn es Schwachsinn ist).

                        Was Dein Skript macht:

                        Alle 30 Minuten fügst du einen weiteren Trigger in die Triggerliste ein, die alle deine AnyOn Objekte überprüft. Wenn das Skript lange genug läuft wird der JS Adapter sich verabschieden.

                        Nicht elegant.

                        Es hilft sich 2 Dinge zu merken:

                        • Trigger in Trigger ist Mist. Das geht nur in besonderen Fällen, und gilt für fast alle (Haupt)Bausteine aus dem Trigger Bereich.
                        • Ein Trigger ist keine "Falls Bedingung mache" abfrage. Es ist die Aufforderung eine Bedingung dauerhaft zu überwachen. Dabei wird prinzipiell nicht überprüft wie oft die identische Bedingung überwacht wird.

                        Ansonsten hast du das Problem das die Methode für 1 Lampe geht, für mehrere so nicht, da das ausschalten einer beliebigen Lampe eine 0 Einträgt.

                        Was du wirklich willst:

                        Screenshot 2023-02-02 at 08.37.38.png

                        Intern zählt das Skript die Lampen die an sind. Zählen tut er die Lampen sofort, nur das Schreiben in deinen AnyOn Datenpunkt passiert erst nach 1 Minute. (oder nach 20, wenn jemand 19 Minuten lang alle 50 Sekunden eine beliebige Lampe schaltet :) )

                        Nachtrag:

                        Bei Skriptstart muss das Skript natürlich alle Lampen abfragen, um zu ermitteln welche an sind. Macht es auch.

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

                        V 1 Antwort Letzte Antwort
                        0
                        • V vitaminc

                          Ich bin gerade dabei folgendes aufzubauen:
                          Wenn KEIN Licht im Haus für eine bestimmte Zeit eingeschaltet ist, schreibe ich eine 1 in einen Datenpunkt.
                          Wenn wieder Licht brennt, dann schreibe ich eine 0 in den Datenpunkt.
                          Hintergrund ist, ich möchte es als zusätzliches Objekt für Präsenz benutzen.

                          Macht das so in etwa Sinn?
                          Funktionieren tut es so, aber leider triggert er mir den "sonst Ausführen timeout2" leider mehrfach:
                          22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.437 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.438 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an
                          22:56:06.439 info javascript.0 (212) script.js.common.Demo_9: Licht ist an

                          91c16512-57ea-45a2-b209-6ce7a8d76b56-image.png

                          DJMarc75D Offline
                          DJMarc75D Offline
                          DJMarc75
                          schrieb am zuletzt editiert von
                          #12

                          @vitaminc sagte in Script wenn mehr als 30min true:

                          Macht das so in etwa Sinn?

                          Trigger in Trigger ---> geht nicht.
                          Mach erstmal ganz einfach so:

                          Screenshot 2023-02-02 085616.png

                          Lehrling seit 1975 !!!
                          Beitrag geholfen ? dann gerne ein upvote rechts unten im Beitrag klicken ;)
                          https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge

                          V 1 Antwort Letzte Antwort
                          0
                          • DJMarc75D DJMarc75

                            @vitaminc sagte in Script wenn mehr als 30min true:

                            Macht das so in etwa Sinn?

                            Trigger in Trigger ---> geht nicht.
                            Mach erstmal ganz einfach so:

                            Screenshot 2023-02-02 085616.png

                            V Offline
                            V Offline
                            vitaminc
                            schrieb am zuletzt editiert von
                            #13

                            Guten Morgen,

                            da ich Philips Hue überall benutze, muss ich nicht ALLE Lampen einzelne abfragen.
                            Hue hat bereits ein Objekt welches mittels Wert definiert, ob irgendeine Lampe also Any noch leuchtet oder nicht.

                            Allerdings ist mir das mit der Zeitsteuerung noch nicht klar, da ich natürlich erst nach einer bestimmten Zeit z.B. 30min, erfassen möchte, dass seitdem auch wirklich keine Änderung mehr stattgefunden hat.

                            Werde mit eure Vorschläge heute Abend mal ansehen, Danke.

                            CephalopodC 1 Antwort Letzte Antwort
                            0
                            • V vitaminc

                              Guten Morgen,

                              da ich Philips Hue überall benutze, muss ich nicht ALLE Lampen einzelne abfragen.
                              Hue hat bereits ein Objekt welches mittels Wert definiert, ob irgendeine Lampe also Any noch leuchtet oder nicht.

                              Allerdings ist mir das mit der Zeitsteuerung noch nicht klar, da ich natürlich erst nach einer bestimmten Zeit z.B. 30min, erfassen möchte, dass seitdem auch wirklich keine Änderung mehr stattgefunden hat.

                              Werde mit eure Vorschläge heute Abend mal ansehen, Danke.

                              CephalopodC Online
                              CephalopodC Online
                              Cephalopod
                              schrieb am zuletzt editiert von
                              #14

                              So, mein Script funktioniert soweit

                              ee2ce029-b8f0-4e17-9338-ba5840837a1c-image.png

                              Wie füge ich eine weitere Bedingung ein, dass die Außentemperatur unterhalb von 15 °C sein muss, damit alarmiert wird?

                              DJMarc75D paul53P CephalopodC 3 Antworten Letzte Antwort
                              0
                              • CephalopodC Cephalopod

                                So, mein Script funktioniert soweit

                                ee2ce029-b8f0-4e17-9338-ba5840837a1c-image.png

                                Wie füge ich eine weitere Bedingung ein, dass die Außentemperatur unterhalb von 15 °C sein muss, damit alarmiert wird?

                                DJMarc75D Offline
                                DJMarc75D Offline
                                DJMarc75
                                schrieb am zuletzt editiert von
                                #15

                                @cephalopod sagte in Script wenn mehr als 30min true:

                                die Außentemperatur unterhalb von 15 °C sein muss, damit alarmiert wird

                                Screenshot 2023-02-07 190543.png

                                Lehrling seit 1975 !!!
                                Beitrag geholfen ? dann gerne ein upvote rechts unten im Beitrag klicken ;)
                                https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge

                                1 Antwort Letzte Antwort
                                1
                                • CephalopodC Cephalopod

                                  So, mein Script funktioniert soweit

                                  ee2ce029-b8f0-4e17-9338-ba5840837a1c-image.png

                                  Wie füge ich eine weitere Bedingung ein, dass die Außentemperatur unterhalb von 15 °C sein muss, damit alarmiert wird?

                                  paul53P Offline
                                  paul53P Offline
                                  paul53
                                  schrieb am zuletzt editiert von
                                  #16

                                  @cephalopod sagte: Außentemperatur unterhalb von 15 °C sein muss

                                  Blockly_temp.JPG

                                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                  CephalopodC 1 Antwort Letzte Antwort
                                  1
                                  • paul53P paul53

                                    @cephalopod sagte: Außentemperatur unterhalb von 15 °C sein muss

                                    Blockly_temp.JPG

                                    CephalopodC Online
                                    CephalopodC Online
                                    Cephalopod
                                    schrieb am zuletzt editiert von
                                    #17

                                    @paul53
                                    @DJMarc75

                                    Super, ihr seid klasse, danke.
                                    Ich habe die zweite Variante genommen, ist "eleganter".

                                    b066d2d1-9ed8-4066-9a3e-9d64a41f9a8c-image.png

                                    Frage:
                                    Ihr habt beide nur

                                    Falls Wert
                                    

                                    geschrieben.
                                    Muss man nicht

                                    Falls Wert = wahr
                                    

                                    schreiben?

                                    DJMarc75D mickymM 2 Antworten Letzte Antwort
                                    0
                                    • CephalopodC Cephalopod

                                      @paul53
                                      @DJMarc75

                                      Super, ihr seid klasse, danke.
                                      Ich habe die zweite Variante genommen, ist "eleganter".

                                      b066d2d1-9ed8-4066-9a3e-9d64a41f9a8c-image.png

                                      Frage:
                                      Ihr habt beide nur

                                      Falls Wert
                                      

                                      geschrieben.
                                      Muss man nicht

                                      Falls Wert = wahr
                                      

                                      schreiben?

                                      DJMarc75D Offline
                                      DJMarc75D Offline
                                      DJMarc75
                                      schrieb am zuletzt editiert von
                                      #18

                                      @cephalopod sagte in Script wenn mehr als 30min true:

                                      Ich habe die zweite Variante genommen, ist "eleganter".

                                      Die zweite von @paul53 startet den Timer wenn beim Öffnen des Fensters die Temperatur weniger 15 Grad ist.
                                      Bei meiner Variante startet der Timer immer wenn das Fenster geöffnet wird, aber es erfolgt nur eine Nachricht wenn nach Ablauf des Timers die Aussentemperatur weniger 15 Grad ist.

                                      Bei "wert" wird immer "true" ("wahr") abgefragt.

                                      Lehrling seit 1975 !!!
                                      Beitrag geholfen ? dann gerne ein upvote rechts unten im Beitrag klicken ;)
                                      https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge

                                      1 Antwort Letzte Antwort
                                      1
                                      • CephalopodC Cephalopod

                                        @paul53
                                        @DJMarc75

                                        Super, ihr seid klasse, danke.
                                        Ich habe die zweite Variante genommen, ist "eleganter".

                                        b066d2d1-9ed8-4066-9a3e-9d64a41f9a8c-image.png

                                        Frage:
                                        Ihr habt beide nur

                                        Falls Wert
                                        

                                        geschrieben.
                                        Muss man nicht

                                        Falls Wert = wahr
                                        

                                        schreiben?

                                        mickymM Online
                                        mickymM Online
                                        mickym
                                        Most Active
                                        schrieb am zuletzt editiert von mickym
                                        #19

                                        @cephalopod sagte in Script wenn mehr als 30min true:

                                        Ihr habt beide nur
                                        Falls Wert

                                        geschrieben.
                                        Muss man nicht
                                        Falls Wert = wahr

                                        schreiben?

                                        Du musst Dir grundsätzlich vorstellen, dass jeder Ausdruck daraufhin überprüft wird, ob er wahr wird. Also ist eine Bedinung wahr wenn 0=0 ist oder gelb=gelb. Wenn der Wert an sich wahr ist dann wird also immer ausgeführt. Das heißt es muss nicht mal ein Ausdruck ausgewertet werden, wenn der Wert wahr ist. Also wenn Wert=wahr kann man sich deshalb sparen, wenn die Bedingung sowieso wahr ist, weil der Wert wahr ist. Mit anderen Worten: Lieber Computer Du musst gar nichts auswerten, ich sag Dir direkt ob die Bedingung wahr oder falsch ist.

                                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                        1 Antwort Letzte Antwort
                                        1
                                        • AsgothianA Asgothian

                                          @vitaminc Computer sind leider nicht schlau. Sie machen genau das was du ihnen sagst (auch wenn es Schwachsinn ist).

                                          Was Dein Skript macht:

                                          Alle 30 Minuten fügst du einen weiteren Trigger in die Triggerliste ein, die alle deine AnyOn Objekte überprüft. Wenn das Skript lange genug läuft wird der JS Adapter sich verabschieden.

                                          Nicht elegant.

                                          Es hilft sich 2 Dinge zu merken:

                                          • Trigger in Trigger ist Mist. Das geht nur in besonderen Fällen, und gilt für fast alle (Haupt)Bausteine aus dem Trigger Bereich.
                                          • Ein Trigger ist keine "Falls Bedingung mache" abfrage. Es ist die Aufforderung eine Bedingung dauerhaft zu überwachen. Dabei wird prinzipiell nicht überprüft wie oft die identische Bedingung überwacht wird.

                                          Ansonsten hast du das Problem das die Methode für 1 Lampe geht, für mehrere so nicht, da das ausschalten einer beliebigen Lampe eine 0 Einträgt.

                                          Was du wirklich willst:

                                          Screenshot 2023-02-02 at 08.37.38.png

                                          Intern zählt das Skript die Lampen die an sind. Zählen tut er die Lampen sofort, nur das Schreiben in deinen AnyOn Datenpunkt passiert erst nach 1 Minute. (oder nach 20, wenn jemand 19 Minuten lang alle 50 Sekunden eine beliebige Lampe schaltet :) )

                                          Nachtrag:

                                          Bei Skriptstart muss das Skript natürlich alle Lampen abfragen, um zu ermitteln welche an sind. Macht es auch.

                                          V Offline
                                          V Offline
                                          vitaminc
                                          schrieb am zuletzt editiert von
                                          #20

                                          @asgothian

                                          Danke für deinen Input. Habe das mal umgesetzt, in dem ich alle Bewegungsmelder auf Veränderung prüfen möchte und mir dann in ein Datenpunkt eine 0 oder 1 schreiben möchte, je nachdem ob sich z.B. nach 1 Minute etwas verändert hat oder nicht. Habe für die Bewegungsmelder eine Funktion angelegt:

                                          604241e4-8915-4f8f-afcc-c7e237dccf5b-image.png

                                          Zudem einen Datenpunkt als Zahl namens Any_MotionSensor, dort will ich eine 0 oder 1 haben.

                                          Hier das Script, das ich nach deiner Anleitung nachgebaut habe:
                                          dfa5f9ee-6b84-45cc-9120-9c82a5931982-image.png

                                          Dann kommt:
                                          10:29:09.997 error javascript.0 (187) script.js.common.Bewegungsmelder_V1 Error by subscription (trigger): empty ID defined. All states matched.

                                          paul53P 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

                                          890

                                          Online

                                          32.4k

                                          Benutzer

                                          81.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