Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Variable an Cron übergeben

    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

    Variable an Cron übergeben

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

      Hallo zusammen

      Ich habe die letzten Tage damit verbracht eine Funktion in meine selbst geschriebene Rollladensteuerung zu integrieren.

      Mein Ziel war es eine "Ausschlafen" Funktion für die Schlafzimmer zu erstellen. Dabei sollen die Rollläden zu einer gewissen Uhrzeit auf fahren. Sonst fahren diese auf, wenn ein Sonnenstand erreicht ist.

      Folgendes Skript habe ich nun erstellt, jedoch weiß ich nicht wie ich die Variable cron_uhrzeit an cron übergebe.

      var cron_uhrzeit;
      on({id: 'javascript.0.Rollladen.Steuerung.Funktion_Ausschlafen_Uhrzeit', change: "ne"}, async function (obj) {
        if (getState("javascript.0.Rollladen.Steuerung.Funktion_Ausschlafen_Uhrzeit").val == '1') {
          cron_uhrzeit = ['0 ','9 ','* ','* ','*'].join('');
        }
        if (getState("javascript.0.Rollladen.Steuerung.Funktion_Ausschlafen_Uhrzeit").val == '2') {
          cron_uhrzeit = ['30 ','9 ','* ','* ','*'].join('');
        }
        if (getState("javascript.0.Rollladen.Steuerung.Funktion_Ausschlafen_Uhrzeit").val == '3') {
          cron_uhrzeit = ['0 ','10 ','* ','* ','*'].join('');
        }
      });
      schedule("0 10 * * *", function () {
          if (getState("javascript.0.Rollladen.Steuerung.Funktion_Ausschlafen").val == true) {
              if (getState("hm-rpc.0.NEQ1793331.1.LEVEL").val < 5) { setState("javascript.0.Rollladen.Obergeschoss.Terrasse1", 100); }
              if (getState("hm-rpc.0.NEQ1793684.1.LEVEL").val < 5) { setState("javascript.0.Rollladen.Obergeschoss.Terrasse2", 100); }
              if (getState("hm-rpc.0.NEQ1795826.1.LEVEL").val < 5) { setState("javascript.0.Rollladen.Obergeschoss.Rheinsicht", 100); }
              if (getState("hm-rpc.0.NEQ1793335.1.LEVEL").val < 5) { setState("javascript.0.Rollladen.Obergeschoss.Ankleidezimmer", 100);
              }
          }
      });
      

      In dem gezeigten Skript fahren 4 Rollläden zu einer festen Uhrzeit auf. Ich habe verschiedene Dinge schon ausprobiert, aber bisher hat nichts geklappt. Vielleicht kann mir jemand da weiterhelfen.

      Danke.
      Gruß aus dem Rheinland
      Tobi

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @dontobi last edited by

        @dontobi
        Versuche es mal so:

        var cron_uhrzeit = '0 10 * * *';
        on({id: 'javascript.0.Rollladen.Steuerung.Funktion_Ausschlafen_Uhrzeit', change: "ne"}, async function (obj) {
          if (obj.state.val == 1) {
            cron_uhrzeit = '0 9 * * *';
          }
          if (obj.state.val == 2) {
            cron_uhrzeit = '30 9 * * *';
          }
          if (obj.state.val == 3) {
            cron_uhrzeit = '0 10 * * *';
          }
        });
        schedule(cron_uhrzeit, function () {
        
        dontobi 1 Reply Last reply Reply Quote 0
        • dontobi
          dontobi @paul53 last edited by

          @paul53 Danke für die schnelle Antwort. Ich hatte das mit der Variable direkt im schedule schon getestet, aber die variable vorher nicht initialisiert. Vielleicht liegt es daran. Hab es gerade mal eingetragen und lasse es morgen testen.

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

          Support us

          ioBroker
          Community Adapters
          Donate

          776
          Online

          31.8k
          Users

          80.0k
          Topics

          1.3m
          Posts

          javascript
          2
          3
          154
          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