Skip to content
  • 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
  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.1k

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

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

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

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
7 Beiträge 4 Kommentatoren 596 Aufrufe
  • Ä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.
  • smartboartS Offline
    smartboartS Offline
    smartboart
    schrieb am zuletzt editiert von
    #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 Antwort Letzte Antwort
    0
    • AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      schrieb am zuletzt editiert von
      #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 Antwort Letzte Antwort
      0
      • smartboartS Offline
        smartboartS Offline
        smartboart
        schrieb am zuletzt editiert von
        #3

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

        1 Antwort Letzte Antwort
        0
        • 4 Offline
          4 Offline
          4-Real
          schrieb am zuletzt editiert von
          #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 Antwort Letzte Antwort
          0
          • smartboartS Offline
            smartboartS Offline
            smartboart
            schrieb am zuletzt editiert von
            #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 Antwort Letzte Antwort
            0
            • R Offline
              R Offline
              RappiRN
              Most Active
              schrieb am zuletzt editiert von
              #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 Antwort Letzte Antwort
              0
              • smartboartS Offline
                smartboartS Offline
                smartboart
                schrieb am zuletzt editiert von
                #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 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

                565

                Online

                32.4k

                Benutzer

                81.4k

                Themen

                1.3m

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

                • Du hast noch kein Konto? Registrieren

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