Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Scrypt schaltet in Software aber nicht Physisch

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Scrypt schaltet in Software aber nicht Physisch

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      powerpeer last edited by Homoran

      Moin,
      ich habe keine Ahnung und habe es von ChatGPT machen lassen aber vielleicht könnt ihr mir da besser weiter helfen

      wie gesagt ich kann in den Objekten sehen wie das Licht auf TRUE schaltet aber es ist nicht an, aber wenn ich es selbst mit der Maus auf TRUE schalte geht es an.

      const licht = 'zigbee.0.a4c1386f336183e9.state';
      const bewegungsmelder = 'zigbee.0.0017880103295819.occupancy';
      const luefter = 'hm-rpc.1.00255BE98CF4E0.4.STATE';
      
      let lichtTimer = null;
      let luefterTimer = null;
      let luefterStartTimer = null;
      let bewegungStart = null;
      
      on({ id: bewegungsmelder, change: 'ne' }, function (obj) {
      if (obj.state.val) {
      // Bewegung erkannt -> Licht sofort an
      setState(licht, true, true);
      
      // Zeitstempel speichern, wann Bewegung erkannt wurde
      bewegungStart = Date.now();
      
      // Falls Licht- oder Lüfter-Timer laufen, abbrechen
      if (lichtTimer) {
      clearTimeout(lichtTimer);
      lichtTimer = null;
      }
      if (luefterTimer) {
      clearTimeout(luefterTimer);
      luefterTimer = null;
      }
      if (luefterStartTimer) {
      clearTimeout(luefterStartTimer);
      luefterStartTimer = null;
      }
      
      // Lüfter erst nach 2 Min prüfen
      luefterStartTimer = setTimeout(() => {
      if (Date.now() - bewegungStart >= 2 * 60 * 1000) {
      // Falls Bewegung noch aktiv ist -> nach 3 weiteren Minuten Lüfter an
      luefterTimer = setTimeout(() => {
      setState(luefter, true, true);
      luefterTimer = null;
      }, 3 * 60 * 1000);
      }
      }, 2 * 60 * 1000);
      
      } else {
      // Keine Bewegung mehr -> Licht nach 20 Sekunden aus
      lichtTimer = setTimeout(() => {
      setState(licht, false, true);
      
      // Falls Lüfter an ist, nach 3 Minuten aus
      if (getState(luefter).val) {
      luefterTimer = setTimeout(() => {
      setState(luefter, false, true);
      luefterTimer = null;
      }, 3 * 60 * 1000);
      }
      }, 20 * 1000);
      }
      });
      

      MOD-EDIT: Code in code-tags gesetzt!

      vielen dank

      geschild 1 Reply Last reply Reply Quote 0
      • geschild
        geschild @powerpeer last edited by

        @powerpeer Kann sein, das die Lampe nur auf 'sendpayload' reagiert:

        Generiere eine Variable: const lichtpay = 'zigbee.0.a4c1386f336183e9.send_payload';
        Ersetze mal sie Zeilen:
        setState(licht, true, true);
        durch:
        setState(lichtpay /* Send a raw json payload /, '{"state": "on"}');
        und :
        setState(licht, false, true);
        durch:
        setState(lichtpay /
        Send a raw json payload */, '{"state": "off"}');

        falls der Lüfter auch nicht geht, dann dito,

        P 1 Reply Last reply Reply Quote 0
        • T
          ticaki Developer last edited by ticaki

          Kurz:
          setState(wo, was, false)
          oder einfach
          setState(wo, was)

          1 Reply Last reply Reply Quote 1
          • P
            powerpeer @geschild last edited by

            @geschild Oh ja Danke das funktioniert.

            1 Reply Last reply Reply Quote 0
            • First post
              Last post

            Support us

            ioBroker
            Community Adapters
            Donate

            785
            Online

            31.8k
            Users

            80.0k
            Topics

            1.3m
            Posts

            3
            4
            173
            Loading More Posts
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes
            Reply
            • Reply as topic
            Log in to reply
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
            The ioBroker Community 2014-2023
            logo