NEWS
[gelöst]Fenster Zählen mit Blockly
-
@MyzerAT sagte in Fenster Zählen mit Blockly:
weil ich diese Zähler Datenpunkte dann auch für andere Scripte verwenden kann
Diese Datenpunkte liefern gegenüber dem opend-Datenpunkt keine Zusatzinformation, verbrauchen also nur Speicher.
-
@paul53 sagte in Fenster Zählen mit Blockly:
@MyzerAT sagte in Fenster Zählen mit Blockly:
weil ich diese Zähler Datenpunkte dann auch für andere Scripte verwenden kann
Diese Datenpunkte liefern gegenüber dem opend-Datenpunkt keine Zusatzinformation, verbrauchen also nur Speicher.
meinst du RAM ? hab 8GB sollte kein Problem werden ^^
-
@MyzerAT sagte in Fenster Zählen mit Blockly:
hab 8GB sollte kein Problem werden
Auch wenn man genug hat, sollte man unnötige Sachen vermeiden.
-
leider habe ich kein Blockly "Fenster Zählen" gefunden, zwar einige Anfragen und Versuche, dabei ist es aber auch geblieben.
so falls jemand neuer Interesse hat, hier das fertige Script:
ps: man muss dazu vorher Datenpunkte anlege
BlocklyJavascriptTypeScript Protokoll Ausgewählte Blöcke exportieren <block xmlns="http://www.w3.org/1999/xhtml" type="on_ext" id="@QkzQsh6z3#|!OcBbDIY" x="-337" y="1907"> <mutation items="8"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="($VT#T-w.p+r=AA{2P-/"> <field name="oid">#Eigene.0.Lüften.Balkontür</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="+G:8T1MJO?(+wdeR)=g="> <field name="oid">#Eigene.0.Lüften.Fenster_Bad</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="XmDa,o6FRN=mQQ7,}7o|"> <field name="oid">#Eigene.0.Lüften.Fenster_Büro</field> </shadow> </value> <value name="OID3"> <shadow type="field_oid" id="};,Zjtp%UqWPTMLmX/sk"> <field name="oid">#Eigene.0.Lüften.Fenster_Wohnzimmer_rechts</field> </shadow> </value> <value name="OID4"> <shadow type="field_oid" id=")iim,rc}:Ky/U)@:N%eC"> <field name="oid">#Eigene.0.Lüften.Fenster_Wohnzimmer_links</field> </shadow> </value> <value name="OID5"> <shadow type="field_oid" id=".VuIdpv9mtuY=q~;jHj$"> <field name="oid">#Eigene.0.Lüften.Fenster_Schlafzimmer_rechts</field> </shadow> </value> <value name="OID6"> <shadow type="field_oid" id="t`z%(boK65U3c[[s:`/L"> <field name="oid">#Eigene.0.Lüften.Fenster_Schlafzimmer_rechts</field> </shadow> </value> <value name="OID7"> <shadow type="field_oid" id="+AtuqsLw7Nx_pIXEem88"> <field name="oid">#Eigene.0.Lüften.Fenster_Küche</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="_6,#Ec)l!WL-#lX6*k[4"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="VALUE"> <block type="math_number" id="!}I!5@L2/2yR4[st!K;^"> <field name="NUM">0</field> </block> </value> <next> <block type="controls_if" id="V7oZMgfLKoRL:CSFoZj)"> <value name="IF0"> <block type="get_value" id="$Hgafauj^!bsfxvYwBDb"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Balkontür</field> </block> </value> <statement name="DO0"> <block type="math_change" id="eVHqjv];cd_Z3u~+|N*3"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="L$BtexbTv,A%UbTpa#.#"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="|+5FY1Idzwakr+Zn4.^/"> <value name="IF0"> <block type="get_value" id="6)7?/SeobSt-0qrvjttM"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Bad</field> </block> </value> <statement name="DO0"> <block type="math_change" id="-jwe$LYL*n5f3WI#dn$c"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="^Fh[otWmSV[m,)p*Z`:M"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="u]B!axaHU]w,PbmH*HUu"> <value name="IF0"> <block type="get_value" id="Pc+N`d3D$#k1^H1XR%bN"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Büro</field> </block> </value> <statement name="DO0"> <block type="math_change" id="55-#[Wlf3F)KS_5/%vLk"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="|3`?F]eB^GY8HkNoRDvb"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="T6qy%0bG`BupR$ZN(dO;"> <value name="IF0"> <block type="get_value" id="}1D{xbG@nN)9x)3^s-k-"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Schlafzimmer_links</field> </block> </value> <statement name="DO0"> <block type="math_change" id="{vg88#C@bce8[!8HaU%)"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="w,Jwb-hBBTh^-sB_m]Am"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="!+@}q]4.}Q;wVFL6%Ebq"> <value name="IF0"> <block type="get_value" id="`wPGanxo{8%x1x0kiyCt"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Schlafzimmer_rechts</field> </block> </value> <statement name="DO0"> <block type="math_change" id="}c(u/!LhYn[wVZ45M6`@"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="72EJ@OgkY4t*hZ8n4X4y"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="=]lq33-)aRGwuv[bLW+R"> <value name="IF0"> <block type="get_value" id="%%uQ.c8FLkFUm|;z04WO"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Küche</field> </block> </value> <statement name="DO0"> <block type="math_change" id="Rc7uC$Ad+V_TMV2(czoA"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="$2Yz*),{6fRf;hz,[~gA"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="qcH.A1T:PbxKX.cYfG@Q"> <value name="IF0"> <block type="get_value" id="/%W?CYHPin9N%cQH!E1Y"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Wohnzimmer_links</field> </block> </value> <statement name="DO0"> <block type="math_change" id="|TU)X/ipKvMxl%e4_*:R"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="KFuY]taNv;}oZ46j(#wq"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="ZD/K[X~2(:3F=^pa4]4#"> <value name="IF0"> <block type="get_value" id="mJ0a%Gt+-UeHufr8/-jw"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Wohnzimmer_rechts</field> </block> </value> <statement name="DO0"> <block type="math_change" id="9#bw4.KOJNt4+,[Db-pe"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="X+jrZVw6}G#(x[`tUAE^"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="update" id="OL5=6jP{T@91.f(!qddu"> <mutation delay_input="true"></mutation> <field name="OID">#Eigene.0.Lüften.Zählen</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="variables_get" id="HUJ)h[rJ,d*2u0P^ig/R"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> <block xmlns="http://www.w3.org/1999/xhtml" type="on_ext" id="@QkzQsh6z3#|!OcBbDIY" x="-337" y="1907"> <mutation items="8"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="($VT#T-w.p+r=AA{2P-/"> <field name="oid">#Eigene.0.Lüften.Balkontür</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="+G:8T1MJO?(+wdeR)=g="> <field name="oid">#Eigene.0.Lüften.Fenster_Bad</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="XmDa,o6FRN=mQQ7,}7o|"> <field name="oid">#Eigene.0.Lüften.Fenster_Büro</field> </shadow> </value> <value name="OID3"> <shadow type="field_oid" id="};,Zjtp%UqWPTMLmX/sk"> <field name="oid">#Eigene.0.Lüften.Fenster_Wohnzimmer_rechts</field> </shadow> </value> <value name="OID4"> <shadow type="field_oid" id=")iim,rc}:Ky/U)@:N%eC"> <field name="oid">#Eigene.0.Lüften.Fenster_Wohnzimmer_links</field> </shadow> </value> <value name="OID5"> <shadow type="field_oid" id=".VuIdpv9mtuY=q~;jHj$"> <field name="oid">#Eigene.0.Lüften.Fenster_Schlafzimmer_rechts</field> </shadow> </value> <value name="OID6"> <shadow type="field_oid" id="t`z%(boK65U3c[[s:`/L"> <field name="oid">#Eigene.0.Lüften.Fenster_Schlafzimmer_rechts</field> </shadow> </value> <value name="OID7"> <shadow type="field_oid" id="+AtuqsLw7Nx_pIXEem88"> <field name="oid">#Eigene.0.Lüften.Fenster_Küche</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="_6,#Ec)l!WL-#lX6*k[4"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="VALUE"> <block type="math_number" id="!}I!5@L2/2yR4[st!K;^"> <field name="NUM">0</field> </block> </value> <next> <block type="controls_if" id="V7oZMgfLKoRL:CSFoZj)"> <value name="IF0"> <block type="get_value" id="$Hgafauj^!bsfxvYwBDb"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Balkontür</field> </block> </value> <statement name="DO0"> <block type="math_change" id="eVHqjv];cd_Z3u~+|N*3"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="L$BtexbTv,A%UbTpa#.#"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="|+5FY1Idzwakr+Zn4.^/"> <value name="IF0"> <block type="get_value" id="6)7?/SeobSt-0qrvjttM"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Bad</field> </block> </value> <statement name="DO0"> <block type="math_change" id="-jwe$LYL*n5f3WI#dn$c"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="^Fh[otWmSV[m,)p*Z`:M"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="u]B!axaHU]w,PbmH*HUu"> <value name="IF0"> <block type="get_value" id="Pc+N`d3D$#k1^H1XR%bN"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Büro</field> </block> </value> <statement name="DO0"> <block type="math_change" id="55-#[Wlf3F)KS_5/%vLk"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="|3`?F]eB^GY8HkNoRDvb"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="T6qy%0bG`BupR$ZN(dO;"> <value name="IF0"> <block type="get_value" id="}1D{xbG@nN)9x)3^s-k-"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Schlafzimmer_links</field> </block> </value> <statement name="DO0"> <block type="math_change" id="{vg88#C@bce8[!8HaU%)"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="w,Jwb-hBBTh^-sB_m]Am"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="!+@}q]4.}Q;wVFL6%Ebq"> <value name="IF0"> <block type="get_value" id="`wPGanxo{8%x1x0kiyCt"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Schlafzimmer_rechts</field> </block> </value> <statement name="DO0"> <block type="math_change" id="}c(u/!LhYn[wVZ45M6`@"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="72EJ@OgkY4t*hZ8n4X4y"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="=]lq33-)aRGwuv[bLW+R"> <value name="IF0"> <block type="get_value" id="%%uQ.c8FLkFUm|;z04WO"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Küche</field> </block> </value> <statement name="DO0"> <block type="math_change" id="Rc7uC$Ad+V_TMV2(czoA"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="$2Yz*),{6fRf;hz,[~gA"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="qcH.A1T:PbxKX.cYfG@Q"> <value name="IF0"> <block type="get_value" id="/%W?CYHPin9N%cQH!E1Y"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Wohnzimmer_links</field> </block> </value> <statement name="DO0"> <block type="math_change" id="|TU)X/ipKvMxl%e4_*:R"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="KFuY]taNv;}oZ46j(#wq"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="ZD/K[X~2(:3F=^pa4]4#"> <value name="IF0"> <block type="get_value" id="mJ0a%Gt+-UeHufr8/-jw"> <field name="ATTR">val</field> <field name="OID">#Eigene.0.Lüften.Fenster_Wohnzimmer_rechts</field> </block> </value> <statement name="DO0"> <block type="math_change" id="9#bw4.KOJNt4+,[Db-pe"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> <value name="DELTA"> <shadow type="math_number" id="0G2vHGsrZdtZO%BHVN,o"> <field name="NUM">1</field> </shadow> <block type="math_number" id="X+jrZVw6}G#(x[`tUAE^"> <field name="NUM">1</field> </block> </value> </block> </statement> <next> <block type="update" id="OL5=6jP{T@91.f(!qddu"> <mutation delay_input="true"></mutation> <field name="OID">#Eigene.0.Lüften.Zählen</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="variables_get" id="HUJ)h[rJ,d*2u0P^ig/R"> <field name="VAR" id="YS@v,^6QAG?xJ6tmR*Mb" variabletype="">AnzahlOffen</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block>
-
@MyzerAT ich glaube der Fehler in deinem Script liegt darin, dass du für beide Teilscripte den gleichen Trigger verwendest. Das heißt:
Beide Scripte werden gleichzeitig ausgeführt. Wenn das Zählen schneller geht als das Datenpunkte setzen hast schon verloren. Deswegen hat das bei dir nie geklappt.Mach es so wie @paul53 bebeispielt hat, da biste unabhängig von anderen Scripten.
-
@paul53 sagte in Fenster Zählen mit Blockly:
@MyzerAT sagte in Fenster Zählen mit Blockly:
hab 8GB sollte kein Problem werden
Auch wenn man genug hat, sollte man unnötige Sachen vermeiden.
da ich in der Lernphase bin, bin ich froh wenn es mal so funktioniert und um so mehr ich weiss um so mehr besser baue ich meine Scripte eh wieder um, habe ich schon öfters gemacht, wenn ich mal wieder was neues gelernt habe hier im Forum .
-
@thewhobox sagte in Fenster Zählen mit Blockly:
ch glaube der Fehler in deinem Script liegt darin, dass du für beide Teilscripte den gleichen Trigger verwendest.
ja das war die Ursache, bin ich dann eh drauf gekommen^, kommt vom copy&paste ^^
-
@MyzerAT Sehr gut
Sobald der Selector im latest repo ist kann man das sogar noch mehr Vereinfachen:
(nur so als Beispiel, es stimmen nicht alle Angaben) -
ich hoffe das mein pushover wunsch auch umgesetzt werden kann
-
gibt es aber schon im Forum, hier mal ein Auszug davon (ist sonst zu lang) Ich habe "normale" Fensterkontakte mit 0 und 1 (zu und auf) und welche mit 0,1 und 2 (zu, gekippt, auf)
-
kannst Dir das hier ja noch ansehen, da habe ich es beschrieben und zwei Varianten exportiert.
-
sieht dann übrigens so aus
Puhover
Telegram
Die nackte Zahl wieviele Fenster offen sind nützt mir sonst nicht viel.
Hier kann ich dann auch Alexa kurz befragen, oder über Telegram/TexttoCommand kurz Fenster eintippen und bekomme den Status. -
schaut super aus, aber mit pushover meinte ich nicht die Fenster, die will ich da gar nicht drinnen habe ^^