NEWS
[gelöst-]-Minuten in Uhrzeit = +1 Stunde (Zeitzone?)
-
kleines update mit "schönerer" ausgabe
-
noch ein versuch - das letzte update war falsch - verrechnet
-
Hi
und danke schon mal für den Tipp mit den Timeouts, aber irgendwie haut das nicht hin.
Ich habe jetzt Timeouts eingebaut, aber ich bekomme immer noch 1 Stunde mehr als eigentlich berechnet und wenn ich mir nach der Berechnung vor dem setzen das ausgeben lasse habe ich exakt das was dort stehen muss, also die Minuten für z.B. 14 Uhr = 840 Minuten. Die Umsetzung dann in hh:mm ist dann, aber 15:00.Hier mal mein Versuch mit den Timeouts vielleicht habe ich da noch ein Fehler:
-
mach mal etwas größere timeouts wie 50 ms - von 100 und 250
von 200 auf 350 -
ich glaube, dass liegt an der ausgabe SS:ss gib mal anwenderformatiert ein, dann siehst du, das er das datum 1.1.1970 nimmt und damit in der winterzeit ist - deshalb habe ich in meinem script nicht mit minuten sondern ms gearbeitet und das datum mit angegeben - ist in deinem anfangspunkt das aktulle datum angegeben - das brauch js zum funktionieren
du arbeitest alles am 1.1.1970 ab
-
vielleicht geht damit was: roter Pfeil - zeit wann fertig (das sollte der varMinuten Wert sein) - hier sollte der tag noch unwichtig sein
bei deiner aktualisierung sollte dann sowas stehen
dann kommt das format: "12/05/2019 17:15" raus - damit sollte dann der tag und die zeit definiert sein
benutze auch "steuern" statt "aktualisieren" - ist stabiler
-
@liv-in-sky
Hi,
leider war das auch nicht die Lösung, bekomme dann nur Fehler in dem Objekt.
Das einzige was natürlich bis jetzt geholfen hat war, das ich von der varMinuten, 60 abgezogen habe, aber das stellt mich natürlich nicht zufrieden, da es unsauber ist. -
poste doch mal einen export von deinem script und auch den inhalt der beiden datenpunkte:
was genau steht in pooleinschaltzeit1 und laufzeit1 und ich gehe mal davon aus, dass es text datenpunkte sind
-
Guten Morgen,
jetzt erstmal ein Lob das man so schnell Rückantwort bekommt oder Ansätze wo es hacken könnte.
Vielen Dank hierfür, da bin ich anderes gewohnt.Die Datenpunkte sind Strings, habe entsprechend alle mal die Punkt1 betreffen angehängt.
javascript.0.Poolausschaltzeit1.json javascript.0.Pooleinschaltzeit1.json
javascript.0.Laufzeit1.jsonund hier der Code des Blockly: Ist schon weitergearbeitet und funktioniert bis auf die Zeitsetzung.
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="" id="LEQ^$HMT37+o=LwwGFd?">varMinuten</variable> </variables> <block type="on_ext" id="gM8KG1wjvAjfpKVHT$([" x="13" y="88"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="]yw{}m9Cow82{S-m@ZwE"> <field name="oid">javascript.0.Laufzeit1</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="W:NShpzP},WwTZ~e+!bz"> <field name="VAR" id="LEQ^$HMT37+o=LwwGFd?" variabletype="">varMinuten</field> <value name="VALUE"> <block type="convert_from_date" id="e~`8j#sG:p%b;27XEXoi"> <mutation format="false" language="false"></mutation> <field name="OPTION">mid</field> <value name="VALUE"> <block type="get_value" id="EG#{Ms+P-9}40!-MfBFU"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pooleinschaltzeit1</field> </block> </value> </block> </value> <next> <block type="control" id="B%1X.}3@]X3B(fACLurg"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Poolausschaltzeit1</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="convert_from_date" id="Y1!T,~Nk:qz@Pf.6?J9:"> <mutation format="false" language="false"></mutation> <field name="OPTION">hh:mm</field> <value name="VALUE"> <block type="math_arithmetic" id="7uX7)$Q:nh){aiIsV8qy"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="divhr4z%veJ.+.IS8aX}"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="5__{_[xY5~gX=83^WBxC"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="RJAh+WO}dhMel4R#A%[P"> <field name="NUM">1</field> </shadow> <block type="convert_tonumber" id="Jo!*VKP#n9ibx_9V=Z9Z"> <value name="VALUE"> <block type="get_value" id="Gr`-i)EV$DP;4id.mt#Q"> <field name="ATTR">val</field> <field name="OID">javascript.0.Laufzeit1</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="PJpey95](Dd.`~l1`^E)"> <field name="NUM">0</field> </shadow> <block type="convert_tonumber" id="G(xk_6%xzNPQc!tcQ]OB"> <value name="VALUE"> <block type="variables_get" id="kCne*v[u-B*,WlA#^gIL"> <field name="VAR" id="LEQ^$HMT37+o=LwwGFd?" variabletype="">varMinuten</field> </block> </value> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="D-7,[0[f={][4yighfLj"> <field name="NUM">60000</field> </shadow> </value> </block> </value> </block> </value> </block> </next> </block> </statement> <next> <block type="on_ext" id="fEmMMryMiwM!,t.$dxg["> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="$#CGj~8%R/ADrNl1x:I/"> <field name="oid">javascript.0.Laufzeit2</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="I?B5Z;r.f*g[%nqQ%#P*"> <field name="VAR" id="LEQ^$HMT37+o=LwwGFd?" variabletype="">varMinuten</field> <value name="VALUE"> <block type="convert_from_date" id="H~G/tw3`(*E%pC+(!wPl"> <mutation format="false" language="false"></mutation> <field name="OPTION">mid</field> <value name="VALUE"> <block type="get_value" id="@5-~rEx2ig3|F}f@~1nc"> <field name="ATTR">val</field> <field name="OID">javascript.0.Poolschaltzeit2</field> </block> </value> </block> </value> <next> <block type="update" id="Pv:^}*N1:v:70Q$M7Pd."> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Poolausschaltzeit2</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="convert_from_date" id=".8UvdvGaCCyx.q~Pv%S|"> <mutation format="false" language="false"></mutation> <field name="OPTION">hh:mm</field> <value name="VALUE"> <block type="math_arithmetic" id="II^YUNteaNldU+^K]!98"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="divhr4z%veJ.+.IS8aX}"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="p=.FNnrU2[Yr7e#^||;N"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="RJAh+WO}dhMel4R#A%[P"> <field name="NUM">1</field> </shadow> <block type="convert_tonumber" id="YJk~wxSA3#k;3wLNCRGJ"> <value name="VALUE"> <block type="get_value" id="7Pc~4JVK@Mv{1Ix6DPW5"> <field name="ATTR">val</field> <field name="OID">javascript.0.Laufzeit2</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="PJpey95](Dd.`~l1`^E)"> <field name="NUM">0</field> </shadow> <block type="convert_tonumber" id="sHs=qFMkn=)X!F0o/(Xc"> <value name="VALUE"> <block type="variables_get" id="$PaC)U3GiT+d#^YW{a?,"> <field name="VAR" id="LEQ^$HMT37+o=LwwGFd?" variabletype="">varMinuten</field> </block> </value> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="D^vT!_lUe=4wZU6mIw7x"> <field name="NUM">60000</field> </shadow> </value> </block> </value> </block> </value> </block> </next> </block> </statement> <next> <block type="schedule" id="|MgKt.vRv`-LNJa7U4Xg"> <field name="SCHEDULE">* * * * *</field> <statement name="STATEMENT"> <block type="controls_if" id="s..{eY(|}/P@=R0FKVf="> <mutation elseif="3"></mutation> <value name="IF0"> <block type="logic_operation" id="r@}4WA!:Pe/[l3|KdP]g"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="jfjQXAW04l-p*WVXhvQ`"> <field name="OP">AND</field> <value name="A"> <block type="time_compare_ex" id="2H:;=yj2=2+#UMClSIX3"> <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="TAGHdi878/j^PHQ;L#ya"> <field name="TEXT">12:00</field> </shadow> <block type="get_value" id="g3.;8GV=3:X*8pcO=;}X"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pooleinschaltzeit1</field> </block> </value> </block> </value> <value name="B"> <block type="time_compare_ex" id="vz$n-RaRFjD]hJjx5GnR"> <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="TAGHdi878/j^PHQ;L#ya"> <field name="TEXT">12:00</field> </shadow> <block type="get_value" id="4wP!HkY*t%%HeW;G7tq1"> <field name="ATTR">val</field> <field name="OID">javascript.0.Poolausschaltzeit1</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="7SmI#=4=,yNZsJdkJ~Fk"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="1Y_A?:*@.#0)lJ2?6{J%"> <field name="ATTR">val</field> <field name="OID">zwave.0.NODE32.SWITCH_BINARY.Switch_1</field> </block> </value> <value name="B"> <block type="logic_boolean" id="5XR8=hjSxc4r%7I6Meq$"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control_ex" id="~`{9=9INVM@^TSp#vEc9"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="Ym$bWevUhs`pq_m_t]7X"> <field name="oid">zwave.0.NODE32.SWITCH_BINARY.Switch_1</field> </shadow> </value> <value name="VALUE"> <shadow type="logic_boolean" id="$}pcg-vUvCeh#N`].,xM"> <field name="BOOL">TRUE</field> </shadow> </value> <value name="DELAY_MS"> <shadow type="math_number" id="VaQvE?.26K$MF2H%9o9k"> <field name="NUM">0</field> </shadow> </value> <next> <block type="debug" id="QjTK;_CpP-Zw?YBX*b-P"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="Q_dp!-ro;TJodm|fCzl{"> <field name="TEXT">Poolpumpe ein 1ster</field> </shadow> </value> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="sNpOZs(ni4UyW*0|qA,B"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="/h2!.BLC^da#X3K=*n@K"> <field name="OP">AND</field> <value name="A"> <block type="time_compare_ex" id="eA8)/?$j|j5.B)N0P,Q,"> <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="TAGHdi878/j^PHQ;L#ya"> <field name="TEXT">12:00</field> </shadow> <block type="get_value" id="+|FdbV=f`o@3bZS^OBcQ"> <field name="ATTR">val</field> <field name="OID">javascript.0.Poolschaltzeit2</field> </block> </value> </block> </value> <value name="B"> <block type="time_compare_ex" id=".Lh}TK~0`j67w!n{UZ$Y"> <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="TAGHdi878/j^PHQ;L#ya"> <field name="TEXT">12:00</field> </shadow> <block type="get_value" id="XTJcosGcYei8Z|u$2LNR"> <field name="ATTR">val</field> <field name="OID">javascript.0.Poolausschaltzeit2</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="/2u!;N(~ILk@(2}bgFUz"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="o`s%w.aki(7*O0pkQ?(1"> <field name="ATTR">val</field> <field name="OID">zwave.0.NODE32.SWITCH_BINARY.Switch_1</field> </block> </value> <value name="B"> <block type="logic_boolean" id="jK^P]6QK^,bf}v900m^$"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="control_ex" id="-6_1*49nHm(Qz{hP#G;q"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="Sw#Kt#{a%H3E{@7R!~T:"> <field name="oid">zwave.0.NODE32.SWITCH_BINARY.Switch_1</field> </shadow> </value> <value name="VALUE"> <shadow type="logic_boolean" id=":)4Zu!J,@//Q:d;=ck%5"> <field name="BOOL">TRUE</field> </shadow> </value> <value name="DELAY_MS"> <shadow type="math_number" id="7+)KI}jwik,QmOm_Ewx7"> <field name="NUM">0</field> </shadow> </value> <next> <block type="debug" id=":4/I88vz8SK%ze#TISC`"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="1?bK`^{8`,w|oQ+WcwYY"> <field name="TEXT">Poolpumpe ein 2ter</field> </shadow> </value> </block> </next> </block> </statement> <value name="IF2"> <block type="logic_operation" id="Sc@6jAf(w@$.(8AnMmi`"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="IAdQV+{!RQ/e=fe%Ii/3"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="o;Rypdt6g|H]^`7)%?|L"> <field name="ATTR">val</field> <field name="OID">zwave.0.NODE32.SWITCH_BINARY.Switch_1</field> </block> </value> <value name="B"> <block type="logic_boolean" id="q3~qD9:/$vPE7cA3V+/^"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="D+X0xr%h06Y#J+C_QA$$"> <field name="OP">AND</field> <value name="A"> <block type="time_compare_ex" id="//I8SFk5~75u[?U-B7KM"> <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="TAGHdi878/j^PHQ;L#ya"> <field name="TEXT">12:00</field> </shadow> <block type="convert_from_date" id="YoC,Cw?i{q}S5YhaEXE)"> <mutation format="false" language="false"></mutation> <field name="OPTION">hh:mm</field> <value name="VALUE"> <block type="get_value" id="y$HX[N3FjW2kM(V[0?[)"> <field name="ATTR">val</field> <field name="OID">javascript.0.Poolausschaltzeit1</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="time_compare_ex" id="Zi5$L,d63TuB@CR%KJ3U"> <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="e/u(KypIxm|J@ke|.:Zj"> <field name="TEXT">12:00</field> </shadow> <block type="convert_from_date" id="+zE!)D_7S|uxo*%go)[N"> <mutation format="false" language="false"></mutation> <field name="OPTION">hh:mm</field> <value name="VALUE"> <block type="get_value" id="y|2@e13{#A1-U(4.ruPs"> <field name="ATTR">val</field> <field name="OID">javascript.0.Poolschaltzeit2</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <statement name="DO2"> <block type="control_ex" id="rr-]ngW8(Ram*+jPX4d;"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="oH*hVo|KN+854nL}o}6("> <field name="oid">zwave.0.NODE32.SWITCH_BINARY.Switch_1</field> </shadow> </value> <value name="VALUE"> <shadow type="logic_boolean" id="v,gEHGv((!#{vxchxA=["> <field name="BOOL">FALSE</field> </shadow> </value> <value name="DELAY_MS"> <shadow type="math_number" id="SkGEFl9!ObWbXlQHwtA2"> <field name="NUM">0</field> </shadow> </value> <next> <block type="debug" id="f$B$kP9Oo(ZIK?^nCt(/"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="I!/wm_)P0q[k{_l23M-U"> <field name="TEXT"> Poolpumpe aus 1ster</field> </shadow> </value> </block> </next> </block> </statement> <value name="IF3"> <block type="logic_operation" id="KHN}P!)LQvY=l!yRtv#m"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="Hz541`yO0fG2|cOvv3K+"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="$6R4QskYY_,gB=Dk!*[u"> <field name="ATTR">val</field> <field name="OID">zwave.0.NODE32.SWITCH_BINARY.Switch_1</field> </block> </value> <value name="B"> <block type="logic_boolean" id="ViWW=/-?.=?uJ:q-1S0;"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="time_compare_ex" id="U}X_-2Bc{mb+|XYvb~2%"> <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=";cK-`:KskT6od~?NV,|j"> <field name="TEXT">12:00</field> </shadow> <block type="convert_from_date" id="DJ_hhIZ3{BE*SgZ~a[HE"> <mutation format="false" language="false"></mutation> <field name="OPTION">hh:mm</field> <value name="VALUE"> <block type="get_value" id="*YhM%ha62:xb]4vB,o|0"> <field name="ATTR">val</field> <field name="OID">javascript.0.Poolausschaltzeit2</field> </block> </value> </block> </value> </block> </value> </block> </value> <statement name="DO3"> <block type="control_ex" id="d;^-gbAKh@XJaZZf5|9w"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="G_zy!UL,8iyKFD4E?QT@"> <field name="oid">zwave.0.NODE32.SWITCH_BINARY.Switch_1</field> </shadow> </value> <value name="VALUE"> <shadow type="logic_boolean" id="S5L=i-QLx6`@ZqYb*F`4"> <field name="BOOL">FALSE</field> </shadow> </value> <value name="DELAY_MS"> <shadow type="math_number" id="RuzZZwJCr^fSLG#J!_,R"> <field name="NUM">0</field> </shadow> </value> <next> <block type="debug" id="KALtlCO.2MwheFyeT0HT"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="{(gXd)Ccr;b6xnQurijv"> <field name="TEXT"> Poolpumpe aus 2ter</field> </shadow> </value> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </xml>
-
sorry - ich bekomm das auch nicht so hin
aber ich habe dir eine funktion mit dem offfset angehängt - diese funktion gibt den wert true zurück, wenn wir in der sommerzeit sind und false in der winterzeit - dann wird varminuten angepasst - wenn die sommerzeit wegfällt, müsstest du das halt ändern.
habe nur den ersten block angepasst zum importierenvielleicht meldet sich noch jmd, der das besser kann
-
@liv-in-sky
Kein Problem, aber deine Funktion hilft mir sehr, so ist es für mich auch ziemlich sauber.
Danke dir vielmals. -
wollte das nicht so stehen lassen
so gehts auch ohne funktion - jetzt kannst du dir aussuchen, was besser für dich paßt
falls es für dich paßt, bitte [gelöst-]- in die erste überschrift dieses threads voranstellen
gruß