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. Blockly
  5. Präsenzmelder nach Tageszeit mit bestimmter Helligkeit

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Präsenzmelder nach Tageszeit mit bestimmter Helligkeit

Geplant Angeheftet Gesperrt Verschoben Blockly
52 Beiträge 5 Kommentatoren 4.4k Aufrufe 3 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.
  • H hinsen2k

    @dslraser
    ja, ich habe dazu auch ein Script hier aus dem Forum. Funktioniert auch einwandfrei.

    dslraserD Offline
    dslraserD Offline
    dslraser
    Forum Testing Most Active
    schrieb am zuletzt editiert von dslraser
    #18

    @hinsen2k sagte in Präsenzmelder nach Tageszeit mit bestimmter Helligkeit:

    @dslraser
    ja, ich habe dazu auch ein Script hier aus dem Forum. Funktioniert auch einwandfrei.

    poste das mal, dann kann ich das mal importieren und was ausprobieren.

    EDIT: Poste mal Deine beiden Blocklys als Export

    H 1 Antwort Letzte Antwort
    0
    • dslraserD dslraser

      @hinsen2k sagte in Präsenzmelder nach Tageszeit mit bestimmter Helligkeit:

      @dslraser
      ja, ich habe dazu auch ein Script hier aus dem Forum. Funktioniert auch einwandfrei.

      poste das mal, dann kann ich das mal importieren und was ausprobieren.

      EDIT: Poste mal Deine beiden Blocklys als Export

      H Offline
      H Offline
      hinsen2k
      schrieb am zuletzt editiert von hinsen2k
      #19

      @dslraser

      /*
       * @copyright 2020 Stephan Kreyenborg <stephan@kreyenborg.koeln>
       *
       * @author 2020 Stephan Kreyenborg <stephan@kreyenborg.koeln>
       *
       * Dieses Skript dient zur freien Verwendung in ioBroker zur Verbrauchserfassung der Shelly Geräte.
       * Jegliche Verantwortung liegt beim Benutzer. Das Skript wurde unter Berücksichtigung der bestmöglichen Nutzung
       * und Performance entwickelt.
       * Der Entwickler versichert, das keine böswilligen Systemeingriffe im originalen Skript vorhanden sind.
       *
       * Sollte das Skript wider Erwarten nicht korrekt funktionieren, so hast Du jederzeit die Möglichkeit, Dich auf
       * https://www.kreyenborg.koeln
       * für Unterstützung zu melden. Jedes Skript besitzt seine eigene Kommentarseite, auf der,
       * nach zeitlicher Möglichkeit des Autors, Hilfe angeboten wird. Ein Anrecht hierauf besteht nicht!
       *
       * Ansprüche gegenüber Dritten bestehen nicht.
       *
       * Skript Name:     Astro-Zeiten
       * Skript Version:  1.21
       * Erstell-Datum:   13. Mai 2021
       *
       */
       
      // Datenpunkte neu erstellen
      var ueberschreiben = false;
       
      // Hauptdatenpunkt unterhalb javascript
      var datenpunkt = "Astro.";
       
      // Lesbare Zeiten
      const lesbare_zeiten = ["Früher Morgen", "Frühe Dämmerung", "Morgendämmerung", "Sonnenaufgang", "Vormittag", "später Vormittag", "Mittag",
          "früher Abend", "Abend", "Sonnenuntergang", "Abenddämmerung", "später Abend", "Nacht", "Mitternacht"];
       
      // Objekte der Astro Zeiten
      const objekt = ["nightEnd", "nauticalDawn", "dawn", "sunrise", "sunriseEnd", "goldenHourEnd", "solarNoon", "goldenHour",
          "sunsetStart", "sunset", "dusk", "nauticalDusk", "night", "nadir", "tageszeitAstro", "naechsteTageszeitAstro",
          "tageszeitLesbar", "naechsteTageszeitLesbar", "aktuelleAstroZeit", "Tag", "sunriseUnix", "sunsetUnix"];
       
      // Zustände der Astro-Zeiten
      const beschreibung = ["00 - Ende der Nacht", "01 - nautische Morgendämmerung", "02 - Morgendämmerung", "03 - Sonnenaufgang",
          "04 - Ende des Sonnenaufgangs", "05 - Ende der goldenen Stunde VM", "06 - Mittag", "07 - goldene Abendstunde",
          "08 - Start des Sonnenuntergangs", "09 - Sonnenuntergang", "10 - Dämmerung Abends", "11 - nautische Dämmerung abends",
          "12 - Start der Nacht", "13 - Mitternacht", "Aktuelle Tageszeit (Astro)", "Nächste Tageszeit (Astro)",
          "Aktuelle Tageszeit (lesbar)", "Nächste Tageszeit (lesbar)", "aktuelle Astrozeit", "Solange die Sonne scheint, ist Tag", "Sunrise Unix Zeitstempel", "Sunset Unix Zeitstempel"];
       
      // Erstelle die benötigten Datenpunkte
      function datenpunkte_erstellen() {
          for (var i = 0; i < objekt.length; i++) {
              createState(datenpunkt + objekt[i], "", ueberschreiben, {
                  name: beschreibung[i],
                  desc: beschreibung[i],
                  type: "string",
                  role: "value",
                  unit: ""
              });
          }
          log("Astro: Datenpunkte erstellt!");
      }
       
      // Datenpunkte mit erstem Inhalt füllen
      function datenpunkte_fuellen() {
          for (var i = 0; i < objekt.length - 8; i++) {
              var datum = new Date();
              try {
                  var astro_zeit = zeit_formatieren(getAstroDate(objekt[i], datum));
              } catch (e) {
                   // Fehler Kontrolle
              }
              if (astro_zeit == "Invalid Date") {
                  astro_zeit = "00:00";
              }
              setState(datenpunkt + objekt[i], astro_zeit);
          }
          log("Astro: Erste Datenpunkte gefüllt!");
      }
       
      // Haupt-Skript
      function update_astro_zeiten() {
          var datum = new Date();
          var uhrzeit = zeit_formatieren(datum);
       
          // Zustand der Daten
          var aktuell = 0;
          var aktualisiert = 0;
          var keine_aktualisierung = 0;
          var astro_index = 0;
       
          // Aktuellen Tagesabschnitt bestimmen
          var ergebnis = -1;
          var naechste_element = false;
       
          // Aktuelle & kommende Tageszeit
          var aktuelle_tageszeit = 0;
          var kommende_tageszeit = 0;
       
          // Tag
          var astroTag = "Nacht";
       
          for (var i = 0; i < objekt.length - 8; i++) {
              // Temporäre Zahl
              var tmp_ergebnis = 0;
       
              // Hole Uhrzeit aus aktuellem Datenpunkt
              var dp_zeit = getState(datenpunkt + objekt[i]).val;
       
              // Hole Index aktuelle Tageszeit
              var tmp_time_uhr = Date.parse('1970-01-01 ' + uhrzeit + ':00');
              var tmp_time_dp = Date.parse('1970-01-01 ' + dp_zeit + ':00');
       
              // Aktuelle Zeit ist kleiner als DP
              if (tmp_time_uhr < tmp_time_dp) {
                  tmp_ergebnis = tmp_time_dp - tmp_time_uhr;
                  if (tmp_ergebnis <= ergebnis || ergebnis == -1) {
                      ergebnis = tmp_ergebnis;
                      astro_index = i;
                      naechste_element = true;
                  }
                  // Aktuelle Zeit ist größer als DP
              } else {
                  tmp_ergebnis = tmp_time_uhr - tmp_time_dp;
                  if (tmp_ergebnis <= ergebnis || ergebnis == -1) {
                      ergebnis = tmp_ergebnis;
                      astro_index = i;
                      naechste_element = false;
                  }
              }
              // Datenpunkt ist kleiner als aktuelle Uhrzeit. Update!
              if (dp_zeit < uhrzeit) {
                  // Neue Astro-Zeit für den nächsten Tag generieren
                  let morgen = new Date();
                  morgen.setDate(morgen.getDate() + 1);
                  try {
                      var astro_zeit = zeit_formatieren(getAstroDate(objekt[i], morgen));
                  } catch (e) {
                      // Fehler Kontrolle
                  }
                  // Datenpunkt und Astro Zeit sind gleich. Kein Update!
                  if (dp_zeit == astro_zeit) {
                      keine_aktualisierung++;
                  } else {
                      if (astro_zeit == "Invalid Date") {
                          astro_zeit = "00:00";
                      }
                      setState(datenpunkt + objekt[i], astro_zeit);
                      aktualisiert++;
                  }
              } else {
                  // Zeit kommt noch! Kein Update!
                  aktuell++;
              }
          }
          // Wenn wahr, ist der Abstand zum nächsten Zeitpunkt kleiner. Also -1 um aktuellen Index zu erhalten.
          if (naechste_element) {
              astro_index--;
          }
       
          // Navigiere zum richtigen Index
          if (astro_index > 12) {
              aktuelle_tageszeit = 13;
              kommende_tageszeit = 0;
          } else if (astro_index < 0) {
              aktuelle_tageszeit = 0;
              kommende_tageszeit = 1;
          } else {
              aktuelle_tageszeit = astro_index;
              kommende_tageszeit = astro_index + 1;
          }
       
          // Prüfe, ob aktuelle Uhrzeit zwischen Sonnenauf- und untergang liegt
          if (astro_index > 2 && astro_index < 10) {
              astroTag = "Tag";
          }
       
          // Update aktuelle Tageszeit Astro (Text)
          setState(datenpunkt + objekt[14], text_formatieren(beschreibung[aktuelle_tageszeit]));
       
          // Update kommende Tageszeit Astro (Text)
          setState(datenpunkt + objekt[15], text_formatieren(beschreibung[kommende_tageszeit]));
       
          // Update aktuelle Tageszeit lesbar (Text)
          setState(datenpunkt + objekt[16], lesbare_zeiten[aktuelle_tageszeit]);
       
          // Update kommende Tageszeit lesbar (Text)
          setState(datenpunkt + objekt[17], lesbare_zeiten[kommende_tageszeit]);
       
          // Update aktuelle AstroZeit
          setState(datenpunkt + objekt[18], objekt[aktuelle_tageszeit]);
       
          // Setze die Variable "Tag" auf "Tag", wenn Uhrzeit zwischen Sonnenauf- und untergang
          setState(datenpunkt + objekt[19], astroTag);
       
          // Setze die Variable Sunrise Unix
          let tmp_morgen = new Date();
          tmp_morgen.setDate(tmp_morgen.getDate() + 1);
          let unix_sunrise = getAstroDate("sunrise", tmp_morgen).getTime() * 1000;
          setState(datenpunkt + objekt[20], unix_sunrise.toString());
       
          // Setze die Variable Sunset Unix
          let unix_sunset = getAstroDate("sunset", tmp_morgen).getTime() * 1000;
          setState(datenpunkt + objekt[21], unix_sunset.toString());
       
          var ausgabe = "Astro: Gültige Zeiten: [aktueller Tag: " + aktuell + "] | [nächster Tag: " + keine_aktualisierung + "] | [Aktualisiert: " + aktualisiert +
              "] | Aktuelle Tageszeit: " + lesbare_zeiten[aktuelle_tageszeit] + " | Kommende Tageszeit: " + lesbare_zeiten[kommende_tageszeit];
          log(ausgabe);
      }
       
      // Funktion, um die Zeit in HH:MM zu formatieren
      function zeit_formatieren(zeit) {
          return zeit.toLocaleTimeString('de-DE', { hour12: false, hour: '2-digit', minute: '2-digit' });
      }
       
      // Funktion, um den Text zu formatieren. "Mittag" statt "6 - Mittag"
      function text_formatieren(text) {
          text = text.split("-")[1];
          text = text.substr(1, text.length);
          return text;
      }
       
      // Erster Start des Skripts und anlegen der Datenpunkte
      function update_astro_zeiten_erster_start() {
          log("Astro: Erster Start des Skriptes!")
          // Datenpunkte werden erstellt
          datenpunkte_erstellen();
       
          // erstes Füllen der Datenpunkte um 3 Sek. verzögert
          setTimeout(datenpunkte_fuellen, 3000);
       
          // Das Update der Zeiten ist um 5 Sek. verzögert
          setTimeout(update_astro_zeiten, 5000);
      }
       
      // Erster Start und Initialisierung
      update_astro_zeiten_erster_start();
       
      // Alle 60 Minunten das Hauptskript ausführen
      schedule('*/30 * * * *', update_astro_zeiten);
      

      Hier das Blockly für die Tageszeit:

      <xml xmlns="https://developers.google.com/blockly/xml">
        <block type="schedule" id="HO}_tUx1x5P:u/vEA_5=" x="-388" y="-987">
          <field name="SCHEDULE">* * * * *</field>
          <statement name="STATEMENT">
            <block type="controls_if" id="36`CLBkPw=gI06~5?w$P">
              <value name="IF0">
                <block type="time_compare_ex" id="5iTB)~59m4Q8ZGsm@C.K">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                  <field name="USE_ACTUAL_TIME">TRUE</field>
                  <field name="OPTION">==</field>
                  <value name="START_TIME">
                    <shadow type="text" id="G7%Y8jbICT/]6g9V(20Q">
                      <field name="TEXT">12:00</field>
                    </shadow>
                    <block type="get_value" id="}g3y-BP:zzvsMb^z;P^k">
                      <field name="ATTR">val</field>
                      <field name="OID">javascript.0.Astro.night</field>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="control" id="dlv_pWrCj0L)ZP_6`;cP">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="math_number" id="|UqlZ+1?U0x![Je`q=Ik">
                      <field name="NUM">0</field>
                    </block>
                  </value>
                </block>
              </statement>
              <next>
                <block type="controls_if" id="]I5~#^oY^oc|Wr=41-vU">
                  <value name="IF0">
                    <block type="time_compare_ex" id="E[FonN_mpak/rEUXD[q{">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                      <field name="USE_ACTUAL_TIME">TRUE</field>
                      <field name="OPTION">==</field>
                      <value name="START_TIME">
                        <shadow type="text" id="h#bi#I-u~?oMK:K*[*Hw">
                          <field name="TEXT">12:00</field>
                        </shadow>
                        <block type="get_value" id="t`|O?0=xj:TL3cnaZTvI">
                          <field name="ATTR">val</field>
                          <field name="OID">javascript.0.Astro.dawn</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="control" id="{^CND^PpK4B#BSRs*T7q">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="math_number" id="-u+T#TvggPN`gd4Dil]a">
                          <field name="NUM">1</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <next>
                    <block type="controls_if" id="o~/0e]i)@{ovoRyw8:u/">
                      <value name="IF0">
                        <block type="time_compare_ex" id="Q}[Jd%%)5=-8{!,{VJNY">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                          <field name="USE_ACTUAL_TIME">TRUE</field>
                          <field name="OPTION">==</field>
                          <value name="START_TIME">
                            <shadow type="text" id="9#P-9Dna`WIQp3RRn+x+">
                              <field name="TEXT">12:00</field>
                            </shadow>
                            <block type="get_value" id="Y2rB;%+8A[9Ro{2}D+}j">
                              <field name="ATTR">val</field>
                              <field name="OID">javascript.0.Astro.sunriseEnd</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="control" id="~;6MirFP9Rhx#mVX$Uwk">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="math_number" id="/nu*_Qt7.iM?ufxP7h6)">
                              <field name="NUM">2</field>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <next>
                        <block type="controls_if" id="~3gB+Tx2jw^2NY#L:81i">
                          <value name="IF0">
                            <block type="time_compare_ex" id="kiJ[:|lK|qhw)j~dJDU%">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                              <field name="USE_ACTUAL_TIME">TRUE</field>
                              <field name="OPTION">==</field>
                              <value name="START_TIME">
                                <shadow type="text" id="OfW64`w]CT!N2g6:xXS?">
                                  <field name="TEXT">12:00</field>
                                </shadow>
                                <block type="get_value" id="]tIy1SUy8GAXNL#n`gRD">
                                  <field name="ATTR">val</field>
                                  <field name="OID">javascript.0.Astro.sunsetStart</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="xsEH-mIipVT7TO5CLe0r">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="math_number" id="h9#.*=zLN3RlcykKZo%F">
                                  <field name="NUM">3</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </statement>
        </block>
      </xml>
      

      Und hier die Lichtschaltung:

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable type="interval" id="Intervall">Intervall</variable>
          <variable id="{OcV;9JI[AK?VB^,6ay*">ZählerSchleife</variable>
        </variables>
        <block type="on_ext" id="[%=J4qpQ(I$}t`g633vf" x="-388" y="-662">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="p;`jg|4T8P_Ct8]CuqMM">
              <field name="oid">hm-rpc.0.000000000.1.PRESENCE_DETECTION_STATE</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="controls_if" id="iPeJKS0Q#L$P/1=W$X44">
              <mutation else="1"></mutation>
              <value name="IF0">
                <block type="logic_operation" id=";dWn;`_10rkZ.5sAn@Fg">
                  <field name="OP">AND</field>
                  <value name="A">
                    <block type="on_source" id="s7lL,Q1ie;sKAi;gB4@#">
                      <field name="ATTR">state.val</field>
                    </block>
                  </value>
                  <value name="B">
                    <block type="logic_compare" id="JpXh=-;R#x26Ij{|(/3!">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="get_value" id="0jnnR}4f@PqIfEax//AY">
                          <field name="ATTR">val</field>
                          <field name="OID">hue.1.Raum_Badezimmer.bri</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="eGXc7}vR/ScLIh9)KDk%">
                          <field name="NUM">0</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="controls_if" id="WpBEaYZB0n9:9u)er:pI">
                  <mutation elseif="2"></mutation>
                  <value name="IF0">
                    <block type="logic_compare" id="WT]MBkj}s9,-W+mfsx(T">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="get_value" id="a%IO]Z@Udu7GKmsN3L~Y">
                          <field name="ATTR">val</field>
                          <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="mwtw0WSN28`T(Zv$#g)^">
                          <field name="NUM">0</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="control" id="=^[~qp(:U80dl4]:C8y2">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">hue.1.Raum_Badezimmer.command</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="text" id="y:iaYWblm_59,Nobf_c/">
                          <field name="TEXT">{"on":true,"bri":10,"transitiontime":50}</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <value name="IF1">
                    <block type="logic_operation" id="SwHNkU2UBTU]pxi8l%wx" inline="false">
                      <field name="OP">OR</field>
                      <value name="A">
                        <block type="logic_compare" id="Ol!~MbZZaNF^{4(GT;0t" inline="false">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id="DPdE;co$s-n@=^kSRCwa">
                              <field name="ATTR">val</field>
                              <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="math_number" id="{AGNw]{XqnMHh7jPTUdk">
                              <field name="NUM">1</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_compare" id="OxJy=Qr9$fv]t:_a3bN3" inline="false">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id="pZ]6O_0riOmP+k/mn.*G">
                              <field name="ATTR">val</field>
                              <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="math_number" id="Op._VH#:#x)k%M@ts.V3">
                              <field name="NUM">3</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO1">
                    <block type="control" id="k#!n8.9GFCHUL@e](975">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">hue.1.Raum_Badezimmer.command</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="text" id=":Bq4%$WlKw^`3I3_1f3C">
                          <field name="TEXT">{"on":true,"bri":120,"transitiontime":100}</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <value name="IF2">
                    <block type="logic_compare" id="n27r$V8V3oe2k@sIS-HV">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="get_value" id="B1dW.|5bN[z^p;(]4~f2">
                          <field name="ATTR">val</field>
                          <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="1d0S-1G)0+Gz8Zsztpm$">
                          <field name="NUM">2</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO2">
                    <block type="control" id="*R87]Zq^%OS07@]SstfI">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">hue.1.Raum_Badezimmer.command</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="text" id="cw-5+0#NKZ.560!^0S#T">
                          <field name="TEXT">{"on":true,"bri":254,"transitiontime":100}</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                </block>
              </statement>
              <statement name="ELSE">
                <block type="control" id="l@OT!K]pPfA~d;)$]c)~">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">hue.1.Raum_Badezimmer.command</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="text" id="u]f0h8eQt,h]Q(~-HL%X">
                      <field name="TEXT">{"on":false,"transitiontime":100}</field>
                    </block>
                  </value>
                </block>
              </statement>
            </block>
          </statement>
        </block>
        <block type="timeouts_setinterval" id="+J$GLv^iHlp!.DB%,M|L" disabled="true" x="812" y="-587">
          <field name="NAME">Intervall</field>
          <field name="INTERVAL">1</field>
          <field name="UNIT">sec</field>
          <statement name="STATEMENT">
            <block type="math_change" id="~[4:nL2EN-uO+GTBmIHQ">
              <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">ZählerSchleife</field>
              <value name="DELTA">
                <shadow type="math_number" id="*zbc@w*XLME=Ix;?Gz1K">
                  <field name="NUM">1</field>
                </shadow>
              </value>
            </block>
          </statement>
          <next>
            <block type="timeouts_clearinterval" id="Zi?2!1Br7B,v]oh$OrW3" disabled="true">
              <field name="NAME">Intervall</field>
              <next>
                <block type="debug" id="nh,Xx1?=!t:#JoV%B::2" disabled="true">
                  <field name="Severity">warn</field>
                  <value name="TEXT">
                    <shadow type="text" id="{Rl67zi--b,(Yz@S!oyF">
                      <field name="TEXT">test</field>
                    </shadow>
                    <block type="text_join" id="k4x.edDy}{;RQpPzHbQN">
                      <mutation items="3"></mutation>
                      <value name="ADD0">
                        <block type="text" id="c!P)8O-NkHwj0[1W%qC=">
                          <field name="TEXT">Das Licht im Bad war für </field>
                        </block>
                      </value>
                      <value name="ADD1">
                        <block type="variables_get" id="-)pM(ICZ)tX};F[w8Wc:">
                          <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">ZählerSchleife</field>
                        </block>
                      </value>
                      <value name="ADD2">
                        <block type="text" id="dv^LPCY6qzZ3*,IIHCL`">
                          <field name="TEXT"> Sekunden eingeschaltet.</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </next>
            </block>
          </next>
        </block>
      </xml>
      
      dslraserD 1 Antwort Letzte Antwort
      0
      • H hinsen2k

        @dslraser

        /*
         * @copyright 2020 Stephan Kreyenborg <stephan@kreyenborg.koeln>
         *
         * @author 2020 Stephan Kreyenborg <stephan@kreyenborg.koeln>
         *
         * Dieses Skript dient zur freien Verwendung in ioBroker zur Verbrauchserfassung der Shelly Geräte.
         * Jegliche Verantwortung liegt beim Benutzer. Das Skript wurde unter Berücksichtigung der bestmöglichen Nutzung
         * und Performance entwickelt.
         * Der Entwickler versichert, das keine böswilligen Systemeingriffe im originalen Skript vorhanden sind.
         *
         * Sollte das Skript wider Erwarten nicht korrekt funktionieren, so hast Du jederzeit die Möglichkeit, Dich auf
         * https://www.kreyenborg.koeln
         * für Unterstützung zu melden. Jedes Skript besitzt seine eigene Kommentarseite, auf der,
         * nach zeitlicher Möglichkeit des Autors, Hilfe angeboten wird. Ein Anrecht hierauf besteht nicht!
         *
         * Ansprüche gegenüber Dritten bestehen nicht.
         *
         * Skript Name:     Astro-Zeiten
         * Skript Version:  1.21
         * Erstell-Datum:   13. Mai 2021
         *
         */
         
        // Datenpunkte neu erstellen
        var ueberschreiben = false;
         
        // Hauptdatenpunkt unterhalb javascript
        var datenpunkt = "Astro.";
         
        // Lesbare Zeiten
        const lesbare_zeiten = ["Früher Morgen", "Frühe Dämmerung", "Morgendämmerung", "Sonnenaufgang", "Vormittag", "später Vormittag", "Mittag",
            "früher Abend", "Abend", "Sonnenuntergang", "Abenddämmerung", "später Abend", "Nacht", "Mitternacht"];
         
        // Objekte der Astro Zeiten
        const objekt = ["nightEnd", "nauticalDawn", "dawn", "sunrise", "sunriseEnd", "goldenHourEnd", "solarNoon", "goldenHour",
            "sunsetStart", "sunset", "dusk", "nauticalDusk", "night", "nadir", "tageszeitAstro", "naechsteTageszeitAstro",
            "tageszeitLesbar", "naechsteTageszeitLesbar", "aktuelleAstroZeit", "Tag", "sunriseUnix", "sunsetUnix"];
         
        // Zustände der Astro-Zeiten
        const beschreibung = ["00 - Ende der Nacht", "01 - nautische Morgendämmerung", "02 - Morgendämmerung", "03 - Sonnenaufgang",
            "04 - Ende des Sonnenaufgangs", "05 - Ende der goldenen Stunde VM", "06 - Mittag", "07 - goldene Abendstunde",
            "08 - Start des Sonnenuntergangs", "09 - Sonnenuntergang", "10 - Dämmerung Abends", "11 - nautische Dämmerung abends",
            "12 - Start der Nacht", "13 - Mitternacht", "Aktuelle Tageszeit (Astro)", "Nächste Tageszeit (Astro)",
            "Aktuelle Tageszeit (lesbar)", "Nächste Tageszeit (lesbar)", "aktuelle Astrozeit", "Solange die Sonne scheint, ist Tag", "Sunrise Unix Zeitstempel", "Sunset Unix Zeitstempel"];
         
        // Erstelle die benötigten Datenpunkte
        function datenpunkte_erstellen() {
            for (var i = 0; i < objekt.length; i++) {
                createState(datenpunkt + objekt[i], "", ueberschreiben, {
                    name: beschreibung[i],
                    desc: beschreibung[i],
                    type: "string",
                    role: "value",
                    unit: ""
                });
            }
            log("Astro: Datenpunkte erstellt!");
        }
         
        // Datenpunkte mit erstem Inhalt füllen
        function datenpunkte_fuellen() {
            for (var i = 0; i < objekt.length - 8; i++) {
                var datum = new Date();
                try {
                    var astro_zeit = zeit_formatieren(getAstroDate(objekt[i], datum));
                } catch (e) {
                     // Fehler Kontrolle
                }
                if (astro_zeit == "Invalid Date") {
                    astro_zeit = "00:00";
                }
                setState(datenpunkt + objekt[i], astro_zeit);
            }
            log("Astro: Erste Datenpunkte gefüllt!");
        }
         
        // Haupt-Skript
        function update_astro_zeiten() {
            var datum = new Date();
            var uhrzeit = zeit_formatieren(datum);
         
            // Zustand der Daten
            var aktuell = 0;
            var aktualisiert = 0;
            var keine_aktualisierung = 0;
            var astro_index = 0;
         
            // Aktuellen Tagesabschnitt bestimmen
            var ergebnis = -1;
            var naechste_element = false;
         
            // Aktuelle & kommende Tageszeit
            var aktuelle_tageszeit = 0;
            var kommende_tageszeit = 0;
         
            // Tag
            var astroTag = "Nacht";
         
            for (var i = 0; i < objekt.length - 8; i++) {
                // Temporäre Zahl
                var tmp_ergebnis = 0;
         
                // Hole Uhrzeit aus aktuellem Datenpunkt
                var dp_zeit = getState(datenpunkt + objekt[i]).val;
         
                // Hole Index aktuelle Tageszeit
                var tmp_time_uhr = Date.parse('1970-01-01 ' + uhrzeit + ':00');
                var tmp_time_dp = Date.parse('1970-01-01 ' + dp_zeit + ':00');
         
                // Aktuelle Zeit ist kleiner als DP
                if (tmp_time_uhr < tmp_time_dp) {
                    tmp_ergebnis = tmp_time_dp - tmp_time_uhr;
                    if (tmp_ergebnis <= ergebnis || ergebnis == -1) {
                        ergebnis = tmp_ergebnis;
                        astro_index = i;
                        naechste_element = true;
                    }
                    // Aktuelle Zeit ist größer als DP
                } else {
                    tmp_ergebnis = tmp_time_uhr - tmp_time_dp;
                    if (tmp_ergebnis <= ergebnis || ergebnis == -1) {
                        ergebnis = tmp_ergebnis;
                        astro_index = i;
                        naechste_element = false;
                    }
                }
                // Datenpunkt ist kleiner als aktuelle Uhrzeit. Update!
                if (dp_zeit < uhrzeit) {
                    // Neue Astro-Zeit für den nächsten Tag generieren
                    let morgen = new Date();
                    morgen.setDate(morgen.getDate() + 1);
                    try {
                        var astro_zeit = zeit_formatieren(getAstroDate(objekt[i], morgen));
                    } catch (e) {
                        // Fehler Kontrolle
                    }
                    // Datenpunkt und Astro Zeit sind gleich. Kein Update!
                    if (dp_zeit == astro_zeit) {
                        keine_aktualisierung++;
                    } else {
                        if (astro_zeit == "Invalid Date") {
                            astro_zeit = "00:00";
                        }
                        setState(datenpunkt + objekt[i], astro_zeit);
                        aktualisiert++;
                    }
                } else {
                    // Zeit kommt noch! Kein Update!
                    aktuell++;
                }
            }
            // Wenn wahr, ist der Abstand zum nächsten Zeitpunkt kleiner. Also -1 um aktuellen Index zu erhalten.
            if (naechste_element) {
                astro_index--;
            }
         
            // Navigiere zum richtigen Index
            if (astro_index > 12) {
                aktuelle_tageszeit = 13;
                kommende_tageszeit = 0;
            } else if (astro_index < 0) {
                aktuelle_tageszeit = 0;
                kommende_tageszeit = 1;
            } else {
                aktuelle_tageszeit = astro_index;
                kommende_tageszeit = astro_index + 1;
            }
         
            // Prüfe, ob aktuelle Uhrzeit zwischen Sonnenauf- und untergang liegt
            if (astro_index > 2 && astro_index < 10) {
                astroTag = "Tag";
            }
         
            // Update aktuelle Tageszeit Astro (Text)
            setState(datenpunkt + objekt[14], text_formatieren(beschreibung[aktuelle_tageszeit]));
         
            // Update kommende Tageszeit Astro (Text)
            setState(datenpunkt + objekt[15], text_formatieren(beschreibung[kommende_tageszeit]));
         
            // Update aktuelle Tageszeit lesbar (Text)
            setState(datenpunkt + objekt[16], lesbare_zeiten[aktuelle_tageszeit]);
         
            // Update kommende Tageszeit lesbar (Text)
            setState(datenpunkt + objekt[17], lesbare_zeiten[kommende_tageszeit]);
         
            // Update aktuelle AstroZeit
            setState(datenpunkt + objekt[18], objekt[aktuelle_tageszeit]);
         
            // Setze die Variable "Tag" auf "Tag", wenn Uhrzeit zwischen Sonnenauf- und untergang
            setState(datenpunkt + objekt[19], astroTag);
         
            // Setze die Variable Sunrise Unix
            let tmp_morgen = new Date();
            tmp_morgen.setDate(tmp_morgen.getDate() + 1);
            let unix_sunrise = getAstroDate("sunrise", tmp_morgen).getTime() * 1000;
            setState(datenpunkt + objekt[20], unix_sunrise.toString());
         
            // Setze die Variable Sunset Unix
            let unix_sunset = getAstroDate("sunset", tmp_morgen).getTime() * 1000;
            setState(datenpunkt + objekt[21], unix_sunset.toString());
         
            var ausgabe = "Astro: Gültige Zeiten: [aktueller Tag: " + aktuell + "] | [nächster Tag: " + keine_aktualisierung + "] | [Aktualisiert: " + aktualisiert +
                "] | Aktuelle Tageszeit: " + lesbare_zeiten[aktuelle_tageszeit] + " | Kommende Tageszeit: " + lesbare_zeiten[kommende_tageszeit];
            log(ausgabe);
        }
         
        // Funktion, um die Zeit in HH:MM zu formatieren
        function zeit_formatieren(zeit) {
            return zeit.toLocaleTimeString('de-DE', { hour12: false, hour: '2-digit', minute: '2-digit' });
        }
         
        // Funktion, um den Text zu formatieren. "Mittag" statt "6 - Mittag"
        function text_formatieren(text) {
            text = text.split("-")[1];
            text = text.substr(1, text.length);
            return text;
        }
         
        // Erster Start des Skripts und anlegen der Datenpunkte
        function update_astro_zeiten_erster_start() {
            log("Astro: Erster Start des Skriptes!")
            // Datenpunkte werden erstellt
            datenpunkte_erstellen();
         
            // erstes Füllen der Datenpunkte um 3 Sek. verzögert
            setTimeout(datenpunkte_fuellen, 3000);
         
            // Das Update der Zeiten ist um 5 Sek. verzögert
            setTimeout(update_astro_zeiten, 5000);
        }
         
        // Erster Start und Initialisierung
        update_astro_zeiten_erster_start();
         
        // Alle 60 Minunten das Hauptskript ausführen
        schedule('*/30 * * * *', update_astro_zeiten);
        

        Hier das Blockly für die Tageszeit:

        <xml xmlns="https://developers.google.com/blockly/xml">
          <block type="schedule" id="HO}_tUx1x5P:u/vEA_5=" x="-388" y="-987">
            <field name="SCHEDULE">* * * * *</field>
            <statement name="STATEMENT">
              <block type="controls_if" id="36`CLBkPw=gI06~5?w$P">
                <value name="IF0">
                  <block type="time_compare_ex" id="5iTB)~59m4Q8ZGsm@C.K">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                    <field name="USE_ACTUAL_TIME">TRUE</field>
                    <field name="OPTION">==</field>
                    <value name="START_TIME">
                      <shadow type="text" id="G7%Y8jbICT/]6g9V(20Q">
                        <field name="TEXT">12:00</field>
                      </shadow>
                      <block type="get_value" id="}g3y-BP:zzvsMb^z;P^k">
                        <field name="ATTR">val</field>
                        <field name="OID">javascript.0.Astro.night</field>
                      </block>
                    </value>
                  </block>
                </value>
                <statement name="DO0">
                  <block type="control" id="dlv_pWrCj0L)ZP_6`;cP">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                    <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                      <block type="math_number" id="|UqlZ+1?U0x![Je`q=Ik">
                        <field name="NUM">0</field>
                      </block>
                    </value>
                  </block>
                </statement>
                <next>
                  <block type="controls_if" id="]I5~#^oY^oc|Wr=41-vU">
                    <value name="IF0">
                      <block type="time_compare_ex" id="E[FonN_mpak/rEUXD[q{">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                        <field name="USE_ACTUAL_TIME">TRUE</field>
                        <field name="OPTION">==</field>
                        <value name="START_TIME">
                          <shadow type="text" id="h#bi#I-u~?oMK:K*[*Hw">
                            <field name="TEXT">12:00</field>
                          </shadow>
                          <block type="get_value" id="t`|O?0=xj:TL3cnaZTvI">
                            <field name="ATTR">val</field>
                            <field name="OID">javascript.0.Astro.dawn</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO0">
                      <block type="control" id="{^CND^PpK4B#BSRs*T7q">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="math_number" id="-u+T#TvggPN`gd4Dil]a">
                            <field name="NUM">1</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                    <next>
                      <block type="controls_if" id="o~/0e]i)@{ovoRyw8:u/">
                        <value name="IF0">
                          <block type="time_compare_ex" id="Q}[Jd%%)5=-8{!,{VJNY">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                            <field name="USE_ACTUAL_TIME">TRUE</field>
                            <field name="OPTION">==</field>
                            <value name="START_TIME">
                              <shadow type="text" id="9#P-9Dna`WIQp3RRn+x+">
                                <field name="TEXT">12:00</field>
                              </shadow>
                              <block type="get_value" id="Y2rB;%+8A[9Ro{2}D+}j">
                                <field name="ATTR">val</field>
                                <field name="OID">javascript.0.Astro.sunriseEnd</field>
                              </block>
                            </value>
                          </block>
                        </value>
                        <statement name="DO0">
                          <block type="control" id="~;6MirFP9Rhx#mVX$Uwk">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="math_number" id="/nu*_Qt7.iM?ufxP7h6)">
                                <field name="NUM">2</field>
                              </block>
                            </value>
                          </block>
                        </statement>
                        <next>
                          <block type="controls_if" id="~3gB+Tx2jw^2NY#L:81i">
                            <value name="IF0">
                              <block type="time_compare_ex" id="kiJ[:|lK|qhw)j~dJDU%">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
                                <field name="USE_ACTUAL_TIME">TRUE</field>
                                <field name="OPTION">==</field>
                                <value name="START_TIME">
                                  <shadow type="text" id="OfW64`w]CT!N2g6:xXS?">
                                    <field name="TEXT">12:00</field>
                                  </shadow>
                                  <block type="get_value" id="]tIy1SUy8GAXNL#n`gRD">
                                    <field name="ATTR">val</field>
                                    <field name="OID">javascript.0.Astro.sunsetStart</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <statement name="DO0">
                              <block type="control" id="xsEH-mIipVT7TO5CLe0r">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="math_number" id="h9#.*=zLN3RlcykKZo%F">
                                    <field name="NUM">3</field>
                                  </block>
                                </value>
                              </block>
                            </statement>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </statement>
          </block>
        </xml>
        

        Und hier die Lichtschaltung:

        <xml xmlns="https://developers.google.com/blockly/xml">
          <variables>
            <variable type="interval" id="Intervall">Intervall</variable>
            <variable id="{OcV;9JI[AK?VB^,6ay*">ZählerSchleife</variable>
          </variables>
          <block type="on_ext" id="[%=J4qpQ(I$}t`g633vf" x="-388" y="-662">
            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <value name="OID0">
              <shadow type="field_oid" id="p;`jg|4T8P_Ct8]CuqMM">
                <field name="oid">hm-rpc.0.000000000.1.PRESENCE_DETECTION_STATE</field>
              </shadow>
            </value>
            <statement name="STATEMENT">
              <block type="controls_if" id="iPeJKS0Q#L$P/1=W$X44">
                <mutation else="1"></mutation>
                <value name="IF0">
                  <block type="logic_operation" id=";dWn;`_10rkZ.5sAn@Fg">
                    <field name="OP">AND</field>
                    <value name="A">
                      <block type="on_source" id="s7lL,Q1ie;sKAi;gB4@#">
                        <field name="ATTR">state.val</field>
                      </block>
                    </value>
                    <value name="B">
                      <block type="logic_compare" id="JpXh=-;R#x26Ij{|(/3!">
                        <field name="OP">EQ</field>
                        <value name="A">
                          <block type="get_value" id="0jnnR}4f@PqIfEax//AY">
                            <field name="ATTR">val</field>
                            <field name="OID">hue.1.Raum_Badezimmer.bri</field>
                          </block>
                        </value>
                        <value name="B">
                          <block type="math_number" id="eGXc7}vR/ScLIh9)KDk%">
                            <field name="NUM">0</field>
                          </block>
                        </value>
                      </block>
                    </value>
                  </block>
                </value>
                <statement name="DO0">
                  <block type="controls_if" id="WpBEaYZB0n9:9u)er:pI">
                    <mutation elseif="2"></mutation>
                    <value name="IF0">
                      <block type="logic_compare" id="WT]MBkj}s9,-W+mfsx(T">
                        <field name="OP">EQ</field>
                        <value name="A">
                          <block type="get_value" id="a%IO]Z@Udu7GKmsN3L~Y">
                            <field name="ATTR">val</field>
                            <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                          </block>
                        </value>
                        <value name="B">
                          <block type="math_number" id="mwtw0WSN28`T(Zv$#g)^">
                            <field name="NUM">0</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO0">
                      <block type="control" id="=^[~qp(:U80dl4]:C8y2">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">hue.1.Raum_Badezimmer.command</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="text" id="y:iaYWblm_59,Nobf_c/">
                            <field name="TEXT">{"on":true,"bri":10,"transitiontime":50}</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                    <value name="IF1">
                      <block type="logic_operation" id="SwHNkU2UBTU]pxi8l%wx" inline="false">
                        <field name="OP">OR</field>
                        <value name="A">
                          <block type="logic_compare" id="Ol!~MbZZaNF^{4(GT;0t" inline="false">
                            <field name="OP">EQ</field>
                            <value name="A">
                              <block type="get_value" id="DPdE;co$s-n@=^kSRCwa">
                                <field name="ATTR">val</field>
                                <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="math_number" id="{AGNw]{XqnMHh7jPTUdk">
                                <field name="NUM">1</field>
                              </block>
                            </value>
                          </block>
                        </value>
                        <value name="B">
                          <block type="logic_compare" id="OxJy=Qr9$fv]t:_a3bN3" inline="false">
                            <field name="OP">EQ</field>
                            <value name="A">
                              <block type="get_value" id="pZ]6O_0riOmP+k/mn.*G">
                                <field name="ATTR">val</field>
                                <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="math_number" id="Op._VH#:#x)k%M@ts.V3">
                                <field name="NUM">3</field>
                              </block>
                            </value>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO1">
                      <block type="control" id="k#!n8.9GFCHUL@e](975">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">hue.1.Raum_Badezimmer.command</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="text" id=":Bq4%$WlKw^`3I3_1f3C">
                            <field name="TEXT">{"on":true,"bri":120,"transitiontime":100}</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                    <value name="IF2">
                      <block type="logic_compare" id="n27r$V8V3oe2k@sIS-HV">
                        <field name="OP">EQ</field>
                        <value name="A">
                          <block type="get_value" id="B1dW.|5bN[z^p;(]4~f2">
                            <field name="ATTR">val</field>
                            <field name="OID">0_userdata.0.Wetter.Tageszeit</field>
                          </block>
                        </value>
                        <value name="B">
                          <block type="math_number" id="1d0S-1G)0+Gz8Zsztpm$">
                            <field name="NUM">2</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO2">
                      <block type="control" id="*R87]Zq^%OS07@]SstfI">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">hue.1.Raum_Badezimmer.command</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="text" id="cw-5+0#NKZ.560!^0S#T">
                            <field name="TEXT">{"on":true,"bri":254,"transitiontime":100}</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                  </block>
                </statement>
                <statement name="ELSE">
                  <block type="control" id="l@OT!K]pPfA~d;)$]c)~">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                    <field name="OID">hue.1.Raum_Badezimmer.command</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                      <block type="text" id="u]f0h8eQt,h]Q(~-HL%X">
                        <field name="TEXT">{"on":false,"transitiontime":100}</field>
                      </block>
                    </value>
                  </block>
                </statement>
              </block>
            </statement>
          </block>
          <block type="timeouts_setinterval" id="+J$GLv^iHlp!.DB%,M|L" disabled="true" x="812" y="-587">
            <field name="NAME">Intervall</field>
            <field name="INTERVAL">1</field>
            <field name="UNIT">sec</field>
            <statement name="STATEMENT">
              <block type="math_change" id="~[4:nL2EN-uO+GTBmIHQ">
                <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">ZählerSchleife</field>
                <value name="DELTA">
                  <shadow type="math_number" id="*zbc@w*XLME=Ix;?Gz1K">
                    <field name="NUM">1</field>
                  </shadow>
                </value>
              </block>
            </statement>
            <next>
              <block type="timeouts_clearinterval" id="Zi?2!1Br7B,v]oh$OrW3" disabled="true">
                <field name="NAME">Intervall</field>
                <next>
                  <block type="debug" id="nh,Xx1?=!t:#JoV%B::2" disabled="true">
                    <field name="Severity">warn</field>
                    <value name="TEXT">
                      <shadow type="text" id="{Rl67zi--b,(Yz@S!oyF">
                        <field name="TEXT">test</field>
                      </shadow>
                      <block type="text_join" id="k4x.edDy}{;RQpPzHbQN">
                        <mutation items="3"></mutation>
                        <value name="ADD0">
                          <block type="text" id="c!P)8O-NkHwj0[1W%qC=">
                            <field name="TEXT">Das Licht im Bad war für </field>
                          </block>
                        </value>
                        <value name="ADD1">
                          <block type="variables_get" id="-)pM(ICZ)tX};F[w8Wc:">
                            <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">ZählerSchleife</field>
                          </block>
                        </value>
                        <value name="ADD2">
                          <block type="text" id="dv^LPCY6qzZ3*,IIHCL`">
                            <field name="TEXT"> Sekunden eingeschaltet.</field>
                          </block>
                        </value>
                      </block>
                    </value>
                  </block>
                </next>
              </block>
            </next>
          </block>
        </xml>
        
        dslraserD Offline
        dslraserD Offline
        dslraser
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #20

        @hinsen2k

        ist dieser Datenpunkt als Zahl erstellt ?

        0_userdata.0.Wetter.Tageszeit
        
        H 1 Antwort Letzte Antwort
        0
        • dslraserD dslraser

          @hinsen2k

          ist dieser Datenpunkt als Zahl erstellt ?

          0_userdata.0.Wetter.Tageszeit
          
          H Offline
          H Offline
          hinsen2k
          schrieb am zuletzt editiert von
          #21

          @dslraser
          ja, genau

          dslraserD 1 Antwort Letzte Antwort
          0
          • H hinsen2k

            @dslraser
            ja, genau

            dslraserD Offline
            dslraserD Offline
            dslraser
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #22

            @hinsen2k

            eigentlich kann das so beim Blockly Start nur "zufällig" mal stimmen und dann erst wenn das nächste Mal eine dieser Zeiten zutrifft. (und steuere passt auch nicht, da der Datenpunkt nix steuert, da sollte aktualisiere rein) Wenn ich das jetzt so starten würde, dann würde in Deinem Datenpunkt jetzt gar nix passieren, da keine dieser Zeiten Zutrifft.
            Bildschirmfoto 2021-09-19 um 10.43.33.png

            H paul53P 2 Antworten Letzte Antwort
            0
            • dslraserD dslraser

              @hinsen2k

              eigentlich kann das so beim Blockly Start nur "zufällig" mal stimmen und dann erst wenn das nächste Mal eine dieser Zeiten zutrifft. (und steuere passt auch nicht, da der Datenpunkt nix steuert, da sollte aktualisiere rein) Wenn ich das jetzt so starten würde, dann würde in Deinem Datenpunkt jetzt gar nix passieren, da keine dieser Zeiten Zutrifft.
              Bildschirmfoto 2021-09-19 um 10.43.33.png

              H Offline
              H Offline
              hinsen2k
              schrieb am zuletzt editiert von
              #23

              @dslraser

              Wenn man es ganz genau nimmt, hast Du sicher recht. Aber nachdem ich die Astro-Datenpunkte das erste Mal mit Leben gefüllt habe, hat es eben noch 24 Stunden gedauert, bis der Datenpunkt mit den Tageszeiten erstmalig Daten gezogen hat. Und das aktualisiert sich eben mit den neuen Daten. Das Astro-Script läuft, wenn ich mich nicht irre alle 30 Minuten und wird mit aktuellen Daten gefüttert. Sollte es mal so sein, dass Datenpunkte nicht 100% stimmen, weil sich die Zeiten angepasst haben, kann ich damit um. Wir reden hier ja nur über maximal ein paar Minuten Differenz zum Vortag.
              Weiterhin ist natürlich nochmal entscheidend, dass die Astrozeiten eh nie so genau sein können. Das werde ich noch zusätzlich mit HMIP Helligkeitssensoren oder eben auch Bewegungsmeldern koppeln.

              Erstmal geht es mir hier aber um das Grundverständnis und die Bedienbarkeit bevor wir den Neubau damit ausstatten. Wenn ich das später auf "blauen Dunst" kaufe und das klappt nicht, werde ich ein Problem mit meiner Frau bekommen. :-D

              1 Antwort Letzte Antwort
              0
              • dslraserD dslraser

                @hinsen2k

                eigentlich kann das so beim Blockly Start nur "zufällig" mal stimmen und dann erst wenn das nächste Mal eine dieser Zeiten zutrifft. (und steuere passt auch nicht, da der Datenpunkt nix steuert, da sollte aktualisiere rein) Wenn ich das jetzt so starten würde, dann würde in Deinem Datenpunkt jetzt gar nix passieren, da keine dieser Zeiten Zutrifft.
                Bildschirmfoto 2021-09-19 um 10.43.33.png

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

                @dslraser sagte: eigentlich kann das so beim Blockly Start nur "zufällig" mal stimmen

                Richtig. Deshalb verwendet man keine Zeitpunkte, sondern Zeitspannen und geht auch nicht den "Umweg" über ein Astro-Skript und einen zusätzlichen Datenpunkt, da Blockly alles liefert

                Bild_2021-09-19_120109.png

                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

                H 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @dslraser sagte: eigentlich kann das so beim Blockly Start nur "zufällig" mal stimmen

                  Richtig. Deshalb verwendet man keine Zeitpunkte, sondern Zeitspannen und geht auch nicht den "Umweg" über ein Astro-Skript und einen zusätzlichen Datenpunkt, da Blockly alles liefert

                  Bild_2021-09-19_120109.png

                  H Offline
                  H Offline
                  hinsen2k
                  schrieb am zuletzt editiert von
                  #25

                  @paul53

                  Da war ich gerade glücklich, dass es funktioniert und dann kommt schon eine neue Idee. Danke! Klingt logisch und ich spare mir ein paar Skripte bzw. Blocklys. Hab das direkt mal übernommen und ausgetauscht. Scheint bisher auch zu funktionieren.

                  paul53P dslraserD 2 Antworten Letzte Antwort
                  0
                  • H hinsen2k

                    @paul53

                    Da war ich gerade glücklich, dass es funktioniert und dann kommt schon eine neue Idee. Danke! Klingt logisch und ich spare mir ein paar Skripte bzw. Blocklys. Hab das direkt mal übernommen und ausgetauscht. Scheint bisher auch zu funktionieren.

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

                    @hinsen2k
                    Übrigens: Nacht(-18 °) wird im Sommer(21.6.) nur in Süddeutschland erreicht. Siehe Astrozeiten

                    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

                    1 Antwort Letzte Antwort
                    0
                    • H hinsen2k

                      @paul53

                      Da war ich gerade glücklich, dass es funktioniert und dann kommt schon eine neue Idee. Danke! Klingt logisch und ich spare mir ein paar Skripte bzw. Blocklys. Hab das direkt mal übernommen und ausgetauscht. Scheint bisher auch zu funktionieren.

                      dslraserD Offline
                      dslraserD Offline
                      dslraser
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von dslraser
                      #27

                      @hinsen2k

                      ich habe das Blockly von @paul53 mal für mich auf HUE_ command angepasst. Vielleicht kannst/willst Du es gebrauchen. @paul53 geht das auch noch kürzer, oder ist das okay ?

                      Bildschirmfoto 2021-09-19 um 15.03.30.png

                      14:06:25.115	warn	javascript.0 (321) script.js.99_Test.hinsen2k-BWM: Interval Kueche gestartet. Der Wert von bri ist: 254
                      14:07:29.767	warn	javascript.0 (321) script.js.99_Test.hinsen2k-BWM: Das Licht in der Küche war für 64 Sekunden eingeschaltet.
                      

                      @hinsen2k
                      Du brauchst zum testen nur diese 4 für Dich anpassen. (oder auch umbenennen)

                      Bildschirmfoto 2021-09-19 um 15.03.38.png
                      In anderen Blocklys frage ich zusätzlich noch diesen Datenpunkt PRESENCE_DETECTION_ACTIVEmit ab, damit ist es dann auch möglich "Dauerlicht" zu schalten, wenn der Melder vorübergehend ausgeschaltet wird. (Das nutze ich manchmal im Bad, wenn ich in der Badewanne liege. Ich schalte dann per Sprache/Alexa den Bewegungsmelder aus und das Licht bleibt dann dauerhaft an. Bei mir wird dann der Melder spätestens nach einer Stunde wieder eingeschaltet, falls ich es vergesse)

                      <xml xmlns="https://developers.google.com/blockly/xml">
                       <variables>
                         <variable id="{OcV;9JI[AK?VB^,6ay*">zaehler</variable>
                         <variable id="=C.#MjA5Hx+2SR[8~+%V">idBri</variable>
                         <variable id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</variable>
                         <variable id="56jVkfRg7_;=([T5D@.(">idPRESENCE</variable>
                         <variable id="2@A~O+K{.tV3zS;N`qAB">HUE_command</variable>
                         <variable type="interval" id="Intervall">Intervall</variable>
                       </variables>
                       <block type="variables_set" id="CSo7=}pqPg@Q3ZAgjZny" x="12" y="-88">
                         <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                         <value name="VALUE">
                           <block type="math_number" id="ev]Qo2PRH7pm|7Z@MSdG">
                             <field name="NUM">0</field>
                           </block>
                         </value>
                         <next>
                           <block type="variables_set" id="$syTrXc/u:Kjh|6nGcmE">
                             <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                             <value name="VALUE">
                               <block type="field_oid" id="{h*JQ-(=4N%VeeRU8SR{">
                                 <field name="oid">hue.0.Küchenlampe.bri</field>
                               </block>
                             </value>
                             <next>
                               <block type="variables_set" id="GQmh|l;7~*pG}:S?~7^r">
                                 <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                 <value name="VALUE">
                                   <block type="field_oid" id="K^@T*?Me;9*2Tkr{[mh#">
                                     <field name="oid">hue.0.Küchenlampe.command</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="variables_set" id="81IoUR6={LX+_w]n,kta">
                                     <field name="VAR" id="56jVkfRg7_;=([T5D@.(">idPRESENCE</field>
                                     <value name="VALUE">
                                       <block type="field_oid" id="MIY|+n}Ohw$2qK[k|nx^">
                                         <field name="oid">hm-rpc.0.000C18A996B41F.1.PRESENCE_DETECTION_STATE</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="on_ext" id=".*n{}kLu_EYHqWfSKNO9">
                                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                         <field name="CONDITION">ne</field>
                                         <field name="ACK_CONDITION"></field>
                                         <value name="OID0">
                                           <shadow type="field_oid" id="}88$?|!MiHehDltyR=+y">
                                             <field name="oid">default</field>
                                           </shadow>
                                           <block type="variables_get" id="hm_7vV!GL.;4#/``id9K">
                                             <field name="VAR" id="56jVkfRg7_;=([T5D@.(">idPRESENCE</field>
                                           </block>
                                         </value>
                                         <statement name="STATEMENT">
                                           <block type="controls_if" id="1*=gPs[40,=!N_0hRWc`">
                                             <mutation else="1"></mutation>
                                             <value name="IF0">
                                               <block type="on_source" id="^5^qPS28Y:-wsVZwWvxU">
                                                 <field name="ATTR">state.val</field>
                                               </block>
                                             </value>
                                             <statement name="DO0">
                                               <block type="controls_if" id="WpBEaYZB0n9:9u)er:pI">
                                                 <mutation elseif="1" else="1"></mutation>
                                                 <value name="IF0">
                                                   <block type="time_compare_ex" id="qBw?hLwW:r[pq_^(K|.|">
                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                     <field name="USE_ACTUAL_TIME">TRUE</field>
                                                     <field name="OPTION">between</field>
                                                     <value name="START_TIME">
                                                       <shadow type="text" id="yteJQNfl1*r!1Rlf=A9:">
                                                         <field name="TEXT">12:00</field>
                                                       </shadow>
                                                       <block type="time_astro" id=";w|LeCq`5=RJjGci]jD*">
                                                         <field name="TYPE">sunriseEnd</field>
                                                         <field name="OFFSET">0</field>
                                                       </block>
                                                     </value>
                                                     <value name="END_TIME">
                                                       <shadow type="text" id="myBO9xgsi6VvFqHA1Wr%">
                                                         <field name="TEXT">18:00</field>
                                                       </shadow>
                                                       <block type="time_astro" id="qLYSb,JaJD|nTwX4LO^1">
                                                         <field name="TYPE">sunsetStart</field>
                                                         <field name="OFFSET">0</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO0">
                                                   <block type="variables_set" id="AaOsctCq6uDCy%}L=vVM">
                                                     <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                     <value name="VALUE">
                                                       <block type="text" id="P|1@(GY)VnU.qH;Am(=7">
                                                         <field name="TEXT">{"on":true,"bri":254,"transitiontime":100}</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </statement>
                                                 <value name="IF1">
                                                   <block type="time_compare_ex" id="d6fQytsi2Nsr6V1AzFF2">
                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                     <field name="USE_ACTUAL_TIME">TRUE</field>
                                                     <field name="OPTION">between</field>
                                                     <value name="START_TIME">
                                                       <shadow type="text">
                                                         <field name="TEXT">12:00</field>
                                                       </shadow>
                                                       <block type="time_astro" id="X1rS1Nd/Zuz8HZFJu0*A">
                                                         <field name="TYPE">dawn</field>
                                                         <field name="OFFSET">0</field>
                                                       </block>
                                                     </value>
                                                     <value name="END_TIME">
                                                       <shadow type="text">
                                                         <field name="TEXT">18:00</field>
                                                       </shadow>
                                                       <block type="time_astro" id="O--5yLhi;P=K)?e#h|S}">
                                                         <field name="TYPE">nauticalDusk</field>
                                                         <field name="OFFSET">0</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO1">
                                                   <block type="variables_set" id="o-fM]-k5$T:m#dNFyYu)">
                                                     <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                     <value name="VALUE">
                                                       <block type="text" id="V=-_HT-M*}hXbK5Zz2:[">
                                                         <field name="TEXT">{"on":true,"bri":120,"transitiontime":100}</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </statement>
                                                 <statement name="ELSE">
                                                   <block type="variables_set" id="Oz7fq-F+O@c}V[NY%2DY">
                                                     <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                     <value name="VALUE">
                                                       <block type="text" id="gGupMQQz1#T$t=YL;e@U">
                                                         <field name="TEXT">{"on":true,"bri":10,"transitiontime":50}</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </statement>
                                               </block>
                                             </statement>
                                             <statement name="ELSE">
                                               <block type="variables_set" id=",H!vbhEivaCe^vw0[UKi">
                                                 <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                 <value name="VALUE">
                                                   <block type="text" id="Az6HQwwrxgR.SQWFG5)1">
                                                     <field name="TEXT">{"on":false,"bri":0,"transitiontime":100}</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </statement>
                                             <next>
                                               <block type="controls_if" id="T?J!H$p.VDfAmZ6d8-7u">
                                                 <value name="IF0">
                                                   <block type="logic_compare" id="RgQ*U2XgU=+sUqm)jj3W">
                                                     <field name="OP">NEQ</field>
                                                     <value name="A">
                                                       <block type="variables_get" id="|U:sCp-Cnn_~tKC}K!),">
                                                         <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <block type="get_value_var" id="|~]+?LU3k!!?a#$wIno7">
                                                         <field name="ATTR">val</field>
                                                         <value name="OID">
                                                           <shadow type="text" id="FvsZ~:xA-0WGv1?rVoWM">
                                                             <field name="TEXT"></field>
                                                           </shadow>
                                                           <block type="variables_get" id="^0hysL4wSLTwF{EKcun$">
                                                             <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO0">
                                                   <block type="control_ex" id="6zxVMf[6sS;BBuOgvJ*{" inline="true">
                                                     <field name="TYPE">false</field>
                                                     <field name="CLEAR_RUNNING">FALSE</field>
                                                     <value name="OID">
                                                       <shadow type="field_oid" id="A#_aF,$?fY1-ek]a*J=h">
                                                         <field name="oid">Object ID</field>
                                                       </shadow>
                                                       <block type="variables_get" id="0q#m[E|X0[?rJ./V9tv2">
                                                         <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                       </block>
                                                     </value>
                                                     <value name="VALUE">
                                                       <shadow type="logic_boolean" id="6pN|=hPQU^6D;3xGg])4">
                                                         <field name="BOOL">TRUE</field>
                                                       </shadow>
                                                       <block type="variables_get" id="U:x3qE`$08H)#4+xUDTa">
                                                         <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                       </block>
                                                     </value>
                                                     <value name="DELAY_MS">
                                                       <shadow type="math_number" id="Ga{l)Eq]hZV.SF``:)gM">
                                                         <field name="NUM">0</field>
                                                       </shadow>
                                                     </value>
                                                   </block>
                                                 </statement>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                         <next>
                                           <block type="on_ext" id="Yf[w@OIVV/#hkZHY~sAm">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                             <field name="CONDITION">ne</field>
                                             <field name="ACK_CONDITION"></field>
                                             <value name="OID0">
                                               <shadow type="field_oid" id="w6l2B;m6E^2rD8pvp1jz">
                                                 <field name="oid">default</field>
                                               </shadow>
                                               <block type="variables_get" id="L[uz0A,8GP4mcuf%DAe2">
                                                 <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                               </block>
                                             </value>
                                             <statement name="STATEMENT">
                                               <block type="controls_if" id="g==GuTnIZb`|lRGG`ZM5">
                                                 <mutation else="1"></mutation>
                                                 <value name="IF0">
                                                   <block type="logic_compare" id="ef:-=UXYJy2:4[uS#@~2">
                                                     <field name="OP">NEQ</field>
                                                     <value name="A">
                                                       <block type="get_value_var" id="-TE~VCq.ip^1FYpk@8cR">
                                                         <field name="ATTR">val</field>
                                                         <value name="OID">
                                                           <shadow type="text" id="Y[3LbM(x^Xh*Xp|Eq#nK">
                                                             <field name="TEXT"></field>
                                                           </shadow>
                                                           <block type="variables_get" id=":OhK`clcF^yyJ#gZ%P=Z">
                                                             <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <block type="math_number" id="Z|H$Sq3$*a~R)=dPeBIq">
                                                         <field name="NUM">0</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO0">
                                                   <block type="timeouts_setinterval" id="~F_s=Wf*]FL7_{}k^%OD">
                                                     <field name="NAME">Intervall</field>
                                                     <field name="INTERVAL">1</field>
                                                     <field name="UNIT">sec</field>
                                                     <statement name="STATEMENT">
                                                       <block type="math_change" id="6~OlY[q8VC@X:|jxDzu`">
                                                         <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                         <value name="DELTA">
                                                           <shadow type="math_number" id="kh|G|Vj=nLzvt9YN2Y3P">
                                                             <field name="NUM">1</field>
                                                           </shadow>
                                                         </value>
                                                       </block>
                                                     </statement>
                                                     <next>
                                                       <block type="debug" id="H[1dF{ved!t]@]g2qB9|">
                                                         <field name="Severity">warn</field>
                                                         <value name="TEXT">
                                                           <shadow type="text" id="pKWK-/qYaEKX]1)KTTbL">
                                                             <field name="TEXT">test</field>
                                                           </shadow>
                                                           <block type="text_join" id="yiiw~5f+nx5w?K7^{]]]">
                                                             <mutation items="3"></mutation>
                                                             <value name="ADD0">
                                                               <block type="text" id="4;[A-J8r:t6DJa`,L^X0">
                                                                 <field name="TEXT">Interval Kueche gestartet. </field>
                                                               </block>
                                                             </value>
                                                             <value name="ADD1">
                                                               <block type="text" id="K0^XK|:$Od1r-XfPNQiQ">
                                                                 <field name="TEXT">Der Wert von bri ist:  </field>
                                                               </block>
                                                             </value>
                                                             <value name="ADD2">
                                                               <block type="get_value_var" id="Cbo|No=@lMa|T9;u1b0{">
                                                                 <field name="ATTR">val</field>
                                                                 <value name="OID">
                                                                   <shadow type="text">
                                                                     <field name="TEXT"></field>
                                                                   </shadow>
                                                                   <block type="variables_get" id="eVRjKG+OinA7].~9OX;G">
                                                                     <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </statement>
                                                 <statement name="ELSE">
                                                   <block type="timeouts_clearinterval" id="`OYWq]o8YWI0RA)$0vd$">
                                                     <field name="NAME">Intervall</field>
                                                     <next>
                                                       <block type="debug" id="yI{#,$[w4sSQb4$,!flq">
                                                         <field name="Severity">warn</field>
                                                         <value name="TEXT">
                                                           <shadow type="text">
                                                             <field name="TEXT">test</field>
                                                           </shadow>
                                                           <block type="text_join" id="xEyYoMGlT,JGNHcP]/1M">
                                                             <mutation items="3"></mutation>
                                                             <value name="ADD0">
                                                               <block type="text" id="ID@s6b@1Z0~c^5tAJyMl">
                                                                 <field name="TEXT">Das Licht in der Küche war für </field>
                                                               </block>
                                                             </value>
                                                             <value name="ADD1">
                                                               <block type="variables_get" id="TMK@?HrS6WCY?WeVv8o,">
                                                                 <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                               </block>
                                                             </value>
                                                             <value name="ADD2">
                                                               <block type="text" id="DbVAxZm(X?CV%$7d#[Dn">
                                                                 <field name="TEXT"> Sekunden eingeschaltet.</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <next>
                                                           <block type="variables_set" id="qp$k(`+r=)fg!`{-s`cj">
                                                             <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                             <value name="VALUE">
                                                               <block type="math_number" id="|4.1@jPli@YP_NO7,HSk">
                                                                 <field name="NUM">0</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </statement>
                                               </block>
                                             </statement>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                      </xml>
                      

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • dslraserD dslraser

                        @hinsen2k

                        ich habe das Blockly von @paul53 mal für mich auf HUE_ command angepasst. Vielleicht kannst/willst Du es gebrauchen. @paul53 geht das auch noch kürzer, oder ist das okay ?

                        Bildschirmfoto 2021-09-19 um 15.03.30.png

                        14:06:25.115	warn	javascript.0 (321) script.js.99_Test.hinsen2k-BWM: Interval Kueche gestartet. Der Wert von bri ist: 254
                        14:07:29.767	warn	javascript.0 (321) script.js.99_Test.hinsen2k-BWM: Das Licht in der Küche war für 64 Sekunden eingeschaltet.
                        

                        @hinsen2k
                        Du brauchst zum testen nur diese 4 für Dich anpassen. (oder auch umbenennen)

                        Bildschirmfoto 2021-09-19 um 15.03.38.png
                        In anderen Blocklys frage ich zusätzlich noch diesen Datenpunkt PRESENCE_DETECTION_ACTIVEmit ab, damit ist es dann auch möglich "Dauerlicht" zu schalten, wenn der Melder vorübergehend ausgeschaltet wird. (Das nutze ich manchmal im Bad, wenn ich in der Badewanne liege. Ich schalte dann per Sprache/Alexa den Bewegungsmelder aus und das Licht bleibt dann dauerhaft an. Bei mir wird dann der Melder spätestens nach einer Stunde wieder eingeschaltet, falls ich es vergesse)

                        <xml xmlns="https://developers.google.com/blockly/xml">
                         <variables>
                           <variable id="{OcV;9JI[AK?VB^,6ay*">zaehler</variable>
                           <variable id="=C.#MjA5Hx+2SR[8~+%V">idBri</variable>
                           <variable id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</variable>
                           <variable id="56jVkfRg7_;=([T5D@.(">idPRESENCE</variable>
                           <variable id="2@A~O+K{.tV3zS;N`qAB">HUE_command</variable>
                           <variable type="interval" id="Intervall">Intervall</variable>
                         </variables>
                         <block type="variables_set" id="CSo7=}pqPg@Q3ZAgjZny" x="12" y="-88">
                           <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                           <value name="VALUE">
                             <block type="math_number" id="ev]Qo2PRH7pm|7Z@MSdG">
                               <field name="NUM">0</field>
                             </block>
                           </value>
                           <next>
                             <block type="variables_set" id="$syTrXc/u:Kjh|6nGcmE">
                               <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                               <value name="VALUE">
                                 <block type="field_oid" id="{h*JQ-(=4N%VeeRU8SR{">
                                   <field name="oid">hue.0.Küchenlampe.bri</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="variables_set" id="GQmh|l;7~*pG}:S?~7^r">
                                   <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                   <value name="VALUE">
                                     <block type="field_oid" id="K^@T*?Me;9*2Tkr{[mh#">
                                       <field name="oid">hue.0.Küchenlampe.command</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="variables_set" id="81IoUR6={LX+_w]n,kta">
                                       <field name="VAR" id="56jVkfRg7_;=([T5D@.(">idPRESENCE</field>
                                       <value name="VALUE">
                                         <block type="field_oid" id="MIY|+n}Ohw$2qK[k|nx^">
                                           <field name="oid">hm-rpc.0.000C18A996B41F.1.PRESENCE_DETECTION_STATE</field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="on_ext" id=".*n{}kLu_EYHqWfSKNO9">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                           <field name="CONDITION">ne</field>
                                           <field name="ACK_CONDITION"></field>
                                           <value name="OID0">
                                             <shadow type="field_oid" id="}88$?|!MiHehDltyR=+y">
                                               <field name="oid">default</field>
                                             </shadow>
                                             <block type="variables_get" id="hm_7vV!GL.;4#/``id9K">
                                               <field name="VAR" id="56jVkfRg7_;=([T5D@.(">idPRESENCE</field>
                                             </block>
                                           </value>
                                           <statement name="STATEMENT">
                                             <block type="controls_if" id="1*=gPs[40,=!N_0hRWc`">
                                               <mutation else="1"></mutation>
                                               <value name="IF0">
                                                 <block type="on_source" id="^5^qPS28Y:-wsVZwWvxU">
                                                   <field name="ATTR">state.val</field>
                                                 </block>
                                               </value>
                                               <statement name="DO0">
                                                 <block type="controls_if" id="WpBEaYZB0n9:9u)er:pI">
                                                   <mutation elseif="1" else="1"></mutation>
                                                   <value name="IF0">
                                                     <block type="time_compare_ex" id="qBw?hLwW:r[pq_^(K|.|">
                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                       <field name="USE_ACTUAL_TIME">TRUE</field>
                                                       <field name="OPTION">between</field>
                                                       <value name="START_TIME">
                                                         <shadow type="text" id="yteJQNfl1*r!1Rlf=A9:">
                                                           <field name="TEXT">12:00</field>
                                                         </shadow>
                                                         <block type="time_astro" id=";w|LeCq`5=RJjGci]jD*">
                                                           <field name="TYPE">sunriseEnd</field>
                                                           <field name="OFFSET">0</field>
                                                         </block>
                                                       </value>
                                                       <value name="END_TIME">
                                                         <shadow type="text" id="myBO9xgsi6VvFqHA1Wr%">
                                                           <field name="TEXT">18:00</field>
                                                         </shadow>
                                                         <block type="time_astro" id="qLYSb,JaJD|nTwX4LO^1">
                                                           <field name="TYPE">sunsetStart</field>
                                                           <field name="OFFSET">0</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <statement name="DO0">
                                                     <block type="variables_set" id="AaOsctCq6uDCy%}L=vVM">
                                                       <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                       <value name="VALUE">
                                                         <block type="text" id="P|1@(GY)VnU.qH;Am(=7">
                                                           <field name="TEXT">{"on":true,"bri":254,"transitiontime":100}</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </statement>
                                                   <value name="IF1">
                                                     <block type="time_compare_ex" id="d6fQytsi2Nsr6V1AzFF2">
                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                       <field name="USE_ACTUAL_TIME">TRUE</field>
                                                       <field name="OPTION">between</field>
                                                       <value name="START_TIME">
                                                         <shadow type="text">
                                                           <field name="TEXT">12:00</field>
                                                         </shadow>
                                                         <block type="time_astro" id="X1rS1Nd/Zuz8HZFJu0*A">
                                                           <field name="TYPE">dawn</field>
                                                           <field name="OFFSET">0</field>
                                                         </block>
                                                       </value>
                                                       <value name="END_TIME">
                                                         <shadow type="text">
                                                           <field name="TEXT">18:00</field>
                                                         </shadow>
                                                         <block type="time_astro" id="O--5yLhi;P=K)?e#h|S}">
                                                           <field name="TYPE">nauticalDusk</field>
                                                           <field name="OFFSET">0</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <statement name="DO1">
                                                     <block type="variables_set" id="o-fM]-k5$T:m#dNFyYu)">
                                                       <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                       <value name="VALUE">
                                                         <block type="text" id="V=-_HT-M*}hXbK5Zz2:[">
                                                           <field name="TEXT">{"on":true,"bri":120,"transitiontime":100}</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </statement>
                                                   <statement name="ELSE">
                                                     <block type="variables_set" id="Oz7fq-F+O@c}V[NY%2DY">
                                                       <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                       <value name="VALUE">
                                                         <block type="text" id="gGupMQQz1#T$t=YL;e@U">
                                                           <field name="TEXT">{"on":true,"bri":10,"transitiontime":50}</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </statement>
                                                 </block>
                                               </statement>
                                               <statement name="ELSE">
                                                 <block type="variables_set" id=",H!vbhEivaCe^vw0[UKi">
                                                   <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                   <value name="VALUE">
                                                     <block type="text" id="Az6HQwwrxgR.SQWFG5)1">
                                                       <field name="TEXT">{"on":false,"bri":0,"transitiontime":100}</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </statement>
                                               <next>
                                                 <block type="controls_if" id="T?J!H$p.VDfAmZ6d8-7u">
                                                   <value name="IF0">
                                                     <block type="logic_compare" id="RgQ*U2XgU=+sUqm)jj3W">
                                                       <field name="OP">NEQ</field>
                                                       <value name="A">
                                                         <block type="variables_get" id="|U:sCp-Cnn_~tKC}K!),">
                                                           <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                         </block>
                                                       </value>
                                                       <value name="B">
                                                         <block type="get_value_var" id="|~]+?LU3k!!?a#$wIno7">
                                                           <field name="ATTR">val</field>
                                                           <value name="OID">
                                                             <shadow type="text" id="FvsZ~:xA-0WGv1?rVoWM">
                                                               <field name="TEXT"></field>
                                                             </shadow>
                                                             <block type="variables_get" id="^0hysL4wSLTwF{EKcun$">
                                                               <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <statement name="DO0">
                                                     <block type="control_ex" id="6zxVMf[6sS;BBuOgvJ*{" inline="true">
                                                       <field name="TYPE">false</field>
                                                       <field name="CLEAR_RUNNING">FALSE</field>
                                                       <value name="OID">
                                                         <shadow type="field_oid" id="A#_aF,$?fY1-ek]a*J=h">
                                                           <field name="oid">Object ID</field>
                                                         </shadow>
                                                         <block type="variables_get" id="0q#m[E|X0[?rJ./V9tv2">
                                                           <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                         </block>
                                                       </value>
                                                       <value name="VALUE">
                                                         <shadow type="logic_boolean" id="6pN|=hPQU^6D;3xGg])4">
                                                           <field name="BOOL">TRUE</field>
                                                         </shadow>
                                                         <block type="variables_get" id="U:x3qE`$08H)#4+xUDTa">
                                                           <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                         </block>
                                                       </value>
                                                       <value name="DELAY_MS">
                                                         <shadow type="math_number" id="Ga{l)Eq]hZV.SF``:)gM">
                                                           <field name="NUM">0</field>
                                                         </shadow>
                                                       </value>
                                                     </block>
                                                   </statement>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                           <next>
                                             <block type="on_ext" id="Yf[w@OIVV/#hkZHY~sAm">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                               <field name="CONDITION">ne</field>
                                               <field name="ACK_CONDITION"></field>
                                               <value name="OID0">
                                                 <shadow type="field_oid" id="w6l2B;m6E^2rD8pvp1jz">
                                                   <field name="oid">default</field>
                                                 </shadow>
                                                 <block type="variables_get" id="L[uz0A,8GP4mcuf%DAe2">
                                                   <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                 </block>
                                               </value>
                                               <statement name="STATEMENT">
                                                 <block type="controls_if" id="g==GuTnIZb`|lRGG`ZM5">
                                                   <mutation else="1"></mutation>
                                                   <value name="IF0">
                                                     <block type="logic_compare" id="ef:-=UXYJy2:4[uS#@~2">
                                                       <field name="OP">NEQ</field>
                                                       <value name="A">
                                                         <block type="get_value_var" id="-TE~VCq.ip^1FYpk@8cR">
                                                           <field name="ATTR">val</field>
                                                           <value name="OID">
                                                             <shadow type="text" id="Y[3LbM(x^Xh*Xp|Eq#nK">
                                                               <field name="TEXT"></field>
                                                             </shadow>
                                                             <block type="variables_get" id=":OhK`clcF^yyJ#gZ%P=Z">
                                                               <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <value name="B">
                                                         <block type="math_number" id="Z|H$Sq3$*a~R)=dPeBIq">
                                                           <field name="NUM">0</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <statement name="DO0">
                                                     <block type="timeouts_setinterval" id="~F_s=Wf*]FL7_{}k^%OD">
                                                       <field name="NAME">Intervall</field>
                                                       <field name="INTERVAL">1</field>
                                                       <field name="UNIT">sec</field>
                                                       <statement name="STATEMENT">
                                                         <block type="math_change" id="6~OlY[q8VC@X:|jxDzu`">
                                                           <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                           <value name="DELTA">
                                                             <shadow type="math_number" id="kh|G|Vj=nLzvt9YN2Y3P">
                                                               <field name="NUM">1</field>
                                                             </shadow>
                                                           </value>
                                                         </block>
                                                       </statement>
                                                       <next>
                                                         <block type="debug" id="H[1dF{ved!t]@]g2qB9|">
                                                           <field name="Severity">warn</field>
                                                           <value name="TEXT">
                                                             <shadow type="text" id="pKWK-/qYaEKX]1)KTTbL">
                                                               <field name="TEXT">test</field>
                                                             </shadow>
                                                             <block type="text_join" id="yiiw~5f+nx5w?K7^{]]]">
                                                               <mutation items="3"></mutation>
                                                               <value name="ADD0">
                                                                 <block type="text" id="4;[A-J8r:t6DJa`,L^X0">
                                                                   <field name="TEXT">Interval Kueche gestartet. </field>
                                                                 </block>
                                                               </value>
                                                               <value name="ADD1">
                                                                 <block type="text" id="K0^XK|:$Od1r-XfPNQiQ">
                                                                   <field name="TEXT">Der Wert von bri ist:  </field>
                                                                 </block>
                                                               </value>
                                                               <value name="ADD2">
                                                                 <block type="get_value_var" id="Cbo|No=@lMa|T9;u1b0{">
                                                                   <field name="ATTR">val</field>
                                                                   <value name="OID">
                                                                     <shadow type="text">
                                                                       <field name="TEXT"></field>
                                                                     </shadow>
                                                                     <block type="variables_get" id="eVRjKG+OinA7].~9OX;G">
                                                                       <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </statement>
                                                   <statement name="ELSE">
                                                     <block type="timeouts_clearinterval" id="`OYWq]o8YWI0RA)$0vd$">
                                                       <field name="NAME">Intervall</field>
                                                       <next>
                                                         <block type="debug" id="yI{#,$[w4sSQb4$,!flq">
                                                           <field name="Severity">warn</field>
                                                           <value name="TEXT">
                                                             <shadow type="text">
                                                               <field name="TEXT">test</field>
                                                             </shadow>
                                                             <block type="text_join" id="xEyYoMGlT,JGNHcP]/1M">
                                                               <mutation items="3"></mutation>
                                                               <value name="ADD0">
                                                                 <block type="text" id="ID@s6b@1Z0~c^5tAJyMl">
                                                                   <field name="TEXT">Das Licht in der Küche war für </field>
                                                                 </block>
                                                               </value>
                                                               <value name="ADD1">
                                                                 <block type="variables_get" id="TMK@?HrS6WCY?WeVv8o,">
                                                                   <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                                 </block>
                                                               </value>
                                                               <value name="ADD2">
                                                                 <block type="text" id="DbVAxZm(X?CV%$7d#[Dn">
                                                                   <field name="TEXT"> Sekunden eingeschaltet.</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <next>
                                                             <block type="variables_set" id="qp$k(`+r=)fg!`{-s`cj">
                                                               <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                               <value name="VALUE">
                                                                 <block type="math_number" id="|4.1@jPli@YP_NO7,HSk">
                                                                   <field name="NUM">0</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </statement>
                                                 </block>
                                               </statement>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                        </xml>
                        

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

                        @dslraser sagte: geht das auch noch kürzer, oder ist das okay ?

                        "schreibe" sollte nur einmal (am Ende) ausgeführt werden, möglichst auch nur dann, wenn sich das Kommando geändert hat (Störpegel).

                        Bild_2021-09-19_144055.png

                        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

                        dslraserD 1 Antwort Letzte Antwort
                        1
                        • paul53P paul53

                          @dslraser sagte: geht das auch noch kürzer, oder ist das okay ?

                          "schreibe" sollte nur einmal (am Ende) ausgeführt werden, möglichst auch nur dann, wenn sich das Kommando geändert hat (Störpegel).

                          Bild_2021-09-19_144055.png

                          dslraserD Offline
                          dslraserD Offline
                          dslraser
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von dslraser
                          #29

                          @paul53
                          danke ich habe es für mich so angepasst (hier auch)

                          H 1 Antwort Letzte Antwort
                          0
                          • dslraserD dslraser

                            @paul53
                            danke ich habe es für mich so angepasst (hier auch)

                            H Offline
                            H Offline
                            hinsen2k
                            schrieb am zuletzt editiert von
                            #30

                            @dslraser

                            Das hatte ich, natürlich noch umständlicher, auch gerade gelöst.
                            Nun wollte ich aber statt dem Ergebnis in Sekunden das ganze in Stunden und Minuten haben, was sich entsprechend sekündlich aktualisiert.
                            Das Ziel ist, die laufende Zeit in Minuten und Sekunden in der Vis anzuzeigen. Ich hab den Timer in der VIS umgerechnet, was aber zur Folge hat, dass alles was <10 Sekunden ist, nur einstellig dargestellt wird. Ist noch suboptimal...

                            dslraserD 1 Antwort Letzte Antwort
                            0
                            • H hinsen2k

                              @dslraser

                              Das hatte ich, natürlich noch umständlicher, auch gerade gelöst.
                              Nun wollte ich aber statt dem Ergebnis in Sekunden das ganze in Stunden und Minuten haben, was sich entsprechend sekündlich aktualisiert.
                              Das Ziel ist, die laufende Zeit in Minuten und Sekunden in der Vis anzuzeigen. Ich hab den Timer in der VIS umgerechnet, was aber zur Folge hat, dass alles was <10 Sekunden ist, nur einstellig dargestellt wird. Ist noch suboptimal...

                              dslraserD Offline
                              dslraserD Offline
                              dslraser
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #31

                              @hinsen2k sagte in Präsenzmelder nach Tageszeit mit bestimmter Helligkeit:

                              Das Ziel ist, die laufende Zeit in Minuten und Sekunden

                              also Minuten und Sekunden (keine Stunden ? ) Ich frage nur zur Sicherheit. Welches Format ? getrennt als Zahlen oder mit : dazwischen, oder als Text ?

                              H 1 Antwort Letzte Antwort
                              0
                              • dslraserD dslraser

                                @hinsen2k sagte in Präsenzmelder nach Tageszeit mit bestimmter Helligkeit:

                                Das Ziel ist, die laufende Zeit in Minuten und Sekunden

                                also Minuten und Sekunden (keine Stunden ? ) Ich frage nur zur Sicherheit. Welches Format ? getrennt als Zahlen oder mit : dazwischen, oder als Text ?

                                H Offline
                                H Offline
                                hinsen2k
                                schrieb am zuletzt editiert von
                                #32

                                @dslraser

                                Erst hatte ich nur an Minuten und Sekunden gedacht. Jetzt wo Du von einer chilligen Zeit in der Badewanne gesprochen hast, könnte es auch mal ne Stunde sein. :blush: :grin: Und die Darstellung dann mit :
                                Aber eben keine statische Zeit, sondern eine die sich in der VIS (oder dem Datenpunkt) sekündlich aktualisiert.

                                paul53P 1 Antwort Letzte Antwort
                                0
                                • H hinsen2k

                                  @dslraser

                                  Erst hatte ich nur an Minuten und Sekunden gedacht. Jetzt wo Du von einer chilligen Zeit in der Badewanne gesprochen hast, könnte es auch mal ne Stunde sein. :blush: :grin: Und die Darstellung dann mit :
                                  Aber eben keine statische Zeit, sondern eine die sich in der VIS (oder dem Datenpunkt) sekündlich aktualisiert.

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

                                  @hinsen2k
                                  JS-Funktion sec2string(s) mit Ergebnis. Inhalt

                                  return formatDate(1000 * s, 'h:mm:ss');
                                  

                                  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

                                  dslraserD 1 Antwort Letzte Antwort
                                  0
                                  • paul53P paul53

                                    @hinsen2k
                                    JS-Funktion sec2string(s) mit Ergebnis. Inhalt

                                    return formatDate(1000 * s, 'h:mm:ss');
                                    
                                    dslraserD Offline
                                    dslraserD Offline
                                    dslraser
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #34

                                    @paul53 sagte in Präsenzmelder nach Tageszeit mit bestimmter Helligkeit:

                                    sec2string

                                    Danke

                                    Bildschirmfoto 2021-09-19 um 15.25.52.png

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                     <variables>
                                       <variable id="{OcV;9JI[AK?VB^,6ay*">zaehler</variable>
                                       <variable id="Fj?b^GiMZ`!yB^^;6JeN">s</variable>
                                       <variable id="=C.#MjA5Hx+2SR[8~+%V">idBri</variable>
                                       <variable id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</variable>
                                       <variable id="56jVkfRg7_;=([T5D@.(">idPRESENCE</variable>
                                       <variable id="2@A~O+K{.tV3zS;N`qAB">HUE_command</variable>
                                       <variable type="interval" id="Intervall">Intervall</variable>
                                     </variables>
                                     <block type="variables_set" id="CSo7=}pqPg@Q3ZAgjZny" x="12" y="-88">
                                       <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                       <value name="VALUE">
                                         <block type="math_number" id="ev]Qo2PRH7pm|7Z@MSdG">
                                           <field name="NUM">0</field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="variables_set" id="$syTrXc/u:Kjh|6nGcmE">
                                           <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                           <value name="VALUE">
                                             <block type="field_oid" id="{h*JQ-(=4N%VeeRU8SR{">
                                               <field name="oid">hue.0.Küchenlampe.bri</field>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="variables_set" id="GQmh|l;7~*pG}:S?~7^r">
                                               <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                               <value name="VALUE">
                                                 <block type="field_oid" id="K^@T*?Me;9*2Tkr{[mh#">
                                                   <field name="oid">hue.0.Küchenlampe.command</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="variables_set" id="81IoUR6={LX+_w]n,kta">
                                                   <field name="VAR" id="56jVkfRg7_;=([T5D@.(">idPRESENCE</field>
                                                   <value name="VALUE">
                                                     <block type="field_oid" id="MIY|+n}Ohw$2qK[k|nx^">
                                                       <field name="oid">hm-rpc.0.000C18A996B41F.1.PRESENCE_DETECTION_STATE</field>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="on_ext" id=".*n{}kLu_EYHqWfSKNO9">
                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                       <field name="CONDITION">ne</field>
                                                       <field name="ACK_CONDITION"></field>
                                                       <value name="OID0">
                                                         <shadow type="field_oid" id="}88$?|!MiHehDltyR=+y">
                                                           <field name="oid">default</field>
                                                         </shadow>
                                                         <block type="variables_get" id="hm_7vV!GL.;4#/``id9K">
                                                           <field name="VAR" id="56jVkfRg7_;=([T5D@.(">idPRESENCE</field>
                                                         </block>
                                                       </value>
                                                       <statement name="STATEMENT">
                                                         <block type="controls_if" id="1*=gPs[40,=!N_0hRWc`">
                                                           <mutation else="1"></mutation>
                                                           <value name="IF0">
                                                             <block type="on_source" id="^5^qPS28Y:-wsVZwWvxU">
                                                               <field name="ATTR">state.val</field>
                                                             </block>
                                                           </value>
                                                           <statement name="DO0">
                                                             <block type="controls_if" id="WpBEaYZB0n9:9u)er:pI">
                                                               <mutation elseif="1" else="1"></mutation>
                                                               <value name="IF0">
                                                                 <block type="time_compare_ex" id="qBw?hLwW:r[pq_^(K|.|">
                                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                                   <field name="USE_ACTUAL_TIME">TRUE</field>
                                                                   <field name="OPTION">between</field>
                                                                   <value name="START_TIME">
                                                                     <shadow type="text" id="yteJQNfl1*r!1Rlf=A9:">
                                                                       <field name="TEXT">12:00</field>
                                                                     </shadow>
                                                                     <block type="time_astro" id=";w|LeCq`5=RJjGci]jD*">
                                                                       <field name="TYPE">sunriseEnd</field>
                                                                       <field name="OFFSET">0</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="END_TIME">
                                                                     <shadow type="text" id="myBO9xgsi6VvFqHA1Wr%">
                                                                       <field name="TEXT">18:00</field>
                                                                     </shadow>
                                                                     <block type="time_astro" id="qLYSb,JaJD|nTwX4LO^1">
                                                                       <field name="TYPE">sunsetStart</field>
                                                                       <field name="OFFSET">0</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <statement name="DO0">
                                                                 <block type="variables_set" id="AaOsctCq6uDCy%}L=vVM">
                                                                   <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                   <value name="VALUE">
                                                                     <block type="text" id="P|1@(GY)VnU.qH;Am(=7">
                                                                       <field name="TEXT">{"on":true,"bri":254,"transitiontime":100}</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </statement>
                                                               <value name="IF1">
                                                                 <block type="time_compare_ex" id="d6fQytsi2Nsr6V1AzFF2">
                                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                                   <field name="USE_ACTUAL_TIME">TRUE</field>
                                                                   <field name="OPTION">between</field>
                                                                   <value name="START_TIME">
                                                                     <shadow type="text">
                                                                       <field name="TEXT">12:00</field>
                                                                     </shadow>
                                                                     <block type="time_astro" id="X1rS1Nd/Zuz8HZFJu0*A">
                                                                       <field name="TYPE">dawn</field>
                                                                       <field name="OFFSET">0</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="END_TIME">
                                                                     <shadow type="text">
                                                                       <field name="TEXT">18:00</field>
                                                                     </shadow>
                                                                     <block type="time_astro" id="O--5yLhi;P=K)?e#h|S}">
                                                                       <field name="TYPE">nauticalDusk</field>
                                                                       <field name="OFFSET">0</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <statement name="DO1">
                                                                 <block type="variables_set" id="o-fM]-k5$T:m#dNFyYu)">
                                                                   <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                   <value name="VALUE">
                                                                     <block type="text" id="V=-_HT-M*}hXbK5Zz2:[">
                                                                       <field name="TEXT">{"on":true,"bri":120,"transitiontime":100}</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </statement>
                                                               <statement name="ELSE">
                                                                 <block type="variables_set" id="Oz7fq-F+O@c}V[NY%2DY">
                                                                   <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                   <value name="VALUE">
                                                                     <block type="text" id="gGupMQQz1#T$t=YL;e@U">
                                                                       <field name="TEXT">{"on":true,"bri":10,"transitiontime":50}</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </statement>
                                                             </block>
                                                           </statement>
                                                           <statement name="ELSE">
                                                             <block type="variables_set" id=",H!vbhEivaCe^vw0[UKi">
                                                               <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                               <value name="VALUE">
                                                                 <block type="text" id="Az6HQwwrxgR.SQWFG5)1">
                                                                   <field name="TEXT">{"on":false,"bri":0,"transitiontime":100}</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </statement>
                                                           <next>
                                                             <block type="controls_if" id="T?J!H$p.VDfAmZ6d8-7u">
                                                               <value name="IF0">
                                                                 <block type="logic_compare" id="RgQ*U2XgU=+sUqm)jj3W">
                                                                   <field name="OP">NEQ</field>
                                                                   <value name="A">
                                                                     <block type="variables_get" id="|U:sCp-Cnn_~tKC}K!),">
                                                                       <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="B">
                                                                     <block type="get_value_var" id="|~]+?LU3k!!?a#$wIno7">
                                                                       <field name="ATTR">val</field>
                                                                       <value name="OID">
                                                                         <shadow type="text" id="FvsZ~:xA-0WGv1?rVoWM">
                                                                           <field name="TEXT"></field>
                                                                         </shadow>
                                                                         <block type="variables_get" id="^0hysL4wSLTwF{EKcun$">
                                                                           <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <statement name="DO0">
                                                                 <block type="control_ex" id="6zxVMf[6sS;BBuOgvJ*{" inline="true">
                                                                   <field name="TYPE">false</field>
                                                                   <field name="CLEAR_RUNNING">FALSE</field>
                                                                   <value name="OID">
                                                                     <shadow type="field_oid" id="A#_aF,$?fY1-ek]a*J=h">
                                                                       <field name="oid">Object ID</field>
                                                                     </shadow>
                                                                     <block type="variables_get" id="0q#m[E|X0[?rJ./V9tv2">
                                                                       <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="VALUE">
                                                                     <shadow type="logic_boolean" id="6pN|=hPQU^6D;3xGg])4">
                                                                       <field name="BOOL">TRUE</field>
                                                                     </shadow>
                                                                     <block type="variables_get" id="U:x3qE`$08H)#4+xUDTa">
                                                                       <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="DELAY_MS">
                                                                     <shadow type="math_number" id="Ga{l)Eq]hZV.SF``:)gM">
                                                                       <field name="NUM">0</field>
                                                                     </shadow>
                                                                   </value>
                                                                 </block>
                                                               </statement>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </statement>
                                                       <next>
                                                         <block type="on_ext" id="Yf[w@OIVV/#hkZHY~sAm">
                                                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                           <field name="CONDITION">ne</field>
                                                           <field name="ACK_CONDITION"></field>
                                                           <value name="OID0">
                                                             <shadow type="field_oid" id="w6l2B;m6E^2rD8pvp1jz">
                                                               <field name="oid">default</field>
                                                             </shadow>
                                                             <block type="variables_get" id="L[uz0A,8GP4mcuf%DAe2">
                                                               <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                             </block>
                                                           </value>
                                                           <statement name="STATEMENT">
                                                             <block type="controls_if" id="g==GuTnIZb`|lRGG`ZM5">
                                                               <mutation else="1"></mutation>
                                                               <value name="IF0">
                                                                 <block type="logic_compare" id="ef:-=UXYJy2:4[uS#@~2">
                                                                   <field name="OP">NEQ</field>
                                                                   <value name="A">
                                                                     <block type="get_value_var" id="-TE~VCq.ip^1FYpk@8cR">
                                                                       <field name="ATTR">val</field>
                                                                       <value name="OID">
                                                                         <shadow type="text" id="Y[3LbM(x^Xh*Xp|Eq#nK">
                                                                           <field name="TEXT"></field>
                                                                         </shadow>
                                                                         <block type="variables_get" id=":OhK`clcF^yyJ#gZ%P=Z">
                                                                           <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <value name="B">
                                                                     <block type="math_number" id="Z|H$Sq3$*a~R)=dPeBIq">
                                                                       <field name="NUM">0</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <statement name="DO0">
                                                                 <block type="timeouts_setinterval" id="~F_s=Wf*]FL7_{}k^%OD">
                                                                   <field name="NAME">Intervall</field>
                                                                   <field name="INTERVAL">1</field>
                                                                   <field name="UNIT">sec</field>
                                                                   <statement name="STATEMENT">
                                                                     <block type="math_change" id="6~OlY[q8VC@X:|jxDzu`">
                                                                       <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                                       <value name="DELTA">
                                                                         <shadow type="math_number" id="kh|G|Vj=nLzvt9YN2Y3P">
                                                                           <field name="NUM">1</field>
                                                                         </shadow>
                                                                       </value>
                                                                     </block>
                                                                   </statement>
                                                                   <next>
                                                                     <block type="debug" id="H[1dF{ved!t]@]g2qB9|">
                                                                       <field name="Severity">warn</field>
                                                                       <value name="TEXT">
                                                                         <shadow type="text" id="pKWK-/qYaEKX]1)KTTbL">
                                                                           <field name="TEXT">test</field>
                                                                         </shadow>
                                                                         <block type="text_join" id="yiiw~5f+nx5w?K7^{]]]">
                                                                           <mutation items="3"></mutation>
                                                                           <value name="ADD0">
                                                                             <block type="text" id="4;[A-J8r:t6DJa`,L^X0">
                                                                               <field name="TEXT">Interval Kueche gestartet. </field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="ADD1">
                                                                             <block type="text" id="K0^XK|:$Od1r-XfPNQiQ">
                                                                               <field name="TEXT">Der Wert von bri ist:  </field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="ADD2">
                                                                             <block type="get_value_var" id="Cbo|No=@lMa|T9;u1b0{">
                                                                               <field name="ATTR">val</field>
                                                                               <value name="OID">
                                                                                 <shadow type="text">
                                                                                   <field name="TEXT"></field>
                                                                                 </shadow>
                                                                                 <block type="variables_get" id="eVRjKG+OinA7].~9OX;G">
                                                                                   <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                                                 </block>
                                                                               </value>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </next>
                                                                 </block>
                                                               </statement>
                                                               <statement name="ELSE">
                                                                 <block type="timeouts_clearinterval" id="`OYWq]o8YWI0RA)$0vd$">
                                                                   <field name="NAME">Intervall</field>
                                                                   <next>
                                                                     <block type="debug" id="yI{#,$[w4sSQb4$,!flq">
                                                                       <field name="Severity">warn</field>
                                                                       <value name="TEXT">
                                                                         <shadow type="text">
                                                                           <field name="TEXT">test</field>
                                                                         </shadow>
                                                                         <block type="text_join" id="xEyYoMGlT,JGNHcP]/1M">
                                                                           <mutation items="3"></mutation>
                                                                           <value name="ADD0">
                                                                             <block type="text" id="ID@s6b@1Z0~c^5tAJyMl">
                                                                               <field name="TEXT">Das Licht in der Küche war für </field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="ADD1">
                                                                             <block type="procedures_callcustomreturn" id="H09rTE~e-~eAQL-{ia/l">
                                                                               <mutation name="sec2string">
                                                                                 <arg name="s"></arg>
                                                                               </mutation>
                                                                               <value name="ARG0">
                                                                                 <block type="variables_get" id="TMK@?HrS6WCY?WeVv8o,">
                                                                                   <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                                                 </block>
                                                                               </value>
                                                                             </block>
                                                                           </value>
                                                                           <value name="ADD2">
                                                                             <block type="text" id="DbVAxZm(X?CV%$7d#[Dn">
                                                                               <field name="TEXT"> eingeschaltet.</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <next>
                                                                         <block type="variables_set" id="qp$k(`+r=)fg!`{-s`cj">
                                                                           <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                                           <value name="VALUE">
                                                                             <block type="math_number" id="|4.1@jPli@YP_NO7,HSk">
                                                                               <field name="NUM">0</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </next>
                                                                     </block>
                                                                   </next>
                                                                 </block>
                                                               </statement>
                                                             </block>
                                                           </statement>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                     <block type="procedures_defcustomreturn" id=";_1+?A#3w_u2L]X@Br_;" x="813" y="-37">
                                       <mutation statements="false">
                                         <arg name="s" varid="Fj?b^GiMZ`!yB^^;6JeN"></arg>
                                       </mutation>
                                       <field name="NAME">sec2string</field>
                                       <field name="SCRIPT">cmV0dXJuIGZvcm1hdERhdGUoMTAwMCAqIHMsICdoOm1tOnNzJyk7</field>
                                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                     </block>
                                    </xml>
                                    

                                    H 1 Antwort Letzte Antwort
                                    0
                                    • dslraserD dslraser

                                      @paul53 sagte in Präsenzmelder nach Tageszeit mit bestimmter Helligkeit:

                                      sec2string

                                      Danke

                                      Bildschirmfoto 2021-09-19 um 15.25.52.png

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                       <variables>
                                         <variable id="{OcV;9JI[AK?VB^,6ay*">zaehler</variable>
                                         <variable id="Fj?b^GiMZ`!yB^^;6JeN">s</variable>
                                         <variable id="=C.#MjA5Hx+2SR[8~+%V">idBri</variable>
                                         <variable id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</variable>
                                         <variable id="56jVkfRg7_;=([T5D@.(">idPRESENCE</variable>
                                         <variable id="2@A~O+K{.tV3zS;N`qAB">HUE_command</variable>
                                         <variable type="interval" id="Intervall">Intervall</variable>
                                       </variables>
                                       <block type="variables_set" id="CSo7=}pqPg@Q3ZAgjZny" x="12" y="-88">
                                         <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                         <value name="VALUE">
                                           <block type="math_number" id="ev]Qo2PRH7pm|7Z@MSdG">
                                             <field name="NUM">0</field>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="variables_set" id="$syTrXc/u:Kjh|6nGcmE">
                                             <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                             <value name="VALUE">
                                               <block type="field_oid" id="{h*JQ-(=4N%VeeRU8SR{">
                                                 <field name="oid">hue.0.Küchenlampe.bri</field>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="variables_set" id="GQmh|l;7~*pG}:S?~7^r">
                                                 <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                 <value name="VALUE">
                                                   <block type="field_oid" id="K^@T*?Me;9*2Tkr{[mh#">
                                                     <field name="oid">hue.0.Küchenlampe.command</field>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="variables_set" id="81IoUR6={LX+_w]n,kta">
                                                     <field name="VAR" id="56jVkfRg7_;=([T5D@.(">idPRESENCE</field>
                                                     <value name="VALUE">
                                                       <block type="field_oid" id="MIY|+n}Ohw$2qK[k|nx^">
                                                         <field name="oid">hm-rpc.0.000C18A996B41F.1.PRESENCE_DETECTION_STATE</field>
                                                       </block>
                                                     </value>
                                                     <next>
                                                       <block type="on_ext" id=".*n{}kLu_EYHqWfSKNO9">
                                                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                         <field name="CONDITION">ne</field>
                                                         <field name="ACK_CONDITION"></field>
                                                         <value name="OID0">
                                                           <shadow type="field_oid" id="}88$?|!MiHehDltyR=+y">
                                                             <field name="oid">default</field>
                                                           </shadow>
                                                           <block type="variables_get" id="hm_7vV!GL.;4#/``id9K">
                                                             <field name="VAR" id="56jVkfRg7_;=([T5D@.(">idPRESENCE</field>
                                                           </block>
                                                         </value>
                                                         <statement name="STATEMENT">
                                                           <block type="controls_if" id="1*=gPs[40,=!N_0hRWc`">
                                                             <mutation else="1"></mutation>
                                                             <value name="IF0">
                                                               <block type="on_source" id="^5^qPS28Y:-wsVZwWvxU">
                                                                 <field name="ATTR">state.val</field>
                                                               </block>
                                                             </value>
                                                             <statement name="DO0">
                                                               <block type="controls_if" id="WpBEaYZB0n9:9u)er:pI">
                                                                 <mutation elseif="1" else="1"></mutation>
                                                                 <value name="IF0">
                                                                   <block type="time_compare_ex" id="qBw?hLwW:r[pq_^(K|.|">
                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                                     <field name="USE_ACTUAL_TIME">TRUE</field>
                                                                     <field name="OPTION">between</field>
                                                                     <value name="START_TIME">
                                                                       <shadow type="text" id="yteJQNfl1*r!1Rlf=A9:">
                                                                         <field name="TEXT">12:00</field>
                                                                       </shadow>
                                                                       <block type="time_astro" id=";w|LeCq`5=RJjGci]jD*">
                                                                         <field name="TYPE">sunriseEnd</field>
                                                                         <field name="OFFSET">0</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="END_TIME">
                                                                       <shadow type="text" id="myBO9xgsi6VvFqHA1Wr%">
                                                                         <field name="TEXT">18:00</field>
                                                                       </shadow>
                                                                       <block type="time_astro" id="qLYSb,JaJD|nTwX4LO^1">
                                                                         <field name="TYPE">sunsetStart</field>
                                                                         <field name="OFFSET">0</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <statement name="DO0">
                                                                   <block type="variables_set" id="AaOsctCq6uDCy%}L=vVM">
                                                                     <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                     <value name="VALUE">
                                                                       <block type="text" id="P|1@(GY)VnU.qH;Am(=7">
                                                                         <field name="TEXT">{"on":true,"bri":254,"transitiontime":100}</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </statement>
                                                                 <value name="IF1">
                                                                   <block type="time_compare_ex" id="d6fQytsi2Nsr6V1AzFF2">
                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                                                                     <field name="USE_ACTUAL_TIME">TRUE</field>
                                                                     <field name="OPTION">between</field>
                                                                     <value name="START_TIME">
                                                                       <shadow type="text">
                                                                         <field name="TEXT">12:00</field>
                                                                       </shadow>
                                                                       <block type="time_astro" id="X1rS1Nd/Zuz8HZFJu0*A">
                                                                         <field name="TYPE">dawn</field>
                                                                         <field name="OFFSET">0</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="END_TIME">
                                                                       <shadow type="text">
                                                                         <field name="TEXT">18:00</field>
                                                                       </shadow>
                                                                       <block type="time_astro" id="O--5yLhi;P=K)?e#h|S}">
                                                                         <field name="TYPE">nauticalDusk</field>
                                                                         <field name="OFFSET">0</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <statement name="DO1">
                                                                   <block type="variables_set" id="o-fM]-k5$T:m#dNFyYu)">
                                                                     <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                     <value name="VALUE">
                                                                       <block type="text" id="V=-_HT-M*}hXbK5Zz2:[">
                                                                         <field name="TEXT">{"on":true,"bri":120,"transitiontime":100}</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </statement>
                                                                 <statement name="ELSE">
                                                                   <block type="variables_set" id="Oz7fq-F+O@c}V[NY%2DY">
                                                                     <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                     <value name="VALUE">
                                                                       <block type="text" id="gGupMQQz1#T$t=YL;e@U">
                                                                         <field name="TEXT">{"on":true,"bri":10,"transitiontime":50}</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </statement>
                                                               </block>
                                                             </statement>
                                                             <statement name="ELSE">
                                                               <block type="variables_set" id=",H!vbhEivaCe^vw0[UKi">
                                                                 <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                 <value name="VALUE">
                                                                   <block type="text" id="Az6HQwwrxgR.SQWFG5)1">
                                                                     <field name="TEXT">{"on":false,"bri":0,"transitiontime":100}</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </statement>
                                                             <next>
                                                               <block type="controls_if" id="T?J!H$p.VDfAmZ6d8-7u">
                                                                 <value name="IF0">
                                                                   <block type="logic_compare" id="RgQ*U2XgU=+sUqm)jj3W">
                                                                     <field name="OP">NEQ</field>
                                                                     <value name="A">
                                                                       <block type="variables_get" id="|U:sCp-Cnn_~tKC}K!),">
                                                                         <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="B">
                                                                       <block type="get_value_var" id="|~]+?LU3k!!?a#$wIno7">
                                                                         <field name="ATTR">val</field>
                                                                         <value name="OID">
                                                                           <shadow type="text" id="FvsZ~:xA-0WGv1?rVoWM">
                                                                             <field name="TEXT"></field>
                                                                           </shadow>
                                                                           <block type="variables_get" id="^0hysL4wSLTwF{EKcun$">
                                                                             <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <statement name="DO0">
                                                                   <block type="control_ex" id="6zxVMf[6sS;BBuOgvJ*{" inline="true">
                                                                     <field name="TYPE">false</field>
                                                                     <field name="CLEAR_RUNNING">FALSE</field>
                                                                     <value name="OID">
                                                                       <shadow type="field_oid" id="A#_aF,$?fY1-ek]a*J=h">
                                                                         <field name="oid">Object ID</field>
                                                                       </shadow>
                                                                       <block type="variables_get" id="0q#m[E|X0[?rJ./V9tv2">
                                                                         <field name="VAR" id="R[Tme+A4^8]zgN@T9eGi">idHUE_command</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="VALUE">
                                                                       <shadow type="logic_boolean" id="6pN|=hPQU^6D;3xGg])4">
                                                                         <field name="BOOL">TRUE</field>
                                                                       </shadow>
                                                                       <block type="variables_get" id="U:x3qE`$08H)#4+xUDTa">
                                                                         <field name="VAR" id="2@A~O+K{.tV3zS;N`qAB">HUE_command</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="DELAY_MS">
                                                                       <shadow type="math_number" id="Ga{l)Eq]hZV.SF``:)gM">
                                                                         <field name="NUM">0</field>
                                                                       </shadow>
                                                                     </value>
                                                                   </block>
                                                                 </statement>
                                                               </block>
                                                             </next>
                                                           </block>
                                                         </statement>
                                                         <next>
                                                           <block type="on_ext" id="Yf[w@OIVV/#hkZHY~sAm">
                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                             <field name="CONDITION">ne</field>
                                                             <field name="ACK_CONDITION"></field>
                                                             <value name="OID0">
                                                               <shadow type="field_oid" id="w6l2B;m6E^2rD8pvp1jz">
                                                                 <field name="oid">default</field>
                                                               </shadow>
                                                               <block type="variables_get" id="L[uz0A,8GP4mcuf%DAe2">
                                                                 <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                               </block>
                                                             </value>
                                                             <statement name="STATEMENT">
                                                               <block type="controls_if" id="g==GuTnIZb`|lRGG`ZM5">
                                                                 <mutation else="1"></mutation>
                                                                 <value name="IF0">
                                                                   <block type="logic_compare" id="ef:-=UXYJy2:4[uS#@~2">
                                                                     <field name="OP">NEQ</field>
                                                                     <value name="A">
                                                                       <block type="get_value_var" id="-TE~VCq.ip^1FYpk@8cR">
                                                                         <field name="ATTR">val</field>
                                                                         <value name="OID">
                                                                           <shadow type="text" id="Y[3LbM(x^Xh*Xp|Eq#nK">
                                                                             <field name="TEXT"></field>
                                                                           </shadow>
                                                                           <block type="variables_get" id=":OhK`clcF^yyJ#gZ%P=Z">
                                                                             <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <value name="B">
                                                                       <block type="math_number" id="Z|H$Sq3$*a~R)=dPeBIq">
                                                                         <field name="NUM">0</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <statement name="DO0">
                                                                   <block type="timeouts_setinterval" id="~F_s=Wf*]FL7_{}k^%OD">
                                                                     <field name="NAME">Intervall</field>
                                                                     <field name="INTERVAL">1</field>
                                                                     <field name="UNIT">sec</field>
                                                                     <statement name="STATEMENT">
                                                                       <block type="math_change" id="6~OlY[q8VC@X:|jxDzu`">
                                                                         <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                                         <value name="DELTA">
                                                                           <shadow type="math_number" id="kh|G|Vj=nLzvt9YN2Y3P">
                                                                             <field name="NUM">1</field>
                                                                           </shadow>
                                                                         </value>
                                                                       </block>
                                                                     </statement>
                                                                     <next>
                                                                       <block type="debug" id="H[1dF{ved!t]@]g2qB9|">
                                                                         <field name="Severity">warn</field>
                                                                         <value name="TEXT">
                                                                           <shadow type="text" id="pKWK-/qYaEKX]1)KTTbL">
                                                                             <field name="TEXT">test</field>
                                                                           </shadow>
                                                                           <block type="text_join" id="yiiw~5f+nx5w?K7^{]]]">
                                                                             <mutation items="3"></mutation>
                                                                             <value name="ADD0">
                                                                               <block type="text" id="4;[A-J8r:t6DJa`,L^X0">
                                                                                 <field name="TEXT">Interval Kueche gestartet. </field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="ADD1">
                                                                               <block type="text" id="K0^XK|:$Od1r-XfPNQiQ">
                                                                                 <field name="TEXT">Der Wert von bri ist:  </field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="ADD2">
                                                                               <block type="get_value_var" id="Cbo|No=@lMa|T9;u1b0{">
                                                                                 <field name="ATTR">val</field>
                                                                                 <value name="OID">
                                                                                   <shadow type="text">
                                                                                     <field name="TEXT"></field>
                                                                                   </shadow>
                                                                                   <block type="variables_get" id="eVRjKG+OinA7].~9OX;G">
                                                                                     <field name="VAR" id="=C.#MjA5Hx+2SR[8~+%V">idBri</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </next>
                                                                   </block>
                                                                 </statement>
                                                                 <statement name="ELSE">
                                                                   <block type="timeouts_clearinterval" id="`OYWq]o8YWI0RA)$0vd$">
                                                                     <field name="NAME">Intervall</field>
                                                                     <next>
                                                                       <block type="debug" id="yI{#,$[w4sSQb4$,!flq">
                                                                         <field name="Severity">warn</field>
                                                                         <value name="TEXT">
                                                                           <shadow type="text">
                                                                             <field name="TEXT">test</field>
                                                                           </shadow>
                                                                           <block type="text_join" id="xEyYoMGlT,JGNHcP]/1M">
                                                                             <mutation items="3"></mutation>
                                                                             <value name="ADD0">
                                                                               <block type="text" id="ID@s6b@1Z0~c^5tAJyMl">
                                                                                 <field name="TEXT">Das Licht in der Küche war für </field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="ADD1">
                                                                               <block type="procedures_callcustomreturn" id="H09rTE~e-~eAQL-{ia/l">
                                                                                 <mutation name="sec2string">
                                                                                   <arg name="s"></arg>
                                                                                 </mutation>
                                                                                 <value name="ARG0">
                                                                                   <block type="variables_get" id="TMK@?HrS6WCY?WeVv8o,">
                                                                                     <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <value name="ADD2">
                                                                               <block type="text" id="DbVAxZm(X?CV%$7d#[Dn">
                                                                                 <field name="TEXT"> eingeschaltet.</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <next>
                                                                           <block type="variables_set" id="qp$k(`+r=)fg!`{-s`cj">
                                                                             <field name="VAR" id="{OcV;9JI[AK?VB^,6ay*">zaehler</field>
                                                                             <value name="VALUE">
                                                                               <block type="math_number" id="|4.1@jPli@YP_NO7,HSk">
                                                                                 <field name="NUM">0</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </next>
                                                                       </block>
                                                                     </next>
                                                                   </block>
                                                                 </statement>
                                                               </block>
                                                             </statement>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                       <block type="procedures_defcustomreturn" id=";_1+?A#3w_u2L]X@Br_;" x="813" y="-37">
                                         <mutation statements="false">
                                           <arg name="s" varid="Fj?b^GiMZ`!yB^^;6JeN"></arg>
                                         </mutation>
                                         <field name="NAME">sec2string</field>
                                         <field name="SCRIPT">cmV0dXJuIGZvcm1hdERhdGUoMTAwMCAqIHMsICdoOm1tOnNzJyk7</field>
                                         <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                       </block>
                                      </xml>
                                      

                                      H Offline
                                      H Offline
                                      hinsen2k
                                      schrieb am zuletzt editiert von
                                      #35

                                      @dslraser das ist eine statische Anzeige am Ende, nachdem das Licht wieder aus ist, richtig? Ich bekomme bei 4 Minuten Licht an eine Debugmeldung, dass das Licht 0:11:12 eingeschaltet war. Das stimmt nicht. Wo ist da wohl der Haken? Hast Du noch eine Idee für einen laufenden Timer, der sich sekündlich aktualisiert? Die zaehler-Variable kann ich ja nicht an die VIS übergeben, oder gibt es da doch ne Möglichkeit?

                                      paul53P dslraserD 2 Antworten Letzte Antwort
                                      0
                                      • H hinsen2k

                                        @dslraser das ist eine statische Anzeige am Ende, nachdem das Licht wieder aus ist, richtig? Ich bekomme bei 4 Minuten Licht an eine Debugmeldung, dass das Licht 0:11:12 eingeschaltet war. Das stimmt nicht. Wo ist da wohl der Haken? Hast Du noch eine Idee für einen laufenden Timer, der sich sekündlich aktualisiert? Die zaehler-Variable kann ich ja nicht an die VIS übergeben, oder gibt es da doch ne Möglichkeit?

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

                                        @hinsen2k sagte: laufenden Timer, der sich sekündlich aktualisiert?

                                        Im Intervall in einen Datenpunkt für Vis schreiben:

                                        Bild_2021-09-19_160447.png

                                        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

                                        1 Antwort Letzte Antwort
                                        0
                                        • H hinsen2k

                                          @dslraser das ist eine statische Anzeige am Ende, nachdem das Licht wieder aus ist, richtig? Ich bekomme bei 4 Minuten Licht an eine Debugmeldung, dass das Licht 0:11:12 eingeschaltet war. Das stimmt nicht. Wo ist da wohl der Haken? Hast Du noch eine Idee für einen laufenden Timer, der sich sekündlich aktualisiert? Die zaehler-Variable kann ich ja nicht an die VIS übergeben, oder gibt es da doch ne Möglichkeit?

                                          dslraserD Offline
                                          dslraserD Offline
                                          dslraser
                                          Forum Testing Most Active
                                          schrieb am zuletzt editiert von dslraser
                                          #37

                                          @hinsen2k
                                          ich habe mir mal 2 Datenpunkte zusätzlich gemacht.

                                          Bildschirmfoto 2021-09-19 um 16.00.13.png

                                          {
                                            "_id": "0_userdata.0.Licht.Kueche.Einschaltdauer",
                                            "type": "state",
                                            "common": {
                                              "name": "Licht Kueche eingeschaltet seit...",
                                              "role": "text",
                                              "type": "string",
                                              "read": true,
                                              "write": false,
                                              "def": "0:00:00"
                                            },
                                            "native": {},
                                            "from": "system.adapter.admin.0",
                                            "user": "system.user.admin",
                                            "ts": 1632058900895,
                                            "acl": {
                                              "object": 1636,
                                              "state": 1636,
                                              "owner": "system.user.admin",
                                              "ownerGroup": "system.group.administrator"
                                            }
                                          }
                                          
                                          {
                                            "_id": "0_userdata.0.Licht.Kueche.letzte_Einschaltdauer",
                                            "type": "state",
                                            "common": {
                                              "name": "Licht Kueche letzte Einschaltdauer",
                                              "role": "text",
                                              "type": "string",
                                              "read": true,
                                              "write": false,
                                              "def": "0:00:00"
                                            },
                                            "native": {},
                                            "from": "system.adapter.admin.0",
                                            "user": "system.user.admin",
                                            "ts": 1632058900895,
                                            "acl": {
                                              "object": 1636,
                                              "state": 1636,
                                              "owner": "system.user.admin",
                                              "ownerGroup": "system.group.administrator"
                                            }
                                          }
                                          

                                          Aber mit dem Intervall stimmt bei mir was noch nicht, das stoppt nicht immer zuverlässig, bzw. bri geht nicht immer direkt auf 0, das kann aber auch am Polling der HUE Bridge liegen. Ich probiere auch erst noch...

                                          Bildschirmfoto 2021-09-19 um 16.09.15.png

                                          Bildschirmfoto 2021-09-19 um 16.09.07.png

                                          H 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

                                          363

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          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