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. [Frage] Blockly zufällig im Zeitbereich

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.6k

[Frage] Blockly zufällig im Zeitbereich

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
40 Beiträge 6 Kommentatoren 5.6k Aufrufe 2 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.
  • A Offline
    A Offline
    andyb
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich würde gerne zur Anwesenheitssimulation im angegebenen Zeitbereich einschalten.

    Ich finde keinen passenden Baustein als Trigger

    so?

    ! <block 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml" type="astro" id="vOdIC2f-cxe3Fw91q4@" x="-462" y="742"> ! <field name="TYPE">night</field> ! <field name="OFFSET">45</field> ! <statement name="STATEMENT"><block type="controls_if" id=")Kfco!pFpTd*{4v=%;L+"><value name="IF0"><block type="logic_compare" id="Obk-^bf7EBKGGQAHspl"><field name="OP">EQ</field>
    ! <value name="A"><block type="get_value" id="vNMQOarn%Jm6f8.DpO{"><field name="ATTR">val</field> ! <field name="OID">javascript.0.Modus.AWS</field></block></value> ! <value name="B"><block type="logic_boolean" id="%_*mxijikz++/8hb=_%T"><field name="BOOL">TRUE</field></block></value></block></value> ! <statement name="DO0"><block type="controls_if" id="VXYk(|jxbDq+Vr+e]1!"><value name="IF0"><block type="logic_compare" id="UZT5.q]hv(zV^q#kkvEW"><field name="OP">EQ</field>
    ! <value name="A"><block type="get_value" id="Flm{x{=Gbqly?Zv=*=-!"><field name="ATTR">val</field>
    ! <field name="OID">javascript.0.Modus.Gastmodus</field></block></value>
    ! <value name="B"><block type="logic_boolean" id="=3tl~@.H.r#^oyX83u(I"><field name="BOOL">FALSE</field></block></value></block></value>
    ! <statement name="DO0"><block type="timeouts_setinterval" id="h!BRd3bN:-?sFaV-+vzj"><field name="NAME">Intervall</field>
    ! <field name="INTERVAL">3600000</field>
    ! <statement name="STATEMENT"><block type="control" id="K+v]dW2Pm}q#!MxHmk2l"><mutation delay_input="false"></mutation>
    ! <field name="OID">hm-rpc.0.LEQ0747868.1.ON_TIME</field>
    ! <field name="WITH_DELAY">FALSE</field>
    ! <value name="VALUE"><block type="math_number" id="KZaXi(n3yuZsCdFt-#5g"><field name="NUM">300</field></block></value>
    ! <next><block type="control" id="by1D,7OwL,QjqnFHl(,R"><mutation delay_input="true"></mutation>
    ! <field name="OID">hm-rpc.0.LEQ0747868.1.STATE</field>
    ! <field name="WITH_DELAY">TRUE</field>
    ! <field name="DELAY_MS">1000</field>
    ! <field name="CLEAR_RUNNING">FALSE</field>
    ! <value name="VALUE"><block type="logic_boolean" id="Dmo(.#MK2Ori~|KGPkuY"><field name="BOOL">TRUE</field></block></value>
    ! <next><block type="controls_if" id="Z.@.EXfbBRlUMlg{!Z!"><value name="IF0"><block type="time_compare_ex" id="e/_G[d|S6NW^{6[qiruD"><mutation 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="]OME?qyjG70+~d/U2m6"><field name="TEXT">24:00</field></shadow></value></block></value>
    ! <statement name="DO0"><block type="timeouts_clearinterval" id="/h7#aP6_C3AJ.[qH6Vw{"><field name="NAME">Intervall</field></block></statement></block></next></block></next></block></statement></block></statement></block></statement></block></statement></block>

    1 Antwort Letzte Antwort
    0
    • rantanplanR Offline
      rantanplanR Offline
      rantanplan
      schrieb am zuletzt editiert von
      #2

      Hallo andyb

      Sollte funktionieren.

      Ist natürlich schwer zu testen, weil das Script nur einmal am Tag ausgeführt wird.

      Ich nehme dafür gerne den Cron Trigger und frage dann einige Bedingungen ab.

      Wenn Du z.B. die AWS nach dem Zeitpunkt "Nacht + 45" aktivierst, passiert da nichts mehr.

      Die Bedingung für die Intervall-Unterbrechung würde ich auch ändern.

      Das die Abfrage genau um 24:00 Uhr erfolgt ist nicht sicher.

      Bedingungen zum Tageswechsel sind immer etwas heikel.

      Nimm lieber "größer als" oder "gleich oder größer als" 23:30.

      Falls die Abfrage nach 24:00 erfolgt, würde 24:00 >= 00:01 unwahr sein.

      Deshalb 23:30, das passt auf jeden Fall in Dein Intervall.

      Grüße

      Rantanplan

      CCU3 / MS Server 2019(VM) / Scripten mit Blockly

      1 Antwort Letzte Antwort
      0
      • A Offline
        A Offline
        andyb
        schrieb am zuletzt editiert von
        #3

        Danke., ändere ich.

        Ich wollte eigentlich da wo ich den festen Intervall hab, was variables haben….

        1 Antwort Letzte Antwort
        0
        • lobomauL Offline
          lobomauL Offline
          lobomau
          schrieb am zuletzt editiert von
          #4

          Gibt es sonst eine Möglichkeit nur mit Blockly einen zufälligen Zeitbereich zu erstellen?

          Ich möchte dass nachts ein Licht 10 mal schaltet, aber jeweils im zufälligen Bereich von 0 bis 5 Minuten.

          Host: NUC8i3 mit Proxmox:

          • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
          • Slave: Pi4
          1 Antwort Letzte Antwort
          0
          • rantanplanR Offline
            rantanplanR Offline
            rantanplan
            schrieb am zuletzt editiert von
            #5

            @lobomau:

            Gibt es sonst eine Möglichkeit nur mit Blockly einen zufälligen Zeitbereich zu erstellen?

            Ich möchte dass nachts ein Licht 10 mal schaltet, aber jeweils im zufälligen Bereich von 0 bis 5 Minuten. `

            Hallo lobomau

            Nicht direkt. Leider läßt Blockly in vielen Bausteinen keine Variablen zu.

            Aber vom Rücken, durch die Brust ins Auge könnte es gehen.

            Auf die Schnelle fällt mir dazu folgende Möglichkeit ein.
            147_blocky_zufall.png

            Der Export:

            ! ````
            <xml xmlns="http://www.w3.org/1999/xhtml"><block type="schedule" id="#q]X?XA6,T#oVG0~p2-k" x="-137" y="-162"><field name="SCHEDULE">/5 * * * * </field>
            <statement name="STATEMENT"><block type="controls_if" id="SPb@1vaoX%#8}Ztk9|.{"><value name="IF0"><block type="logic_compare" id=")|K
            D~LFn0EfiYM^m@Nn"><field name="OP">NEQ</field>
            <value name="A"><block type="variables_get" id="d71W,pX%pJ72;8{kfdS"><field name="VAR">TimerAktiv</field></block></value> <value name="B"><block type="logic_boolean" id="(%,AB0sDN!#y4ic_{VjS"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="variables_set" id="}.-BM_s!1lz.V*hvU@AY"><field name="VAR">valZufall</field> <value name="VALUE"><block type="math_random_int" id="3Q/HHpL~EpbBr^HE~1df"><value name="FROM"><shadow type="math_number" id="A.LJ5W.UeBqK(Tl2GvZ"><field name="NUM">1</field></shadow></value>
            <value name="TO"><shadow type="math_number" id="T{/dDJqQ1%YlMESV9(Nv"><field name="NUM">3</field></shadow></value></block></value>
            <next><block type="controls_if" id="kGg5uFcR8[gxXgSzVl5n"><mutation elseif="2"></mutation>
            <value name="IF0"><block type="logic_compare" id="?nV9axQ.ztUS+?mvR:^v"><field name="OP">EQ</field>
            <value name="A"><block type="variables_get" id="eGQClh}yINaaminM]h@M"><field name="VAR">valZufall</field></block></value>
            <value name="B"><block type="math_number" id="w)p6@Kl(M%rZZC2w[fk^"><field name="NUM">1</field></block></value></block></value>
            <statement name="DO0"><block type="procedures_callnoreturn" id="K0BT]GJP:#6Le6RdwqF8"><mutation name="ZufallEins"></mutation></block></statement>
            <value name="IF1"><block type="logic_compare" id="M0[QB+35R8YTEh=5Xge
            "><field name="OP">EQ</field>
            <value name="A"><block type="variables_get" id="(tpMntf[RTlhk6nXF#Xk"><field name="VAR">valZufall</field></block></value>
            <value name="B"><block type="math_number" id="Nc.|J~M;eYEIWS|Q!J;l"><field name="NUM">2</field></block></value></block></value>
            <statement name="DO1"><block type="procedures_callnoreturn" id="W87g2nl8jprwJXB]J[hw"><mutation name="ZufallZwei"></mutation></block></statement>
            <value name="IF2"><block type="logic_compare" id="gj}gnPUy#/5aHdoBnr@"><field name="OP">EQ</field>
            <value name="A"><block type="variables_get" id="leS?FhGaeYN^U_eW=UC@"><field name="VAR">valZufall</field></block></value>
            <value name="B"><block type="math_number" id="L+jsa(J@;}6M8Rr%a}Yd"><field name="NUM">3</field></block></value></block></value>
            <statement name="DO2"><block type="procedures_callnoreturn" id="{;AN3#fKQQ0kBms}=oDy"><mutation name="ZufallDrei"></mutation></block></statement></block></next></block></statement></block></statement></block>
            <block type="procedures_defnoreturn" id="]aih=G55?HS]7lpb
            vSc" x="538" y="-187"><field name="NAME">ZufallEins</field>
            <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
            <statement name="STACK"><block type="debug" id="m(8lX4Y:**J%J^9ti)M"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow>
            <block type="variables_get" id="y1Q1BFtS+I+?X!T;vdJ|"><field name="VAR">valZufall</field></block></value>
            <next><block type="comment" id="UD8iI_FNE6Pa0}07og*["><field name="COMMENT">Schalte etwas ein</field>
            <next><block type="variables_set" id="gc%||Eu?4a-GR[lV#V+9"><field name="VAR">TimerAktiv</field>
            <value name="VALUE"><block type="logic_boolean" id=".f:;9;bHuW@Q8uTIM7cx"><field name="BOOL">TRUE</field></block></value>
            <next><block type="timeouts_settimeout" id="KUky=Au9Hf42KvRsaZi"><field name="NAME">timeout</field>
            <field name="DELAY">1000</field>
            <statement name="STATEMENT"><block type="comment" id="!/W#E)^phCi/#d:rZ11M"><field name="COMMENT">Schalte etwas wieder aus</field>
            <next><block type="variables_set" id="45qLb@}f0E5vBYwGUs,H"><field name="VAR">TimerAktiv</field>
            <value name="VALUE"><block type="logic_boolean" id="M69l1/uK.(zT^%3mbA|@"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block>
            <block type="procedures_defnoreturn" id="j6lr
            @jITsr]ms8yhUh0" x="538" y="63"><field name="NAME">ZufallZwei</field>
            <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
            <statement name="STACK"><block type="debug" id="Yj?[d2mz/jUbw6B@}i^w"><field name="Severity">log</field>
            <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow> <block type="variables_get" id=")6F1e[,wecN:0#OxtHo5"><field name="VAR">valZufall</field></block></value> <next><block type="comment" id="(K~gPu|WTF3rn%_]Wu|p"><field name="COMMENT">Schalte etwas ein</field> <next><block type="variables_set" id="{(kXy~N;Z.QRt}vr3I"><field name="VAR">TimerAktiv</field>
            <value name="VALUE"><block type="logic_boolean" id="G6@Xxm=)a-dD[j{I=Yfv"><field name="BOOL">TRUE</field></block></value>
            <next><block type="timeouts_settimeout" id="xefMj,DIwtkW
            2@Phw1Q"><field name="NAME">timeout2</field>
            <field name="DELAY">2000</field>
            <statement name="STATEMENT"><block type="comment" id="A[?425Oyazos+*y8;Y2:"><field name="COMMENT">Schalte etwas wieder aus</field>
            <next><block type="variables_set" id="W,)iWjtj;*J19I8rbs8"><field name="VAR">TimerAktiv</field> <value name="VALUE"><block type="logic_boolean" id="P=PZWs~Sdnb/7A_g1IMp"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block> <block type="procedures_defnoreturn" id=",%sXx)neL(hBuOH~l%%9" x="538" y="313"><field name="NAME">ZufallDrei</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="debug" id="k}),=oVBLM[qL:1,0K=%"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow>
            <block type="variables_get" id="zY3NJB^6bk2C?gA/]Qa9"><field name="VAR">valZufall</field></block></value>
            <next><block type="comment" id="|;jKXPh/w,O.!TE~)5y6"><field name="COMMENT">Schalte etwas ein</field>
            <next><block type="variables_set" id="WDYnD=%[7Ot3b94P*cl"><field name="VAR">TimerAktiv</field> <value name="VALUE"><block type="logic_boolean" id="m{t-glCB~U:?~U6VhWvj"><field name="BOOL">TRUE</field></block></value> <next><block type="timeouts_settimeout" id="TX2ufws26#AES|*Hmty"><field name="NAME">timeout3</field>
            <field name="DELAY">3000</field>
            <statement name="STATEMENT"><block type="comment" id=";6|h5I,9xy=NsXaK6Pv{"><field name="COMMENT">Schalte etwas wieder aus</field>
            <next><block type="variables_set" id="q7GtkJVZ!-R+JVdai^K("><field name="VAR">TimerAktiv</field>
            <value name="VALUE"><block type="logic_boolean" id="p!%n^3t8Q}JFG!y8~NPI"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block></xml>

            
            Grüße
            
            EDIT: Die lokalen Variablem müssen vorher initialisiert werden!!! Sonst klappt es nicht.
             ![147_beispiel.png](/assets/uploads/files/147_beispiel.png) 
            Ist in dem Export NICHT enthalten.

            Rantanplan

            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

            1 Antwort Letzte Antwort
            0
            • lobomauL Offline
              lobomauL Offline
              lobomau
              schrieb am zuletzt editiert von
              #6

              @rantanplan:

              @lobomau:

              Gibt es sonst eine Möglichkeit nur mit Blockly einen zufälligen Zeitbereich zu erstellen?

              Ich möchte dass nachts ein Licht 10 mal schaltet, aber jeweils im zufälligen Bereich von 0 bis 5 Minuten. `

              Hallo lobomau

              Nicht direkt. Leider läßt Blockly in vielen Bausteinen keine Variablen zu.

              Aber vom Rücken, durch die Brust ins Auge könnte es gehen.

              Auf die Schnelle fällt mir dazu folgende Möglichkeit ein.

              Blocky Zufall.png

              Der Export:

              ! ````
              <xml xmlns="http://www.w3.org/1999/xhtml"><block type="schedule" id="#q]X?XA6,T#oVG0~p2-k" x="-137" y="-162"><field name="SCHEDULE">/5 * * * * </field>
              <statement name="STATEMENT"><block type="controls_if" id="SPb@1vaoX%#8}Ztk9|.{"><value name="IF0"><block type="logic_compare" id=")|K
              D~LFn0EfiYM^m@Nn"><field name="OP">NEQ</field>
              <value name="A"><block type="variables_get" id="d71W,pX%pJ72;8{kfdS"><field name="VAR">TimerAktiv</field></block></value> <value name="B"><block type="logic_boolean" id="(%,AB0sDN!#y4ic_{VjS"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="variables_set" id="}.-BM_s!1lz.V*hvU@AY"><field name="VAR">valZufall</field> <value name="VALUE"><block type="math_random_int" id="3Q/HHpL~EpbBr^HE~1df"><value name="FROM"><shadow type="math_number" id="A.LJ5W.UeBqK(Tl2GvZ"><field name="NUM">1</field></shadow></value>
              <value name="TO"><shadow type="math_number" id="T{/dDJqQ1%YlMESV9(Nv"><field name="NUM">3</field></shadow></value></block></value>
              <next><block type="controls_if" id="kGg5uFcR8[gxXgSzVl5n"><mutation elseif="2"></mutation>
              <value name="IF0"><block type="logic_compare" id="?nV9axQ.ztUS+?mvR:^v"><field name="OP">EQ</field>
              <value name="A"><block type="variables_get" id="eGQClh}yINaaminM]h@M"><field name="VAR">valZufall</field></block></value>
              <value name="B"><block type="math_number" id="w)p6@Kl(M%rZZC2w[fk^"><field name="NUM">1</field></block></value></block></value>
              <statement name="DO0"><block type="procedures_callnoreturn" id="K0BT]GJP:#6Le6RdwqF8"><mutation name="ZufallEins"></mutation></block></statement>
              <value name="IF1"><block type="logic_compare" id="M0[QB+35R8YTEh=5Xge
              "><field name="OP">EQ</field>
              <value name="A"><block type="variables_get" id="(tpMntf[RTlhk6nXF#Xk"><field name="VAR">valZufall</field></block></value>
              <value name="B"><block type="math_number" id="Nc.|J~M;eYEIWS|Q!J;l"><field name="NUM">2</field></block></value></block></value>
              <statement name="DO1"><block type="procedures_callnoreturn" id="W87g2nl8jprwJXB]J[hw"><mutation name="ZufallZwei"></mutation></block></statement>
              <value name="IF2"><block type="logic_compare" id="gj}gnPUy#/5aHdoBnr@"><field name="OP">EQ</field>
              <value name="A"><block type="variables_get" id="leS?FhGaeYN^U_eW=UC@"><field name="VAR">valZufall</field></block></value>
              <value name="B"><block type="math_number" id="L+jsa(J@;}6M8Rr%a}Yd"><field name="NUM">3</field></block></value></block></value>
              <statement name="DO2"><block type="procedures_callnoreturn" id="{;AN3#fKQQ0kBms}=oDy"><mutation name="ZufallDrei"></mutation></block></statement></block></next></block></statement></block></statement></block>
              <block type="procedures_defnoreturn" id="]aih=G55?HS]7lpb
              vSc" x="538" y="-187"><field name="NAME">ZufallEins</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
              <statement name="STACK"><block type="debug" id="m(8lX4Y:**J%J^9ti)M"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow>
              <block type="variables_get" id="y1Q1BFtS+I+?X!T;vdJ|"><field name="VAR">valZufall</field></block></value>
              <next><block type="comment" id="UD8iI_FNE6Pa0}07og*["><field name="COMMENT">Schalte etwas ein</field>
              <next><block type="variables_set" id="gc%||Eu?4a-GR[lV#V+9"><field name="VAR">TimerAktiv</field>
              <value name="VALUE"><block type="logic_boolean" id=".f:;9;bHuW@Q8uTIM7cx"><field name="BOOL">TRUE</field></block></value>
              <next><block type="timeouts_settimeout" id="KUky=Au9Hf42KvRsaZi"><field name="NAME">timeout</field>
              <field name="DELAY">1000</field>
              <statement name="STATEMENT"><block type="comment" id="!/W#E)^phCi/#d:rZ11M"><field name="COMMENT">Schalte etwas wieder aus</field>
              <next><block type="variables_set" id="45qLb@}f0E5vBYwGUs,H"><field name="VAR">TimerAktiv</field>
              <value name="VALUE"><block type="logic_boolean" id="M69l1/uK.(zT^%3mbA|@"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block>
              <block type="procedures_defnoreturn" id="j6lr
              @jITsr]ms8yhUh0" x="538" y="63"><field name="NAME">ZufallZwei</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
              <statement name="STACK"><block type="debug" id="Yj?[d2mz/jUbw6B@}i^w"><field name="Severity">log</field>
              <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow> <block type="variables_get" id=")6F1e[,wecN:0#OxtHo5"><field name="VAR">valZufall</field></block></value> <next><block type="comment" id="(K~gPu|WTF3rn%_]Wu|p"><field name="COMMENT">Schalte etwas ein</field> <next><block type="variables_set" id="{(kXy~N;Z.QRt}vr3I"><field name="VAR">TimerAktiv</field>
              <value name="VALUE"><block type="logic_boolean" id="G6@Xxm=)a-dD[j{I=Yfv"><field name="BOOL">TRUE</field></block></value>
              <next><block type="timeouts_settimeout" id="xefMj,DIwtkW
              2@Phw1Q"><field name="NAME">timeout2</field>
              <field name="DELAY">2000</field>
              <statement name="STATEMENT"><block type="comment" id="A[?425Oyazos+*y8;Y2:"><field name="COMMENT">Schalte etwas wieder aus</field>
              <next><block type="variables_set" id="W,)iWjtj;*J19I8rbs8"><field name="VAR">TimerAktiv</field> <value name="VALUE"><block type="logic_boolean" id="P=PZWs~Sdnb/7A_g1IMp"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block> <block type="procedures_defnoreturn" id=",%sXx)neL(hBuOH~l%%9" x="538" y="313"><field name="NAME">ZufallDrei</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="debug" id="k}),=oVBLM[qL:1,0K=%"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow>
              <block type="variables_get" id="zY3NJB^6bk2C?gA/]Qa9"><field name="VAR">valZufall</field></block></value>
              <next><block type="comment" id="|;jKXPh/w,O.!TE~)5y6"><field name="COMMENT">Schalte etwas ein</field>
              <next><block type="variables_set" id="WDYnD=%[7Ot3b94P*cl"><field name="VAR">TimerAktiv</field> <value name="VALUE"><block type="logic_boolean" id="m{t-glCB~U:?~U6VhWvj"><field name="BOOL">TRUE</field></block></value> <next><block type="timeouts_settimeout" id="TX2ufws26#AES|*Hmty"><field name="NAME">timeout3</field>
              <field name="DELAY">3000</field>
              <statement name="STATEMENT"><block type="comment" id=";6|h5I,9xy=NsXaK6Pv{"><field name="COMMENT">Schalte etwas wieder aus</field>
              <next><block type="variables_set" id="q7GtkJVZ!-R+JVdai^K("><field name="VAR">TimerAktiv</field>
              <value name="VALUE"><block type="logic_boolean" id="p!%n^3t8Q}JFG!y8~NPI"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block></xml>

              
              Grüße `  
              

              Danke!

              Der wichtige Hinweis war für mich, dass es unter Mathematik zufällige Zahlen gibt. Damit kann man sich dann was basteln.

              EDIT: funktioniert gut dein Test-Script:

              	script.js.common.Übung: 2
              javascript.1	2017-04-23 15:44:10.147	info	script.js.common.Übung: 1
              javascript.1	2017-04-23 15:44:05.146	info	script.js.common.Übung: 3
              javascript.1	2017-04-23 15:44:00.147	info	script.js.common.Übung: 3
              javascript.1	2017-04-23 15:43:55.147	info	script.js.common.Übung: 2
              javascript.1	2017-04-23 15:43:50.150	info	script.js.common.Übung: 2
              javascript.1	2017-04-23 15:43:45.147	info	script.js.common.Übung: 3
              javascript.1	2017-04-23 15:43:40.147	info	script.js.common.Übung: 2
              javascript.1	2017-04-23 15:43:35.146	info	script.js.common.Übung: 2
              javascript.1	2017-04-23 15:43:30.145	info	script.js.common.Übung: 1
              javascript.1	2017-04-23 15:43:25.148	info	script.js.common.Übung: 1
              javascript.1	2017-04-23 15:43:20.152	info	script.js.common.Übung: 1
              

              Wobei ich dachte dass ganzzahlige Zahl zwischen 1 und 3 immer 2 ist. Ist also eher als "größer gleich" zu verstehen und nicht "größer".

              Host: NUC8i3 mit Proxmox:

              • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
              • Slave: Pi4
              1 Antwort Letzte Antwort
              0
              • rantanplanR Offline
                rantanplanR Offline
                rantanplan
                schrieb am zuletzt editiert von
                #7

                @lobomau:

                Wobei ich dachte dass ganzzahlige Zahl zwischen 1 und 3 immer 2 ist. Ist also eher als "größer gleich" zu verstehen und nicht "größer". `

                Ja, ist eher wie bei den alten Zaubertricks "…sage mir eine Zahl von 1 bis 10..." ;)

                Grüße

                Rantanplan

                CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                1 Antwort Letzte Antwort
                0
                • lobomauL Offline
                  lobomauL Offline
                  lobomau
                  schrieb am zuletzt editiert von
                  #8

                  @rantanplan:

                  @lobomau:

                  Gibt es sonst eine Möglichkeit nur mit Blockly einen zufälligen Zeitbereich zu erstellen?

                  Ich möchte dass nachts ein Licht 10 mal schaltet, aber jeweils im zufälligen Bereich von 0 bis 5 Minuten. `

                  Hallo lobomau

                  Nicht direkt. Leider läßt Blockly in vielen Bausteinen keine Variablen zu.

                  Aber vom Rücken, durch die Brust ins Auge könnte es gehen.

                  Auf die Schnelle fällt mir dazu folgende Möglichkeit ein.

                  Blocky Zufall.png

                  Der Export:

                  ! ````
                  <xml xmlns="http://www.w3.org/1999/xhtml"><block type="schedule" id="#q]X?XA6,T#oVG0~p2-k" x="-137" y="-162"><field name="SCHEDULE">/5 * * * * </field>
                  <statement name="STATEMENT"><block type="controls_if" id="SPb@1vaoX%#8}Ztk9|.{"><value name="IF0"><block type="logic_compare" id=")|K
                  D~LFn0EfiYM^m@Nn"><field name="OP">NEQ</field>
                  <value name="A"><block type="variables_get" id="d71W,pX%pJ72;8{kfdS"><field name="VAR">TimerAktiv</field></block></value> <value name="B"><block type="logic_boolean" id="(%,AB0sDN!#y4ic_{VjS"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="variables_set" id="}.-BM_s!1lz.V*hvU@AY"><field name="VAR">valZufall</field> <value name="VALUE"><block type="math_random_int" id="3Q/HHpL~EpbBr^HE~1df"><value name="FROM"><shadow type="math_number" id="A.LJ5W.UeBqK(Tl2GvZ"><field name="NUM">1</field></shadow></value>
                  <value name="TO"><shadow type="math_number" id="T{/dDJqQ1%YlMESV9(Nv"><field name="NUM">3</field></shadow></value></block></value>
                  <next><block type="controls_if" id="kGg5uFcR8[gxXgSzVl5n"><mutation elseif="2"></mutation>
                  <value name="IF0"><block type="logic_compare" id="?nV9axQ.ztUS+?mvR:^v"><field name="OP">EQ</field>
                  <value name="A"><block type="variables_get" id="eGQClh}yINaaminM]h@M"><field name="VAR">valZufall</field></block></value>
                  <value name="B"><block type="math_number" id="w)p6@Kl(M%rZZC2w[fk^"><field name="NUM">1</field></block></value></block></value>
                  <statement name="DO0"><block type="procedures_callnoreturn" id="K0BT]GJP:#6Le6RdwqF8"><mutation name="ZufallEins"></mutation></block></statement>
                  <value name="IF1"><block type="logic_compare" id="M0[QB+35R8YTEh=5Xge
                  "><field name="OP">EQ</field>
                  <value name="A"><block type="variables_get" id="(tpMntf[RTlhk6nXF#Xk"><field name="VAR">valZufall</field></block></value>
                  <value name="B"><block type="math_number" id="Nc.|J~M;eYEIWS|Q!J;l"><field name="NUM">2</field></block></value></block></value>
                  <statement name="DO1"><block type="procedures_callnoreturn" id="W87g2nl8jprwJXB]J[hw"><mutation name="ZufallZwei"></mutation></block></statement>
                  <value name="IF2"><block type="logic_compare" id="gj}gnPUy#/5aHdoBnr@"><field name="OP">EQ</field>
                  <value name="A"><block type="variables_get" id="leS?FhGaeYN^U_eW=UC@"><field name="VAR">valZufall</field></block></value>
                  <value name="B"><block type="math_number" id="L+jsa(J@;}6M8Rr%a}Yd"><field name="NUM">3</field></block></value></block></value>
                  <statement name="DO2"><block type="procedures_callnoreturn" id="{;AN3#fKQQ0kBms}=oDy"><mutation name="ZufallDrei"></mutation></block></statement></block></next></block></statement></block></statement></block>
                  <block type="procedures_defnoreturn" id="]aih=G55?HS]7lpb
                  vSc" x="538" y="-187"><field name="NAME">ZufallEins</field>
                  <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                  <statement name="STACK"><block type="debug" id="m(8lX4Y:**J%J^9ti)M"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow>
                  <block type="variables_get" id="y1Q1BFtS+I+?X!T;vdJ|"><field name="VAR">valZufall</field></block></value>
                  <next><block type="comment" id="UD8iI_FNE6Pa0}07og*["><field name="COMMENT">Schalte etwas ein</field>
                  <next><block type="variables_set" id="gc%||Eu?4a-GR[lV#V+9"><field name="VAR">TimerAktiv</field>
                  <value name="VALUE"><block type="logic_boolean" id=".f:;9;bHuW@Q8uTIM7cx"><field name="BOOL">TRUE</field></block></value>
                  <next><block type="timeouts_settimeout" id="KUky=Au9Hf42KvRsaZi"><field name="NAME">timeout</field>
                  <field name="DELAY">1000</field>
                  <statement name="STATEMENT"><block type="comment" id="!/W#E)^phCi/#d:rZ11M"><field name="COMMENT">Schalte etwas wieder aus</field>
                  <next><block type="variables_set" id="45qLb@}f0E5vBYwGUs,H"><field name="VAR">TimerAktiv</field>
                  <value name="VALUE"><block type="logic_boolean" id="M69l1/uK.(zT^%3mbA|@"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block>
                  <block type="procedures_defnoreturn" id="j6lr
                  @jITsr]ms8yhUh0" x="538" y="63"><field name="NAME">ZufallZwei</field>
                  <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                  <statement name="STACK"><block type="debug" id="Yj?[d2mz/jUbw6B@}i^w"><field name="Severity">log</field>
                  <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow> <block type="variables_get" id=")6F1e[,wecN:0#OxtHo5"><field name="VAR">valZufall</field></block></value> <next><block type="comment" id="(K~gPu|WTF3rn%_]Wu|p"><field name="COMMENT">Schalte etwas ein</field> <next><block type="variables_set" id="{(kXy~N;Z.QRt}vr3I"><field name="VAR">TimerAktiv</field>
                  <value name="VALUE"><block type="logic_boolean" id="G6@Xxm=)a-dD[j{I=Yfv"><field name="BOOL">TRUE</field></block></value>
                  <next><block type="timeouts_settimeout" id="xefMj,DIwtkW
                  2@Phw1Q"><field name="NAME">timeout2</field>
                  <field name="DELAY">2000</field>
                  <statement name="STATEMENT"><block type="comment" id="A[?425Oyazos+*y8;Y2:"><field name="COMMENT">Schalte etwas wieder aus</field>
                  <next><block type="variables_set" id="W,)iWjtj;*J19I8rbs8"><field name="VAR">TimerAktiv</field> <value name="VALUE"><block type="logic_boolean" id="P=PZWs~Sdnb/7A_g1IMp"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block> <block type="procedures_defnoreturn" id=",%sXx)neL(hBuOH~l%%9" x="538" y="313"><field name="NAME">ZufallDrei</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="debug" id="k}),=oVBLM[qL:1,0K=%"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow>
                  <block type="variables_get" id="zY3NJB^6bk2C?gA/]Qa9"><field name="VAR">valZufall</field></block></value>
                  <next><block type="comment" id="|;jKXPh/w,O.!TE~)5y6"><field name="COMMENT">Schalte etwas ein</field>
                  <next><block type="variables_set" id="WDYnD=%[7Ot3b94P*cl"><field name="VAR">TimerAktiv</field> <value name="VALUE"><block type="logic_boolean" id="m{t-glCB~U:?~U6VhWvj"><field name="BOOL">TRUE</field></block></value> <next><block type="timeouts_settimeout" id="TX2ufws26#AES|*Hmty"><field name="NAME">timeout3</field>
                  <field name="DELAY">3000</field>
                  <statement name="STATEMENT"><block type="comment" id=";6|h5I,9xy=NsXaK6Pv{"><field name="COMMENT">Schalte etwas wieder aus</field>
                  <next><block type="variables_set" id="q7GtkJVZ!-R+JVdai^K("><field name="VAR">TimerAktiv</field>
                  <value name="VALUE"><block type="logic_boolean" id="p!%n^3t8Q}JFG!y8~NPI"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block></xml>

                  
                  Grüße `  
                  

                  Wozu ist TimerAktiv gut? Kann ich nicht weglassen und beim Trigger gleich mit "setze ValZufall" anfangen?

                  Host: NUC8i3 mit Proxmox:

                  • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                  • Slave: Pi4
                  1 Antwort Letzte Antwort
                  0
                  • rantanplanR Offline
                    rantanplanR Offline
                    rantanplan
                    schrieb am zuletzt editiert von
                    #9

                    @lobomau:

                    Wozu ist TimerAktiv gut? Kann ich nicht weglassen und beim Trigger gleich mit "setze ValZufall" anfangen? `

                    Probiere es doch einfach mal aus TimerAktiv wegzulassen.

                    Grüße

                    Rantanplan

                    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                    1 Antwort Letzte Antwort
                    0
                    • lobomauL Offline
                      lobomauL Offline
                      lobomau
                      schrieb am zuletzt editiert von
                      #10

                      @rantanplan:

                      @lobomau:

                      Wozu ist TimerAktiv gut? Kann ich nicht weglassen und beim Trigger gleich mit "setze ValZufall" anfangen? `

                      Probiere es doch einfach mal aus TimerAktiv wegzulassen.

                      Grüße `
                      Ja, geht auch ohne :) Ich verstehe TimerAktiv also als nice-to-have, um z.B. bei längeren Zeitbereichen zu wissen, dass ein Timer aktiv ist.

                      Ich lasse es drin. Stört ja nicht. Oder gibt es noch einen anderen Grund dafür?

                      Host: NUC8i3 mit Proxmox:

                      • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                      • Slave: Pi4
                      1 Antwort Letzte Antwort
                      0
                      • rantanplanR Offline
                        rantanplanR Offline
                        rantanplan
                        schrieb am zuletzt editiert von
                        #11

                        @lobomau:

                        Ja, geht auch ohne :) Ich verstehe TimerAktiv also als nice-to-have, um z.B. bei längeren Zeitbereichen zu wissen, dass ein Timer aktiv ist.

                        Ich lasse es drin. Stört ja nicht. Oder gibt es noch einen anderen Grund dafür? `

                        Augenscheinlich hast Du nicht richtig getestet.

                        Natürlich läuft das Script. Aber auch richtig?

                        Jedesmal wenn Du einen Timer startest, wird er ausgeführt OHNE den vorherigen zu stoppen.

                        Wenn man einen Timer häufig startest, kannst Du schnell 100derte Timer aktiv haben.

                        Und dann wird irgendwann das Licht 100derte mal ausgeschaltet.

                        Von der verschwendeten Rechnerleistung gar nicht zu reden.

                        TimerAktiv ist also etwas mehr als nice-to-have.

                        Grüße

                        Rantanplan

                        CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                        1 Antwort Letzte Antwort
                        0
                        • B Offline
                          B Offline
                          Belei
                          schrieb am zuletzt editiert von
                          #12

                          @rantanplan:

                          @lobomau:

                          Gibt es sonst eine Möglichkeit nur mit Blockly einen zufälligen Zeitbereich zu erstellen?

                          Ich möchte dass nachts ein Licht 10 mal schaltet, aber jeweils im zufälligen Bereich von 0 bis 5 Minuten. `

                          Hallo lobomau

                          Nicht direkt. Leider läßt Blockly in vielen Bausteinen keine Variablen zu.

                          Aber vom Rücken, durch die Brust ins Auge könnte es gehen.

                          Auf die Schnelle fällt mir dazu folgende Möglichkeit ein.

                          Blocky Zufall.png

                          Der Export:

                          ! ````
                          <xml xmlns="http://www.w3.org/1999/xhtml"><block type="schedule" id="#q]X?XA6,T#oVG0~p2-k" x="-137" y="-162"><field name="SCHEDULE">/5 * * * * </field>
                          <statement name="STATEMENT"><block type="controls_if" id="SPb@1vaoX%#8}Ztk9|.{"><value name="IF0"><block type="logic_compare" id=")|K
                          D~LFn0EfiYM^m@Nn"><field name="OP">NEQ</field>
                          <value name="A"><block type="variables_get" id="d71W,pX%pJ72;8{kfdS"><field name="VAR">TimerAktiv</field></block></value> <value name="B"><block type="logic_boolean" id="(%,AB0sDN!#y4ic_{VjS"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="variables_set" id="}.-BM_s!1lz.V*hvU@AY"><field name="VAR">valZufall</field> <value name="VALUE"><block type="math_random_int" id="3Q/HHpL~EpbBr^HE~1df"><value name="FROM"><shadow type="math_number" id="A.LJ5W.UeBqK(Tl2GvZ"><field name="NUM">1</field></shadow></value>
                          <value name="TO"><shadow type="math_number" id="T{/dDJqQ1%YlMESV9(Nv"><field name="NUM">3</field></shadow></value></block></value>
                          <next><block type="controls_if" id="kGg5uFcR8[gxXgSzVl5n"><mutation elseif="2"></mutation>
                          <value name="IF0"><block type="logic_compare" id="?nV9axQ.ztUS+?mvR:^v"><field name="OP">EQ</field>
                          <value name="A"><block type="variables_get" id="eGQClh}yINaaminM]h@M"><field name="VAR">valZufall</field></block></value>
                          <value name="B"><block type="math_number" id="w)p6@Kl(M%rZZC2w[fk^"><field name="NUM">1</field></block></value></block></value>
                          <statement name="DO0"><block type="procedures_callnoreturn" id="K0BT]GJP:#6Le6RdwqF8"><mutation name="ZufallEins"></mutation></block></statement>
                          <value name="IF1"><block type="logic_compare" id="M0[QB+35R8YTEh=5Xge
                          "><field name="OP">EQ</field>
                          <value name="A"><block type="variables_get" id="(tpMntf[RTlhk6nXF#Xk"><field name="VAR">valZufall</field></block></value>
                          <value name="B"><block type="math_number" id="Nc.|J~M;eYEIWS|Q!J;l"><field name="NUM">2</field></block></value></block></value>
                          <statement name="DO1"><block type="procedures_callnoreturn" id="W87g2nl8jprwJXB]J[hw"><mutation name="ZufallZwei"></mutation></block></statement>
                          <value name="IF2"><block type="logic_compare" id="gj}gnPUy#/5aHdoBnr@"><field name="OP">EQ</field>
                          <value name="A"><block type="variables_get" id="leS?FhGaeYN^U_eW=UC@"><field name="VAR">valZufall</field></block></value>
                          <value name="B"><block type="math_number" id="L+jsa(J@;}6M8Rr%a}Yd"><field name="NUM">3</field></block></value></block></value>
                          <statement name="DO2"><block type="procedures_callnoreturn" id="{;AN3#fKQQ0kBms}=oDy"><mutation name="ZufallDrei"></mutation></block></statement></block></next></block></statement></block></statement></block>
                          <block type="procedures_defnoreturn" id="]aih=G55?HS]7lpb
                          vSc" x="538" y="-187"><field name="NAME">ZufallEins</field>
                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                          <statement name="STACK"><block type="debug" id="m(8lX4Y:**J%J^9ti)M"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow>
                          <block type="variables_get" id="y1Q1BFtS+I+?X!T;vdJ|"><field name="VAR">valZufall</field></block></value>
                          <next><block type="comment" id="UD8iI_FNE6Pa0}07og*["><field name="COMMENT">Schalte etwas ein</field>
                          <next><block type="variables_set" id="gc%||Eu?4a-GR[lV#V+9"><field name="VAR">TimerAktiv</field>
                          <value name="VALUE"><block type="logic_boolean" id=".f:;9;bHuW@Q8uTIM7cx"><field name="BOOL">TRUE</field></block></value>
                          <next><block type="timeouts_settimeout" id="KUky=Au9Hf42KvRsaZi"><field name="NAME">timeout</field>
                          <field name="DELAY">1000</field>
                          <statement name="STATEMENT"><block type="comment" id="!/W#E)^phCi/#d:rZ11M"><field name="COMMENT">Schalte etwas wieder aus</field>
                          <next><block type="variables_set" id="45qLb@}f0E5vBYwGUs,H"><field name="VAR">TimerAktiv</field>
                          <value name="VALUE"><block type="logic_boolean" id="M69l1/uK.(zT^%3mbA|@"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block>
                          <block type="procedures_defnoreturn" id="j6lr
                          @jITsr]ms8yhUh0" x="538" y="63"><field name="NAME">ZufallZwei</field>
                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                          <statement name="STACK"><block type="debug" id="Yj?[d2mz/jUbw6B@}i^w"><field name="Severity">log</field>
                          <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow> <block type="variables_get" id=")6F1e[,wecN:0#OxtHo5"><field name="VAR">valZufall</field></block></value> <next><block type="comment" id="(K~gPu|WTF3rn%_]Wu|p"><field name="COMMENT">Schalte etwas ein</field> <next><block type="variables_set" id="{(kXy~N;Z.QRt}vr3I"><field name="VAR">TimerAktiv</field>
                          <value name="VALUE"><block type="logic_boolean" id="G6@Xxm=)a-dD[j{I=Yfv"><field name="BOOL">TRUE</field></block></value>
                          <next><block type="timeouts_settimeout" id="xefMj,DIwtkW
                          2@Phw1Q"><field name="NAME">timeout2</field>
                          <field name="DELAY">2000</field>
                          <statement name="STATEMENT"><block type="comment" id="A[?425Oyazos+*y8;Y2:"><field name="COMMENT">Schalte etwas wieder aus</field>
                          <next><block type="variables_set" id="W,)iWjtj;*J19I8rbs8"><field name="VAR">TimerAktiv</field> <value name="VALUE"><block type="logic_boolean" id="P=PZWs~Sdnb/7A_g1IMp"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block> <block type="procedures_defnoreturn" id=",%sXx)neL(hBuOH~l%%9" x="538" y="313"><field name="NAME">ZufallDrei</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="debug" id="k}),=oVBLM[qL:1,0K=%"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="7k{/9%WdRZg%WaMby}Z"><field name="TEXT">5 Min</field></shadow>
                          <block type="variables_get" id="zY3NJB^6bk2C?gA/]Qa9"><field name="VAR">valZufall</field></block></value>
                          <next><block type="comment" id="|;jKXPh/w,O.!TE~)5y6"><field name="COMMENT">Schalte etwas ein</field>
                          <next><block type="variables_set" id="WDYnD=%[7Ot3b94P*cl"><field name="VAR">TimerAktiv</field> <value name="VALUE"><block type="logic_boolean" id="m{t-glCB~U:?~U6VhWvj"><field name="BOOL">TRUE</field></block></value> <next><block type="timeouts_settimeout" id="TX2ufws26#AES|*Hmty"><field name="NAME">timeout3</field>
                          <field name="DELAY">3000</field>
                          <statement name="STATEMENT"><block type="comment" id=";6|h5I,9xy=NsXaK6Pv{"><field name="COMMENT">Schalte etwas wieder aus</field>
                          <next><block type="variables_set" id="q7GtkJVZ!-R+JVdai^K("><field name="VAR">TimerAktiv</field>
                          <value name="VALUE"><block type="logic_boolean" id="p!%n^3t8Q}JFG!y8~NPI"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block></xml>

                          
                          Grüße `  
                          

                          Für noch mehr Schaltungen füge ich einfach noch mehr Zufallszahlen ein.

                          Ich brauche ja für jedes Komado eine Zahl, oder?

                          also Lampe 1 an = Zufall 1

                          und Lampe 1 aus = Zufall 2

                          usw.

                          1 Antwort Letzte Antwort
                          0
                          • rantanplanR Offline
                            rantanplanR Offline
                            rantanplan
                            schrieb am zuletzt editiert von
                            #13

                            @Belei:

                            Ich brauche ja für jedes Komado eine Zahl, oder?

                            also Lampe 1 an = Zufall 1

                            und Lampe 1 aus = Zufall 2

                            usw. `
                            In dem Beispiel wird jeweils ein Timer gestartet. Darin wird das jeweilige Gerät wieder ausgeschaltet (s. Komentare).

                            Man kann es aber so machen wie Du es beschreibst.

                            Grüße

                            Rantanplan

                            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                            1 Antwort Letzte Antwort
                            0
                            • B Offline
                              B Offline
                              Belei
                              schrieb am zuletzt editiert von
                              #14

                              OK hatte ich auch erst so verstanden aber bei meiner probe, wurde die Lichter nie ausgeschaltet.

                              3799_zufall.jpg

                              1 Antwort Letzte Antwort
                              0
                              • rantanplanR Offline
                                rantanplanR Offline
                                rantanplan
                                schrieb am zuletzt editiert von
                                #15

                                Du hast ja auch den Aufruf der Funktionen "ZufallEins","ZufallZwei"….. raus genommen.

                                Das Ein-,Ausschalten soll in den Funktionen stattfinden.

                                Da wo die Kommentare "Schalte etwas ein" und innerhalb der Timer "Schalte etwas aus".

                                Grüße

                                Rantanplan

                                CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                1 Antwort Letzte Antwort
                                0
                                • B Offline
                                  B Offline
                                  Belei
                                  schrieb am zuletzt editiert von
                                  #16

                                  ups, da hab ich wohl was flasch verstanden…

                                  Also ist der Timer oben Links für den Interwall der Zufallszahlen und die Timeout in den Funktionen sind für die Auschaltzeit.?

                                  1 Antwort Letzte Antwort
                                  0
                                  • rantanplanR Offline
                                    rantanplanR Offline
                                    rantanplan
                                    schrieb am zuletzt editiert von
                                    #17

                                    @Belei:

                                    Also ist der Timer oben Links für den Interwall der Zufallszahlen und die Timeout in den Funktionen sind für die Auschaltzeit.? `

                                    "oben LInks" ist kein Timer.

                                    Oder meinst Du den Trigger?

                                    Rantanplan

                                    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                    1 Antwort Letzte Antwort
                                    0
                                    • B Offline
                                      B Offline
                                      Belei
                                      schrieb am zuletzt editiert von
                                      #18

                                      Ja meinte den Trigger muss die Begriffe besser beachten .

                                      1 Antwort Letzte Antwort
                                      0
                                      • B Offline
                                        B Offline
                                        Belei
                                        schrieb am zuletzt editiert von
                                        #19

                                        Nur noch mal zum Verständniss:

                                        Ich starte den Script und nach Ablauf des Triggers geht der erste Block los, er guckt kein Timer aktiv also Zufallszahl 1-3 an

                                        z.B. Funktionsblock 1 wird ausgewählt und Licht angeschaltet für Timeout von XX Minuten. Nach dem auschalten wird der Timer wieder auf unwahr gesetzt und der erste Block startet wieder nach Ablauf des Triggers?

                                        Ist es dann nicht so das immer nur 1 Licht leuchtet und nie mal mehrere? Weil es wird ja immer nur nach Ablauf des Timers neugestartet, oder?

                                        1 Antwort Letzte Antwort
                                        0
                                        • rantanplanR Offline
                                          rantanplanR Offline
                                          rantanplan
                                          schrieb am zuletzt editiert von
                                          #20

                                          Hallo Belei

                                          Das Blockly ist nur ein Beispiel, wie man so etwas lösen könnte.

                                          Das ist keine fertige Vorlage oder Anwendung!

                                          Wie viele Geräte Du in einer Zufalls-Funktion ein-/ausschaltest liegt in Deinem Ermessen.

                                          Du kannst auch für jede Funktion einen eigenen Flag für "TimerAktiv" anlegen.

                                          TimerAktivEins, TimerAktivZwei usw. usw.

                                          "TimerAktivXXX" soll verhindern, dass ein Timer mehrmals gestartet wird!

                                          Grüße

                                          Rantanplan

                                          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                          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

                                          544

                                          Online

                                          32.7k

                                          Benutzer

                                          82.4k

                                          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