Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Trigger für Javascript 1x mal abfragen vor Programmausführung

NEWS

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

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

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

Trigger für Javascript 1x mal abfragen vor Programmausführung

Trigger für Javascript 1x mal abfragen vor Programmausführung

Scheduled Pinned Locked Moved Skripten / Logik
7 Posts 4 Posters 596 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • smartboartS Offline
    smartboartS Offline
    smartboart
    wrote on last edited by
    #1

    Hallo, ich habe ein kleines Problem mit meinem Alarmanlagenscript.

    Oder besser gesagt mit dem Trigger für die Anwesenheitserkennung.

    Anwesnheit wird über den Tr-64 Adapter mittels wlan Teilnehmer also Mobiltelefon erkannt.

    Mit einem kleinen Script setze ich ein State für jemand da.

    Leider kommt es öfters zu Fehlaktivierungen, weil der state jemand da auf false gesetzt wurde….

    Jetzt zur Frage, wie kann ich diesen Trigger State nach einer Zeit x ein 2. mal abfragen bevor das Hauptscript losläuft?

    Mir würde einfallen mittels Variable > var Abfrage2 = getstateDelayed('javascript.0.Anwesenheit.jemandda,1000).val;
    und diesen in die start Bedingung mit einbauen…

    Oder gehts auch schöner?

    1 Reply Last reply
    0
    • AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      wrote on last edited by
      #2

      @smartboart:

      Jetzt zur Frage, wie kann ich diesen Trigger State nach einer Zeit x ein 2. mal abfragen bevor das Hauptscript losläuft?

      Mir würde einfallen mittels Variable > var Abfrage2 = getstateDelayed('javascript.0.Anwesenheit.jemandda,1000).val;
      und diesen in die start Bedingung mit einbauen… `
      getStateDelayed tut nicht was du hier erwartest. Ich vermute du willst sowas:

      // 1\. Abfrage
      var abfrage1 = getState('javascript.0.Anwesenheit.jemandda').val;
      var abfrage2;
      
      // Der eigentliche Programmablauf ist innerhalb der main-Funktion
      function main() {
      	// Eigentliches Skript
      }
      
      // den folgenden Code-Schnipsel nach 1000ms ausführen:
      setTimeout(() => {
      	// Status nochmal abfragen
      	abfrage2 = getState('javascript.0.Anwesenheit.jemandda').val;
      	// Eigentliches Skript ausführen
      	main();
      }, 1000);
      
      

      Die zweite Abfrage kannst du auch in die main-Funktion schieben:

      // 1\. Abfrage
      var abfrage1 = getState('javascript.0.Anwesenheit.jemandda').val;
      var abfrage2;
      
      // Der eigentliche Programmablauf ist innerhalb der main-Funktion
      function main() {
      	// Status nochmal abfragen
      	abfrage2 = getState('javascript.0.Anwesenheit.jemandda').val;
      
      	// ... Eigentliches Skript ...
      }
      // Die main-Funktion nach 1000ms ausführen:
      setTimeout(main, 1000);
      
      

      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

      1 Reply Last reply
      0
      • smartboartS Offline
        smartboartS Offline
        smartboart
        wrote on last edited by
        #3

        ja, super vielen Dank, werde es dann gleich mal einbauen und testen.

        1 Reply Last reply
        0
        • 4 Offline
          4 Offline
          4-Real
          wrote on last edited by
          #4

          Ich denke dein Problem wird aber leider ein anderes sein…

          Öfters ist es das ein Handy, um Akku zu sparen, das WLAN kurzfristig austellt sobald es nicht benutzt wird. Genau deshalb wird es wohl zu deinen Fehlaktivierungen kommen.

          Ich habe dieses Problem selber schon beobachtet und es ist egal ob es IOS oder Android ist.

          Daher musste ich mir leider einen kleinen Umweg gehen:

          Habe einfach ein Gerät als "Ping" genommen was auf jeden Fall an ist, wenn ich zuhause bin. Ich denke da lässt sich als Trigger bestimmt irgendein Gerät finden was wirklich auch nur an ist wenn man zuhause ist.

          Wollte ich nur mal als kleinen Tipp in den Raum werfen..

          1 Reply Last reply
          0
          • smartboartS Offline
            smartboartS Offline
            smartboart
            wrote on last edited by
            #5

            Das wäre natürlich schlecht….

            Mir fällt aber nix ein was unbedingt an ist wenn ich zu Hause bin... Hinzu kommt das hier mehrere Personen täglich ein und ausgehen.

            Nicht jeder verwendet die gleichen Verbraucher..Die Idee ist gut, aber für mich leider nicht realisierbar...

            Was bringt die Beste alarmanlage wenn dann einer vergisst diese zu aktivieren...Deshalb die Idee mit dem Handy... und autoaktivierung...

            Zur Not dann eben doch der gute alte Funkhandsender...

            1 Reply Last reply
            0
            • R Offline
              R Offline
              RappiRN
              Most Active
              wrote on last edited by
              #6

              @smartboart:

              Mir fällt aber nix ein was unbedingt an ist wenn ich zu Hause bin… `

              Ich verwende dafür seit einiger Zeit den radar-Adapter mit Bluetooth-Erkennung. Das geht auch im Haus ganz gut mit momentan einem BananaPi, der als Slave diese Aufgabe erledigt. Wenn eine noch größere Reichweite nötig ist, dann können ja noch weitere Slaves dazukommen.

              Über entsprechende Steuerungen, die die einzelnen Familienmitglieder, bzw. deren An- oder Abwesenheit als Voraussetzung haben, habe ich mit der Zeit auch alle dazu gebracht, Bluetooth immer anzulassen. 😄 (Ja ich weiß, da gibts auch Sicherheitslücken usw. :roll: )

              Enrico

              1 Reply Last reply
              0
              • smartboartS Offline
                smartboartS Offline
                smartboart
                wrote on last edited by
                #7

                An Bluetooth hatte ich auch schon gedacht, dafür gibt es ja auch schon dongle für den Schlüsselbund.

                Die Reichweite und die Abhängigkeit einer weiteren Funkverbindung hat mich dann aber davon abgehalten.

                Aber der Faktor Frau und Akzeptanz ist natürlich auch immer wieder ein Problem. :twisted: Wenn ich jetzt noch mit nem Feldtest und Bluetooth anfange ist es ganz vorbei… :roll: Ich wurde schon genötigt die Aktivierung und Deaktivierung nur noch manuell einleiten zu lassen, nachdem die Anlage sich dann Selbstständig machte, weil sich das Telefon abmeldete... Also entweder über vis oder Funkfernbedienung... Und das ist ja schon realisiert.

                1 Reply Last reply
                0
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                Support us

                ioBroker
                Community Adapters
                Donate

                613

                Online

                32.4k

                Users

                81.3k

                Topics

                1.3m

                Posts
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                ioBroker Community 2014-2025
                logo
                • Login

                • Don't have an account? Register

                • Login or register to search.
                • First post
                  Last post
                0
                • Recent
                • Tags
                • Unread 0
                • Categories
                • Unreplied
                • Popular
                • GitHub
                • Docu
                • Hilfe