-
Notifications
You must be signed in to change notification settings - Fork 25
Device Counter and Servicemessages
Sebastian Bormann edited this page Feb 6, 2022
·
5 revisions
!This is deprecated, because since v2.0 the Device-Counter and Servicemessages-Functions aredirectly built in to iQontrol. Have a look at lists- and counters - default-lists!
- Blockly-Script, that counts devices with defined states, for example
- number of opened doors or windows
- devices that are unreachable
- devices with empty batteries
- ...
- You can freely add or modify the counters, conditions, filters an units
- The script checks for created aliases, so that the device itself and the alias is only counted once
- You can nicely display the counted things in iQontrol:
- Import the code beneath to a new blockly script (i grouped it into the folder Device-Counters)
- Modify the settings of the script (left upper corner of the blockly):
- For each wanted counter set name
- Set the selector (the provides samples use functions like 'Fenster EG', 'Fenster OG', 'Türen' wich means 'Windows lower floor', 'Windows upper floor' and 'doors' in german. You have to modify that to your functions-list, otherwise it will not work!
- Set the count-condition
- Set a delay in ms (the counter will only count, if the condition keeps matching for this time)
- Set filters
- Set the unit
- After saving (maybe you have to restart once after the first start!) the configured counters are created under javascript.0.Device-Counter:
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="$cPU_9(xAYkfoT9iN=)H">selectors</variable>
<variable id="z]jTgOOO$2jk}cswX.ty">stateName</variable>
<variable id="pc@+A4B*j#ab~8hMi{.Z">initValue</variable>
<variable id="k`A$Tt~hitfxhX5hu6TT">common</variable>
<variable id="hBHc4zj%4q{R`d`2]q#y">name</variable>
<variable id="N$c^Ci$6[u/i)b~lfsc:">countCondition</variable>
<variable id="PHl4Y`#y5YTa([35V5LH">delay</variable>
<variable id="ea8DeyK1gT@oW@GMzl0?">filters</variable>
<variable id="wK?Fho@VDwJc-J@?rLi:">unit</variable>
<variable id="WJGm/J/OpBtLh0{]noLp">ObjectID</variable>
<variable id="LYQ]a1yRbLus|U(a)S)^">id</variable>
<variable id="-t{1hi,x::qg^?=}zi38">val</variable>
<variable id="+t;%6_-2B(8q-Qp+,,9l">counters</variable>
<variable id="9yhVfPUIAaLFKk:pHabC">counterTotal</variable>
<variable id="kD`Og9/H/ZhOD|,(ydOX">counterMatchedCondition</variable>
<variable id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</variable>
<variable id="m`AV@FzuKypX,{q_}q/G">aliasIds</variable>
<variable id="C0]FO#7:2kPAzfaak0PI">aliasId</variable>
<variable type="timeout" id="timeoutDeviceCounterDelay">timeoutDeviceCounterDelay</variable>
<variable id="RaW-ioodkNPXf$q:vEqI">filter</variable>
</variables>
<block type="comment" id="z$1%6DWRAADH|okVwu/0" x="-1537" y="63">
<field name="COMMENT">Variablen erstellen</field>
<next>
<block type="variables_set" id="CdwsgsCK6Xd+Q34N`*yR">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
<value name="VALUE">
<block type="lists_create_with" id="_Ic9hcT@?(]%XWNfuLEU">
<mutation items="0"></mutation>
</block>
</value>
<next>
<block type="variables_set" id="N[~q+.]8Guu(wI%vs4s|">
<field name="VAR" id="9yhVfPUIAaLFKk:pHabC">counterTotal</field>
<value name="VALUE">
<block type="lists_create_with" id="L~*@]pxfKrkEo7D(e3X?">
<mutation items="0"></mutation>
</block>
</value>
<next>
<block type="variables_set" id="n2*9lJRc3D_cuWP|v0=i">
<field name="VAR" id="kD`Og9/H/ZhOD|,(ydOX">counterMatchedCondition</field>
<value name="VALUE">
<block type="lists_create_with" id="Zn)BxR)fKgVlv8%?mG)f">
<mutation items="0"></mutation>
</block>
</value>
<next>
<block type="variables_set" id="I7;bExcikRj8#%[anFM[">
<field name="VAR" id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</field>
<value name="VALUE">
<block type="lists_create_with" id="_tf[jCN[C%MdH%v?*{7w">
<mutation items="0"></mutation>
</block>
</value>
<next>
<block type="comment" id="0[^Xm;O:1*#lO5a#6Sws">
<field name="COMMENT">HIER COUNTER ERSTELLEN:</field>
<next>
<block type="comment" id="G?JbTBQM/i_ahow}qR8@">
<field name="COMMENT">countCondition:</field>
<next>
<block type="comment" id="m8(h$H*{KhZuMrSXDg8`">
<field name="COMMENT">Expression with keywords val and id.</field>
<next>
<block type="comment" id="b]RWM~R)A[]_)`umR=Nh">
<field name="COMMENT">May be a function that returns a boolean</field>
<next>
<block type="comment" id="(D3Gy4|u8}|;w`=#cwC)">
<field name="COMMENT">or it may be a boolean itself.</field>
<next>
<block type="procedures_callnoreturn" id="]fjdEH=%k][uz{GMj3]4">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id="@X9{c-zZ~{j%k/1PdI/}">
<field name="TEXT">Offene Fenster EG</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="q(qat8*+yQ%v:597D-9[">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="HrVV]E%_S,/{1*$^uGE_">
<field name="TEXT">channel[state.id=*.STATE](functions='Fenster EG')</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="z|K:J8%`eSu#o~no8:8A">
<field name="TEXT">channel[state.id=*.ACTUAL](functions='Fenster EG')</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="k4)?8|inpW$pj6|rbYEK">
<field name="TEXT">state[role='sensor.window'](functions='Fenster EG')</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id=".fnqp2Lyc5MZS;l7?pz*">
<field name="TEXT">val != false</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="yg%V/?$)~;v1;8{e=g~6">
<field name="NUM">0</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="#DVvo%/yL?L:ywEFx-xS">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="]qXz?O01Lh.3)Fohc+Il">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="=t?oKlRG~ljv8g7EE|.c">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="..WD^H~d/GMEp[XC18B=">
<field name="TEXT">Fenster</field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="j,PZ(Rw^R,!6DsGjBTQb">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id=":k.4eiEzuXW6={/:!Px+">
<field name="TEXT">Offene Fenster OG</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="?v:wYMaH%[pe1o?mpyWl">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="p)PK{m?D[X%_]hn=$Wr*">
<field name="TEXT">channel[state.id=*.STATE](functions='Fenster OG')</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="b5Ghxrf#OLq4mAJe]Wn=">
<field name="TEXT">channel[state.id=*.ACTUAL](functions='Fenster OG')</field>
</block>
</value>
<value name="ADD2">
<block type="text" id=";g#mE!zb%quRe+9bF-Gu">
<field name="TEXT">state[role='sensor.window'](functions='Fenster OG')</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="!(fY!??T%[j(T8H{Z6s;">
<field name="TEXT">val != false</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="m3S-Jb|b;2y)DX}#h?r-">
<field name="NUM">0</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="6la=N@H(k*:q!eGNBdv,">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="XVbGaf[-8Sf~Siat9MKH">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="Uwoxl|ogW=btfZ@zo@R)">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="r3RGcfOKWf.v*)Ge_m*|">
<field name="TEXT">Fenster</field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="~LD;{1J9QOOWG8e1}1?,">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id="wQ!1k*xLl@}!kw~I879%">
<field name="TEXT">Offene Türen</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="=W.|wj,X4@PSan[$gbIp">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="h-gp7O5H{-Ct{_QrCpkp">
<field name="TEXT">channel[state.id=*.STATE](functions='Türen')</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="`jf#K2WQ)I_N*.bdO[_|">
<field name="TEXT">channel[state.id=*.ACTUAL](functions='Türen')</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="GAr2vNpR0qQ!_4ELWuiU">
<field name="TEXT">state[role='sensor.window'](functions='Türen')</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="}vy.rFE^!u9RQ]n*^vhX">
<field name="TEXT">val != false</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="|MLO?qZl@}^}*t.QX=[h">
<field name="NUM">0</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="0n!Y4#^I{:IDAFRO@JuO">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="a9;wLF]1A~7b4*$f#VHS">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="Pgzow5o1NOL6,^I%gdBH">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="A+CYT}sV4uL$DhL,LQsl">
<field name="TEXT">Tür(en)</field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="K2d~Az8ZLp-r?+KmE]9o">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id="{od^PLPDJW@@oU[ZI:gn">
<field name="TEXT">Offene Fenster und Türen</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="2j!3;OEg7KhvadDPan/I">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="text" id=";%dGY8ett|s%l)0|dcAg">
<field name="TEXT">channel[state.id=*.STATE](functions='Fenster EG')</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="`zj#yH^4r.B5Fu:A^{_O">
<field name="TEXT">channel[state.id=*.ACTUAL](functions='Fenster EG')</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="CS6*g39~){XVllfH4sF+">
<field name="TEXT">state[role='sensor.window'](functions='Fenster EG')</field>
</block>
</value>
<value name="ADD3">
<block type="text" id="!p=y^{z3fQmYw8CT.-II">
<field name="TEXT">channel[state.id=*.STATE](functions='Fenster OG')</field>
</block>
</value>
<value name="ADD4">
<block type="text" id="}Ok8hzKW^3E/R~0L|{m+">
<field name="TEXT">channel[state.id=*.ACTUAL](functions='Fenster OG')</field>
</block>
</value>
<value name="ADD5">
<block type="text" id="#i}A:%1`H`abANA{n3-P">
<field name="TEXT">state[role='sensor.window'](functions='Fenster OG')</field>
</block>
</value>
<value name="ADD6">
<block type="text" id="zj^**de-?Blhbtlb;}Ii">
<field name="TEXT">channel[state.id=*.STATE](functions='Türen')</field>
</block>
</value>
<value name="ADD7">
<block type="text" id="P7GR_0;8/d8HH=JoJNbB">
<field name="TEXT">channel[state.id=*.ACTUAL](functions='Türen')</field>
</block>
</value>
<value name="ADD8">
<block type="text" id="VNo^BgN:Eyyma:I:yP)a">
<field name="TEXT">state[role='sensor.window'](functions='Türen')</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="v*/h(se;$A1ZHOK+gDrM">
<field name="TEXT">val != false</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="SevN/.x-;C!Ly*H5LCcj">
<field name="NUM">0</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="M7yd]=C?NvQPWm{`AQv?">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="-8W_Pkk*N5z/jc(P2Z20">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="7j~CHg/@:yU$p#J/H;q+">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="5b{wx5.VJvQl;iTl%D4(">
<field name="TEXT">Fenster und Türen</field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="^Rs}tv3G?2.XaKH=gYa?">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id="w8[ir!Zs8PWEl8}yLKs5">
<field name="TEXT">LOWBAT</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="a0w)bTR!:x?W@s2ys7Nf">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="7G/tI_jd7Uheh`L~,|6.">
<field name="TEXT">channel[state.id=*.LOWBAT$]</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="uRAeQTS3]nN=3#BL{[d+">
<field name="TEXT">state[role='indicator.lowbat']</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="//r6f21p%v{Kzg8;7wEV">
<field name="TEXT">state[role='indicator.maintenance.lowbat']</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="XO,o_YHWe+U_j:x@z472">
<field name="TEXT">val != false</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="4ru?vXboSFS}+MoC#9}?">
<field name="NUM">0</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id=",kwHLL)BS*/;%h?LBDk(">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="#[!nLaBYr.n|$Ni6Ad2%">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="6t~2D-g[@a!$#ue?z^P~">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="Y?,s1KReQ5j^(=shC_=Q">
<field name="TEXT">javascript.0.Heizung.Gruppen</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="N$A+x/+r(nbnBrhGX]]+">
<field name="TEXT"></field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="IY(`m9BK0Y=Afi1hYXKK">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id=",~zbe9+?7^SFXc-HqekQ">
<field name="TEXT">UNREACH</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="_=i^6Jb#JfTJm#1oFFz0">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="X[Efl+C53n0I%?jZH,zg">
<field name="TEXT">channel[state.id=*.UNREACH$]</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="=,[~k|;myb@@yh|6cph,">
<field name="TEXT">state[role='indicator.unreach']</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="[R/tJ+]96vzdW-t;?gog">
<field name="TEXT">state[role='indicator.maintenance.unreach']</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="kiOO9z}b{~sGhHE^P@a9">
<field name="TEXT">val != false</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="}lMR}I:*D2[$JjV^GTOc">
<field name="NUM">180000</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="nu5:[1sW,O~rI!6?yT$$">
<mutation items="4"></mutation>
<value name="ADD0">
<block type="text" id="~{/}o28#*k!!iXrry!4j">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="*4Diabo(oN)x_i$Chuou">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="lfh$}=LuFbj=dmWRa1Mm">
<field name="TEXT">STICKY_UNREACH</field>
</block>
</value>
<value name="ADD3">
<block type="text" id="Fmws0-i;%s),?O?5/Zu,">
<field name="TEXT">javascript.0.Heizung.Gruppen</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="=1j3(*Lp1Xi-SD}$C$?G">
<field name="TEXT"></field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="Y:1v+qD)0,3Y.N.;6?e7">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id="I_:Hrt_tRqeB=AOW-Otk">
<field name="TEXT">ERROR</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="UaIbrZm1yK*uV1561w#T">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="a4}NRJ,oEjdt6zlaLn6A">
<field name="TEXT">channel[state.id=*.ERROR$]</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="vv^~{sD5g,@OSsgOP}JW">
<field name="TEXT">state[role='indicator.error']</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="E}]%F.)Ux3/{}#sJvyE8">
<field name="TEXT">channel[state.id=wolf.0.hg1.1$]</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="P{!FLks.nH/!M?:^sGR~">
<field name="TEXT">var obj = getObject(id); var statesVal = null; if (obj && obj.common && obj.common.states && obj.common.states[val]) statesVal = obj.common.states[val]; return (val != false && statesVal != "SABOTAGE");</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="KQDVLRM(~[]B?BY^LqKN">
<field name="NUM">60000</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="m=HQ8mt9%BK7S*U?rb=0">
<mutation items="4"></mutation>
<value name="ADD0">
<block type="text" id="nr#8(l66Z)Chs[ia`R:r">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="PaRU]G%pB9nA7Df(|WNJ">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="$.o6biV0,Zu{X$^waAf=">
<field name="TEXT">javascript.0.Heizung.Gruppen</field>
</block>
</value>
<value name="ADD3">
<block type="text" id="r]}iT$$|u7yr|Md$JW]+">
<field name="TEXT">javascript.0.scriptProblem</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="P`Zs$5z;{(qHsfQj~J9Z">
<field name="TEXT"></field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="=)6.bayUu+/%`q55|vkx">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id="4qC+XL^ja,[9=S+MVZc9">
<field name="TEXT">MAINTENANCE</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="dB^aAU@5*}zN;S1{Y9=;">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="jgf;M,T1@vlXl^}GuIgO">
<field name="TEXT">channel[state.id=*.MAINTAIN$]</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="A6C4lAy|t)u:xxnnw3Sy">
<field name="TEXT">state[role='indicator.maintenance']</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="~O7NQbuZ,rev6v(MzgCw">
<field name="TEXT">var obj = getObject(id); var statesVal = null; if (obj && obj.common && obj.common.states && obj.common.states[val]) statesVal = obj.common.states[val]; return (val != false && statesVal != "SABOTAGE");</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="IU+,f6Z?COLdN^$[xB}t">
<field name="NUM">60000</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="76xTce$|LjXBrSSRbx!*">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="C5@:Ro{*Lg+1E+yvft*v">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="C;8,fk+~#%0#CV{k]%L0">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="BNBeV0ne-TV{XmZ[uN9B">
<field name="TEXT">javascript.0.Heizung.Gruppen</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="sdQB65L5$1F5=^$d]!Ct">
<field name="TEXT"></field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="hV(=pFpg{N$+#]d7{F)A">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id="1T0Krn,Gj{sX1XAif8n]">
<field name="TEXT">SABOTAGE</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="t.KzQq`4UgbQ$X3KYhW4">
<mutation items="1"></mutation>
<value name="ADD0">
<block type="text" id="a$7e;sVswgklg)`8r_#d">
<field name="TEXT">channel[state.id=*.ERROR$]</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="K%r2K}Q9#0U[m]|Fk+r{">
<field name="TEXT">var obj = getObject(id); var statesVal = null; if (obj && obj.common && obj.common.states && obj.common.states[val]) statesVal = obj.common.states[val]; return (statesVal == "SABOTAGE");</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id=":iPSJCSB*o^82t-_N/6Y">
<field name="NUM">0</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="8|%Um~yD@o44$u!*hj($">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="?[TB#iPLd]Bo]xh@Y8.=">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="EINL2]$TI,(Z_IJhlbhJ">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="9#Os[nO8L+S641HxPx1=">
<field name="TEXT"></field>
</block>
</value>
<next>
<block type="procedures_callnoreturn" id="yOBd*j-={nV]tfvxSERL">
<mutation name="addDeviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
<arg name="unit"></arg>
</mutation>
<value name="ARG0">
<block type="text" id="rog-zlR1%k;.]}:ftLrk">
<field name="TEXT">CONFIG_PENDING</field>
</block>
</value>
<value name="ARG1">
<block type="lists_create_with" id="g*pj}(+]QOBjd#ii|dje">
<mutation items="1"></mutation>
<value name="ADD0">
<block type="text" id="#+K:9x~EL=I@z}_m}M3A">
<field name="TEXT">channel[state.id=*.CONFIG_PENDING$]</field>
</block>
</value>
</block>
</value>
<value name="ARG2">
<block type="text" id="Sz^EwP%)$,5N!6m@7`D6">
<field name="TEXT">val != false</field>
</block>
</value>
<value name="ARG3">
<block type="math_number" id="QY#hGrjS#!bq]*v/JqS+">
<field name="NUM">60000</field>
</block>
</value>
<value name="ARG4">
<block type="lists_create_with" id="h3JEH0]m!3CsW9|/M]z_">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="h*PS:htZm-U!;:UNR`v6">
<field name="TEXT">hm-rpc.1</field>
</block>
</value>
<value name="ADD1">
<block type="text" id=")5_+b[?g=bHgM?CR`ykd">
<field name="TEXT">hm-rpc.2</field>
</block>
</value>
</block>
</value>
<value name="ARG5">
<block type="text" id="I{=K;h/.lXhKlcsNXV;B">
<field name="TEXT"></field>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
<block type="comment" id="Af7En161qKyM]U6v)-{Z" x="-937" y="63">
<field name="COMMENT">Hilfsfunktionen</field>
</block>
<block type="procedures_defcustomreturn" id="a:d_9T;JK^Y5,X_B@FXz" x="-937" y="88">
<mutation statements="false">
<arg name="selectors" varid="$cPU_9(xAYkfoT9iN=)H"></arg>
</mutation>
<field name="NAME">selector$</field>
<field name="SCRIPT">dmFyIHJlc3VsdCA9IFtdOw0KaWYodHlwZW9mIHNlbGVjdG9ycyA9PSAic3RyaW5nIikgc2VsZWN0b3JzID0gW3NlbGVjdG9yc107IC8vQ29udmVydCBzZWxlY3RvcnMgdG8gYW4gYXJyYXkgaWYgaXQgaXMgYSBzdHJpbmcNCnNlbGVjdG9ycy5mb3JFYWNoKGZ1bmN0aW9uKGVudHJ5KXsNCiAgICByZXN1bHQgPSByZXN1bHQuY29uY2F0KEFycmF5LnByb3RvdHlwZS5zbGljZS5hcHBseSgkKGVudHJ5KSkpOw0KfSk7DQpyZXN1bHQgPSByZXN1bHQuZmlsdGVyKGZ1bmN0aW9uKGVsZW1lbnQsIGluZGV4LCBhcnJheSl7IHJldHVybiAoYXJyYXkuaW5kZXhPZihlbGVtZW50KSA9PSBpbmRleCk7IH0pOyAvL1JlbW92ZSBkdXBsaWNhdGVzDQpyZXR1cm4gcmVzdWx0Ow==</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="comment" id="u(k[Fgx[tt,!P@d,(-MM" x="-237" y="62">
<field name="COMMENT">addDeviceCounter</field>
</block>
<block type="procedures_defcustomnoreturn" id="aNFZd`hc86AlpT{gdUGA" x="-937" y="113">
<mutation statements="false">
<arg name="stateName" varid="z]jTgOOO$2jk}cswX.ty"></arg>
<arg name="initValue" varid="pc@+A4B*j#ab~8hMi{.Z"></arg>
<arg name="common" varid="k`A$Tt~hitfxhX5hu6TT"></arg>
</mutation>
<field name="NAME">createStateUnforced</field>
<field name="SCRIPT">Y3JlYXRlU3RhdGUoc3RhdGVOYW1lLCBpbml0VmFsdWUsIGZhbHNlLCBKU09OLnBhcnNlKGNvbW1vbikpOw==</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="procedures_defnoreturn" id="II?_`Bia/e,Mq~*.y!ZS" x="-237" y="88">
<mutation>
<arg name="name" varid="hBHc4zj%4q{R`d`2]q#y"></arg>
<arg name="selectors" varid="$cPU_9(xAYkfoT9iN=)H"></arg>
<arg name="countCondition" varid="N$c^Ci$6[u/i)b~lfsc:"></arg>
<arg name="delay" varid="PHl4Y`#y5YTa([35V5LH"></arg>
<arg name="filters" varid="ea8DeyK1gT@oW@GMzl0?"></arg>
<arg name="unit" varid="wK?Fho@VDwJc-J@?rLi:"></arg>
</mutation>
<field name="NAME">addDeviceCounter</field>
<comment pinned="false" h="58" w="706">countCondition: boolean - to match value || function(value) returning a boolean</comment>
<statement name="STACK">
<block type="comment" id="hG9$V{dBq{%jcw/%A7=5">
<field name="COMMENT">Instanznummer erzeugen</field>
<next>
<block type="lists_setIndex" id="gJmychi@Mk@w9}sVQcBc">
<mutation at="false"></mutation>
<field name="MODE">INSERT</field>
<field name="WHERE">LAST</field>
<value name="LIST">
<block type="variables_get" id="5nbm@o;q`wNXW(vq=T0;">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="TO">
<block type="variables_get" id="dmTF.,.iM~KvLd`_8]g4">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<next>
<block type="comment" id="22(FgewvcQ@Cr#Z$W_X$">
<field name="COMMENT">States erstellen</field>
<next>
<block type="procedures_callcustomnoreturn" id="F^ah|o,x/#C?HV@t20X0" inline="true">
<mutation name="createStateUnforced">
<arg name="stateName"></arg>
<arg name="initValue"></arg>
<arg name="common"></arg>
</mutation>
<value name="ARG0">
<block type="text_join" id="//PKIw7/wU4YWrFKlhsb">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="bNJyLtL4lC,eqcj4heri">
<field name="TEXT">Device-Counter.</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="2t[%uEsK{9SK3Q$Kb?=T">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ADD2">
<block type="text" id=":OJd^M:v!V6kGLoj@lUZ">
<field name="TEXT">.TOTAL</field>
</block>
</value>
</block>
</value>
<value name="ARG1">
<block type="math_number" id="CbRhvp~ZY!xI7%c1c]f`">
<field name="NUM">0</field>
</block>
</value>
<value name="ARG2">
<block type="text_join" id="Vo;TL^l6m].785s/#+g:">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="s{*yuMyMeYat{@6Lf0vm">
<field name="TEXT">{"read":"true", "write":"false", "unit":"</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="T@Cf|:{z-jA#K`E+dU:;">
<field name="VAR" id="wK?Fho@VDwJc-J@?rLi:">unit</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="/c`K{WS2mDtOdES;wipO">
<field name="TEXT">"}</field>
</block>
</value>
</block>
</value>
<next>
<block type="procedures_callcustomnoreturn" id="5qQ}{cKi)V^oCErmI5}3" inline="true">
<mutation name="createStateUnforced">
<arg name="stateName"></arg>
<arg name="initValue"></arg>
<arg name="common"></arg>
</mutation>
<value name="ARG0">
<block type="text_join" id="2sn46XBD4,cCKOG^kMiQ">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="6gHP||IWns:KWj2l%f:U">
<field name="TEXT">Device-Counter.</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="@y/I%((:2qW(no{($=Y0">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="6J9aFP+?RMK4+MG#J5`0">
<field name="TEXT">.ACTUAL</field>
</block>
</value>
</block>
</value>
<value name="ARG1">
<block type="math_number" id="%Bk`FUxwY1VtQ]uuCKy|">
<field name="NUM">0</field>
</block>
</value>
<value name="ARG2">
<block type="text_join" id="UP;wWI.Kr7Qe-0K%hTG*">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id=";-W4!/77BjR54OtBXd,)">
<field name="TEXT">{"read":"true", "write":"false", "unit":"</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="7z}-A=Azt(hktGAiA,1;">
<field name="VAR" id="wK?Fho@VDwJc-J@?rLi:">unit</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="Eg[l]kxd*y?:yK}AD_qo">
<field name="TEXT">"}</field>
</block>
</value>
</block>
</value>
<next>
<block type="procedures_callcustomnoreturn" id="C?FBYDj.XX8xa8=6F3`;" inline="true">
<mutation name="createStateUnforced">
<arg name="stateName"></arg>
<arg name="initValue"></arg>
<arg name="common"></arg>
</mutation>
<value name="ARG0">
<block type="text_join" id="f{zFL@]ByN}aKjJ#Q-T=">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="gQ%]tVF`M9r_9kn013@`">
<field name="TEXT">Device-Counter.</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="2TZIC^]aTD~=(vMS*A#=">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="U]yQq4tySle^NjGk:@$n">
<field name="TEXT">.ACTUAL_LIST</field>
</block>
</value>
</block>
</value>
<value name="ARG1">
<block type="text" id="x~C?zH7KShkj~D-}64[a">
<field name="TEXT"></field>
</block>
</value>
<value name="ARG2">
<block type="text_join" id="B2gpvN:gkiG~xI^fxQ0}">
<mutation items="1"></mutation>
<value name="ADD0">
<block type="text" id="f)w2m0A(ag*t)B!Le6m?">
<field name="TEXT">{"read":"true", "write":"false"}</field>
</block>
</value>
</block>
</value>
<next>
<block type="comment" id="mUixg@+G[u~Fi,!y$Qxd">
<field name="COMMENT">Trigger erstellen</field>
<next>
<block type="on_ext" id="XAk~:Uabx-*DK_a:qH!}">
<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 xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="|ruSJ/#@#DykVh,Mjw/_">
<field name="oid">default</field>
</shadow>
<block type="procedures_callcustomreturn" id="9YbFTpE/w@bFoB!i)bME" inline="true">
<mutation name="selector$">
<arg name="selectors"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="7C}%+%4@7F~]1)ky,(V)">
<field name="VAR" id="$cPU_9(xAYkfoT9iN=)H">selectors</field>
</block>
</value>
</block>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="a;Z0S:]8g3COu)cpF,`^">
<mutation name="deviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="1u2_$2)@|XED.h;./Ife">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ARG1">
<block type="variables_get" id=";x(AKb#h#uvG[3tlVkI!">
<field name="VAR" id="$cPU_9(xAYkfoT9iN=)H">selectors</field>
</block>
</value>
<value name="ARG2">
<block type="variables_get" id=";]kAYvJ*fvpC0j!ry-$L">
<field name="VAR" id="N$c^Ci$6[u/i)b~lfsc:">countCondition</field>
</block>
</value>
<value name="ARG3">
<block type="variables_get" id="B7J;p}os`slDU*#/58tN">
<field name="VAR" id="PHl4Y`#y5YTa([35V5LH">delay</field>
</block>
</value>
<value name="ARG4">
<block type="variables_get" id="U0p7{Q3#P(H)(p3d-d@B">
<field name="VAR" id="ea8DeyK1gT@oW@GMzl0?">filters</field>
</block>
</value>
<next>
<block type="timeouts_settimeout" id="yDD,qX2!ct[W4Js5p]cY">
<field name="NAME">timeoutDeviceCounterDelay</field>
<field name="DELAY">delay</field>
<field name="UNIT">ms</field>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="sht99V7r5Z};Zdl^pPD3">
<mutation name="deviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="k!=T(f_qW?]66xOnhe:%">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ARG1">
<block type="variables_get" id="=/=~-^*0y(EqnVxmSRHa">
<field name="VAR" id="$cPU_9(xAYkfoT9iN=)H">selectors</field>
</block>
</value>
<value name="ARG2">
<block type="variables_get" id="~A~B2w_%5ZKIfKyP`J`t">
<field name="VAR" id="N$c^Ci$6[u/i)b~lfsc:">countCondition</field>
</block>
</value>
<value name="ARG3">
<block type="variables_get" id="jq6:;kYDJD5Lh/Rev!su">
<field name="VAR" id="PHl4Y`#y5YTa([35V5LH">delay</field>
</block>
</value>
<value name="ARG4">
<block type="variables_get" id="V01;D[Txl}hXbS:]/:ue">
<field name="VAR" id="ea8DeyK1gT@oW@GMzl0?">filters</field>
</block>
</value>
</block>
</statement>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="Z/t7apJ]FHYsm._8LBc0">
<field name="COMMENT">Jede Stunde akualisieren</field>
<next>
<block type="schedule" id="M|c_?:t5o0wYAwR/Gqy2">
<field name="SCHEDULE">*/60 * * * *</field>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="U@HUf!7xDC!S}eqVx26[">
<mutation name="deviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="QL.[8Uonv|4#ZjA(yjq*">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ARG1">
<block type="variables_get" id="aA%k=M577FD0|qR(,pDY">
<field name="VAR" id="$cPU_9(xAYkfoT9iN=)H">selectors</field>
</block>
</value>
<value name="ARG2">
<block type="variables_get" id="%f{DMibv|,KzIY(KWL#+">
<field name="VAR" id="N$c^Ci$6[u/i)b~lfsc:">countCondition</field>
</block>
</value>
<value name="ARG3">
<block type="variables_get" id="@ZiWi#+9ND)XMy)NW#i7">
<field name="VAR" id="PHl4Y`#y5YTa([35V5LH">delay</field>
</block>
</value>
<value name="ARG4">
<block type="variables_get" id="f8yzxUBIVM?5aga4wn2+">
<field name="VAR" id="ea8DeyK1gT@oW@GMzl0?">filters</field>
</block>
</value>
</block>
</statement>
<next>
<block type="comment" id="ZaCHYib(oscCV6@$A.rB">
<field name="COMMENT">Jetzt aktualisieren</field>
<next>
<block type="procedures_callnoreturn" id="AXW3ezVCiN_Gv~A=(g.w">
<mutation name="deviceCounter">
<arg name="name"></arg>
<arg name="selectors"></arg>
<arg name="countCondition"></arg>
<arg name="delay"></arg>
<arg name="filters"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="7YC{H/c=:%R=gj0xidb]">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ARG1">
<block type="variables_get" id="FZD+2q?h`U^j.hpol3T(">
<field name="VAR" id="$cPU_9(xAYkfoT9iN=)H">selectors</field>
</block>
</value>
<value name="ARG2">
<block type="variables_get" id=":--a(^mPZ}|-COMm-xJ]">
<field name="VAR" id="N$c^Ci$6[u/i)b~lfsc:">countCondition</field>
</block>
</value>
<value name="ARG3">
<block type="variables_get" id="^B#l7Jhij/+9|5/h.eE}">
<field name="VAR" id="PHl4Y`#y5YTa([35V5LH">delay</field>
</block>
</value>
<value name="ARG4">
<block type="variables_get" id="w7+/i#Ql0!bY7qzYe/,u">
<field name="VAR" id="ea8DeyK1gT@oW@GMzl0?">filters</field>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
<block type="procedures_defcustomreturn" id="!*N6;}kSECsPgA~=}mQv" x="-937" y="138">
<mutation statements="false">
<arg name="ObjectID" varid="WJGm/J/OpBtLh0{]noLp"></arg>
</mutation>
<field name="NAME">getParentName</field>
<field name="SCRIPT">dmFyIHBhcmVudE5hbWUgPSAiIjsNCmlmKGdldE9iamVjdChPYmplY3RJRC5zdWJzdHJpbmcoMCwgT2JqZWN0SUQubGFzdEluZGV4T2YoJy4nKSkpKSBwYXJlbnROYW1lID0gZ2V0T2JqZWN0KE9iamVjdElELnN1YnN0cmluZygwLCBPYmplY3RJRC5sYXN0SW5kZXhPZignLicpKSkuY29tbW9uLm5hbWU7DQppZih0eXBlb2YgcGFyZW50TmFtZSA9PSAib2JqZWN0Iil7DQogICAgaWYocGFyZW50TmFtZS5kZSkgcGFyZW50TmFtZSA9IHBhcmVudE5hbWUuZGU7DQogICAgZWxzZSBpZihwYXJlbnROYW1lLmVuKSBwYXJlbnROYW1lID0gcGFyZW50TmFtZS5lbjsNCiAgICBlbHNlIHBhcmVudE5hbWUgPSBPYmplY3RJRC50b1N0cmluZygpOw0KfSANCmlmKHBhcmVudE5hbWUuc3Vic3RyKC0yKSA9PSAiOjAiKXsgLy9Ib21lbWF0aWMgTWFpbnRlbmVuY2UtS2FuYWwNCiAgICBwYXJlbnROYW1lID0gcGFyZW50TmFtZS5zdWJzdHIoMCwgcGFyZW50TmFtZS5sZW5ndGgtMik7DQp9DQppZihwYXJlbnROYW1lID09ICIiKSB7IC8vQ2hhbm5lbCBpc3QgbmljaHQgYWxzIE9iamVrdCBhbmdlbGVndCAtIE5hbWUgYXVzIE9iamVjdElEIHNlbGJzdCBlcnN0ZWxsZW4NCiAgICBwYXJlbnROYW1lID0gT2JqZWN0SUQuc3Vic3RyaW5nKDAsIE9iamVjdElELmxhc3RJbmRleE9mKCcuJykpOyAvL2FsbGVzIGFiIGxldHp0ZW0gUHVua3QgYWJzY2huZWlkZW4NCiAgICBwYXJlbnROYW1lID0gcGFyZW50TmFtZS5zdWJzdHJpbmcocGFyZW50TmFtZS5sYXN0SW5kZXhPZignLicpICsgMSk7IC8vYWxsZXMgdm9yIGxldHp0ZW0gUHVua3QgYWJzY2huZWlkZW4gICANCn0NCmlmKHBhcmVudE5hbWUgIT0gIiIpIHJldHVybiBwYXJlbnROYW1lOyBlbHNlIHJldHVybiBPYmplY3RJRDs=</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="procedures_defcustomreturn" id="agr2o-v8.6P.ST=anfpW" x="-937" y="163">
<mutation statements="false">
<arg name="id" varid="LYQ]a1yRbLus|U(a)S)^"></arg>
</mutation>
<field name="NAME">getObject</field>
<field name="SCRIPT">cmV0dXJuIGdldE9iamVjdChpZCwgJyonKTs=</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="comment" id=".ITu5~p8X7P?6GoQgxYM" x="1112" y="62">
<field name="COMMENT">deviceCounter</field>
</block>
<block type="procedures_defcustomreturn" id="Cna}MUFY;pz3}PI)?yD`" x="-937" y="188">
<mutation statements="false">
<arg name="countCondition" varid="N$c^Ci$6[u/i)b~lfsc:"></arg>
<arg name="id" varid="LYQ]a1yRbLus|U(a)S)^"></arg>
<arg name="val" varid="-t{1hi,x::qg^?=}zi38"></arg>
</mutation>
<field name="NAME">testCondition</field>
<field name="SCRIPT">dmFyIGNoZWNrID0gbmV3IEZ1bmN0aW9uKCdpZCcsICd2YWwnLCBjb3VudENvbmRpdGlvbik7DQp2YXIgcmVzdWx0ID0gY2hlY2soaWQsIHZhbCk7DQppZiAodHlwZW9mIHJlc3VsdCAhPT0gImJvb2xlYW4iKXsNCiAgICBjaGVjayA9IG5ldyBGdW5jdGlvbignaWQnLCAndmFsJywgJ3JldHVybiAnICsgY291bnRDb25kaXRpb24pOw0KICAgIHJlc3VsdCA9IGNoZWNrKGlkLCB2YWwpOw0KfQ0KcmV0dXJuIHJlc3VsdDs=</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="procedures_defnoreturn" id="tavB1(=pz9D;y{y^.)?N" x="1113" y="88">
<mutation>
<arg name="name" varid="hBHc4zj%4q{R`d`2]q#y"></arg>
<arg name="selectors" varid="$cPU_9(xAYkfoT9iN=)H"></arg>
<arg name="countCondition" varid="N$c^Ci$6[u/i)b~lfsc:"></arg>
<arg name="delay" varid="PHl4Y`#y5YTa([35V5LH"></arg>
<arg name="filters" varid="ea8DeyK1gT@oW@GMzl0?"></arg>
</mutation>
<field name="NAME">deviceCounter</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
<statement name="STACK">
<block type="lists_setIndex" id="(p6+*FeueBF=UZC0qxfi">
<mutation at="true"></mutation>
<field name="MODE">SET</field>
<field name="WHERE">FROM_START</field>
<value name="LIST">
<block type="variables_get" id="rWi}*#_iJclO]5c+Cz8R">
<field name="VAR" id="kD`Og9/H/ZhOD|,(ydOX">counterMatchedCondition</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="WYK(Ppl^-u3wnFcM+}z=">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="j}|AdgLc!G5E)n2swrJb">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="^0(.5p.#)H^TSm1./6P@">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
<value name="TO">
<block type="math_number" id=".b#$G9j}*/_YEe}/KA#N">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="lists_setIndex" id="=VCE#b#Fk2||1Y#i{3ON">
<mutation at="true"></mutation>
<field name="MODE">SET</field>
<field name="WHERE">FROM_START</field>
<value name="LIST">
<block type="variables_get" id="vX_)+P]q[LFa6:j|(AO#">
<field name="VAR" id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="b0]%FBq5$zI_*BHqa6CB">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="Ti/OFzt%oRI?tH%!JL,_">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="HY=UV.!K1PvK?4ula^Iz">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
<value name="TO">
<block type="text" id="PZX!x]HIV]}2gvM|;8m2">
<field name="TEXT"></field>
</block>
</value>
<next>
<block type="lists_setIndex" id="r;%biJ|/z{B3lh]{PH(r">
<mutation at="true"></mutation>
<field name="MODE">SET</field>
<field name="WHERE">FROM_START</field>
<value name="LIST">
<block type="variables_get" id="s{2QwXDo[%U#Kg)?FV0q">
<field name="VAR" id="9yhVfPUIAaLFKk:pHabC">counterTotal</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="x*S)AR3pG/q([Bc[-a4=">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id=";d%NI%av5[2.Xa%CV?}1">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="$h_2|Ed+zzS5_@a!Gu)u">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
<value name="TO">
<block type="math_number" id="5*rKOfba/99@g2m.*K-3">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="comment" id="CNz:6^xAWa4K_WMuP0u*">
<field name="COMMENT">Liste von Aliasen erstellen</field>
<next>
<block type="variables_set" id="E,0mq1yy7ihV_hPx7{3Q">
<field name="VAR" id="m`AV@FzuKypX,{q_}q/G">aliasIds</field>
<value name="VALUE">
<block type="lists_create_with" id="61DPL^p!33a(ZySv-Lo6">
<mutation items="0"></mutation>
</block>
</value>
<next>
<block type="controls_forEach" id="iR][gN=!a,UjFFk#%6!b">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
<value name="LIST">
<block type="procedures_callcustomreturn" id="9AV=he;FDB/Td?7,OF+}" inline="true">
<mutation name="selector$">
<arg name="selectors"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="Pw!S^:5q-]tg9X#;qiM6">
<field name="VAR" id="$cPU_9(xAYkfoT9iN=)H">selectors</field>
</block>
</value>
</block>
</value>
<statement name="DO">
<block type="controls_if" id="aW,q{kAbk_nDA:m5!!I[">
<value name="IF0">
<block type="logic_compare" id=")vT44}Tl_Q@@t0Lwmj(u" inline="false">
<field name="OP">EQ</field>
<value name="A">
<block type="text_indexOf" id="i+~$?2p!-izQnALY#Xyt">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="M~xN$,hUG/C0$zb,#px@">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
</block>
</value>
<value name="FIND">
<shadow type="text" id="J1j_DVpaqtl)-LL(B|Zy">
<field name="TEXT">alias.</field>
</shadow>
</value>
</block>
</value>
<value name="B">
<block type="math_number" id="_2DVyEpuju.8k:a6]j+!">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="controls_if" id="~]Han49sGJ?5pl9@4kl6">
<value name="IF0">
<block type="get_attr" id="9?O=2Khf%;aEQG;ESg^-">
<value name="PATH">
<shadow type="text" id="Vhg.QSVLxNeUe7lwE_E0">
<field name="TEXT">common.alias.id</field>
</shadow>
</value>
<value name="OBJECT">
<block type="procedures_callcustomreturn" id="0e+(42@aoLt=x/a(mw1o" inline="true">
<mutation name="getObject">
<arg name="id"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="rZ-(.?PM{Us55$eGOJ#|">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="controls_if" id="D0s$Rde~${-q5=g0uDpW">
<mutation else="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="L1{`{KBz@+.L@],tPgt.">
<field name="OP">EQ</field>
<value name="A">
<block type="convert_type" id="`G]c3iGo##D?bP40xLrL">
<value name="ITEM">
<block type="get_attr" id="Ttu$j[R:Bvtg1[MWGwIu">
<value name="PATH">
<shadow type="text" id="+uwUuBnJM[wlxaeSsF!G">
<field name="TEXT">common.alias.id</field>
</shadow>
</value>
<value name="OBJECT">
<block type="procedures_callcustomreturn" id="c7:.h~)6cI]Dyhd.E@oh" inline="true">
<mutation name="getObject">
<arg name="id"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="n^r(PqBW}.?1iH@!QI%_">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="B">
<block type="text" id=".O]/E3Ql:j=4NwOx7X-g">
<field name="TEXT">string</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="lists_setIndex" id=":B96aRB3?TBHsz-%ls-D">
<mutation at="false"></mutation>
<field name="MODE">INSERT</field>
<field name="WHERE">LAST</field>
<value name="LIST">
<block type="variables_get" id="^!qmgb*~7ZW4p%0yCQj1">
<field name="VAR" id="m`AV@FzuKypX,{q_}q/G">aliasIds</field>
</block>
</value>
<value name="TO">
<block type="get_attr" id=";?-Qo(;Lu@6m?O4G:(~;">
<value name="PATH">
<shadow type="text" id="P{U]+Iv+j.rx0}^8L~UV">
<field name="TEXT">common.alias.id</field>
</shadow>
</value>
<value name="OBJECT">
<block type="procedures_callcustomreturn" id="yM+!1yZ(9uM}gd{6HQJ%" inline="true">
<mutation name="getObject">
<arg name="id"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="kT[ns:yOUiVLBFo/$6E/">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</statement>
<statement name="ELSE">
<block type="controls_if" id="zLwKd@pQ}L_3bOM.x-b_">
<value name="IF0">
<block type="get_attr" id="nhxu5LMY#f9BgNFxv?T]">
<value name="PATH">
<shadow type="text" id="@!YAk8DX0!AL3mSGZ]{)">
<field name="TEXT">common.alias.id.read</field>
</shadow>
</value>
<value name="OBJECT">
<block type="procedures_callcustomreturn" id=";hVjNuI1VT)~YZYS0Uf0" inline="true">
<mutation name="getObject">
<arg name="id"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="C=aAMRfzW,G/.lUt$zV|">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="lists_setIndex" id="srk^C`G|WfZD:LdqXr[q">
<mutation at="false"></mutation>
<field name="MODE">INSERT</field>
<field name="WHERE">LAST</field>
<value name="LIST">
<block type="variables_get" id="}xE/{Rimpq+ACu#-Hf$f">
<field name="VAR" id="m`AV@FzuKypX,{q_}q/G">aliasIds</field>
</block>
</value>
<value name="TO">
<block type="get_attr" id="6vlPa`74-+{8mOEAP,}Y">
<value name="PATH">
<shadow type="text" id="ry}EgF/7(mx?W05@Q;xo">
<field name="TEXT">common.alias.id.read</field>
</shadow>
</value>
<value name="OBJECT">
<block type="procedures_callcustomreturn" id="H(zp.}#arJ3X7}0]o3UU" inline="true">
<mutation name="getObject">
<arg name="id"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="0/WY2QJcE8J_-8~^ATcc">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</statement>
<next>
<block type="controls_if" id="wB.18%_!k{%QdBdtAZhm">
<value name="IF0">
<block type="get_attr" id="r|t)~2E/-i+|D.i0:/ey">
<value name="PATH">
<shadow type="text" id="v9VEV%/;l@kwxW4K~F/h">
<field name="TEXT">common.alias.id.write</field>
</shadow>
</value>
<value name="OBJECT">
<block type="procedures_callcustomreturn" id="y:%]1tOd6-UmXV:H,.G~" inline="true">
<mutation name="getObject">
<arg name="id"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="IjE|f`[w1se@p1wX;e)c">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="lists_setIndex" id="ig{K{-wb?y8PD{k[?h/2">
<mutation at="false"></mutation>
<field name="MODE">INSERT</field>
<field name="WHERE">LAST</field>
<value name="LIST">
<block type="variables_get" id="i?ValRv{fQY@8SB/#t}2">
<field name="VAR" id="m`AV@FzuKypX,{q_}q/G">aliasIds</field>
</block>
</value>
<value name="TO">
<block type="get_attr" id="K=hR9seW[nt+Y*r](_{T">
<value name="PATH">
<shadow type="text" id=",OaXeJ(!9=yGJYZ$a)Hi">
<field name="TEXT">common.alias.id.write</field>
</shadow>
</value>
<value name="OBJECT">
<block type="procedures_callcustomreturn" id="BSlt?N-0n*=^@9)_rkFa" inline="true">
<mutation name="getObject">
<arg name="id"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="I-S0:e4P4mqG/cMpl*Rx">
<field name="VAR" id="C0]FO#7:2kPAzfaak0PI">aliasId</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</statement>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</statement>
</block>
</statement>
<next>
<block type="comment" id="m-zJ~0A(2E5%y3$mA6~G">
<field name="COMMENT">Alle Ids prüfen</field>
<next>
<block type="controls_forEach" id="[=P|AG+4NVihpa:)~_3N">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
<value name="LIST">
<block type="procedures_callcustomreturn" id="vNeBmQ0TJo$7*2OaF7t_" inline="true">
<mutation name="selector$">
<arg name="selectors"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="oX18CZlRvgLogW@D{#H+">
<field name="VAR" id="$cPU_9(xAYkfoT9iN=)H">selectors</field>
</block>
</value>
</block>
</value>
<statement name="DO">
<block type="comment" id="FB,,Qt,35~D[xGJ1d2fm">
<field name="COMMENT">Filter anwenden</field>
<next>
<block type="controls_if" id="zR/sP$ejM:q(cu1)^C_H">
<mutation else="1"></mutation>
<value name="IF0">
<block type="variables_get" id="/~.wSJk]4OcqkbM:vZEw">
<field name="VAR" id="ea8DeyK1gT@oW@GMzl0?">filters</field>
</block>
</value>
<statement name="DO0">
<block type="controls_forEach" id="xJ?UVybq9]QY0D1*UQ=:">
<field name="VAR" id="RaW-ioodkNPXf$q:vEqI">filter</field>
<value name="LIST">
<block type="variables_get" id="|9b`Q92^|//F_-y=@!w*">
<field name="VAR" id="ea8DeyK1gT@oW@GMzl0?">filters</field>
</block>
</value>
<statement name="DO">
<block type="controls_if" id=":OBNe(hlUEy=O%(:GeH7">
<value name="IF0">
<block type="logic_compare" id="po|GwV0av[)HuI.Z)hn;" inline="false">
<field name="OP">GT</field>
<value name="A">
<block type="text_indexOf" id="/@?iPf/u%ZRGamd^]_Yy">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="4Z/^t_~Wymalz`*cjb_y">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
<value name="FIND">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="gIv;qrjs]uTv5US%}E3`">
<field name="TEXT">abc</field>
</shadow>
<block type="variables_get" id="Vx}W@i[}DDf/=HR;Ayk.">
<field name="VAR" id="RaW-ioodkNPXf$q:vEqI">filter</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="math_number" id="8g)@hESk.o:(iP1laW*c">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="G5hKre_br@7{KdDOD7?I">
<field name="VAR" id="RaW-ioodkNPXf$q:vEqI">filter</field>
<value name="VALUE">
<block type="logic_boolean" id="C##hUc)y702MU(^l?Sny">
<field name="BOOL">TRUE</field>
</block>
</value>
<next>
<block type="controls_flow_statements" id="UFwmMyhQn)GLA}u);B``">
<field name="FLOW">BREAK</field>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</statement>
<statement name="ELSE">
<block type="variables_set" id="M)O^QPSKdSTmx2cAMZrU">
<field name="VAR" id="RaW-ioodkNPXf$q:vEqI">filter</field>
<value name="VALUE">
<block type="logic_boolean" id="0.iB)9f,,:mthju4EYQT">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</statement>
<next>
<block type="controls_if" id="`rzn)0ogAi5yu:s@PlB{">
<value name="IF0">
<block type="logic_compare" id="V[;SjW`/DSS|O6X*]ZO9">
<field name="OP">NEQ</field>
<value name="A">
<block type="variables_get" id="P8VFc[7}:dIfW-`hwX(t">
<field name="VAR" id="RaW-ioodkNPXf$q:vEqI">filter</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="H9+bO/W:*-`=6q~;JBaF">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="ZyXS](osLpLx_S2J$/sJ">
<field name="COMMENT">Nicht gefiltert - Auf Duplikate in Alias prüfen</field>
<next>
<block type="controls_if" id="q{DF}GT[s%ry;)vui?nx">
<mutation else="1"></mutation>
<value name="IF0">
<block type="logic_operation" id="9z~AxE`,%hMZYAbfj0[%" inline="false">
<field name="OP">OR</field>
<value name="A">
<block type="logic_compare" id="+Ot)ZbMi.}Y5NP7K*f`S" inline="false">
<field name="OP">EQ</field>
<value name="A">
<block type="text_indexOf" id="^sZ/mK$w94T.,L7HM3H,">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="29EqsuQ|~py%v/SD0$w.">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
<value name="FIND">
<shadow type="text" id="0(0C*~AyTI`Ig}!+mRHq">
<field name="TEXT">alias.</field>
</shadow>
</value>
</block>
</value>
<value name="B">
<block type="math_number" id=";dPp$4IFVVEBcnyGHrf3">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="oip=:|Z7299S,@b~S_B4">
<field name="OP">EQ</field>
<value name="A">
<block type="lists_indexOf" id="Hjr2|Y@Fh!S_*DJo2|79">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="|YA3rl-8X}yMm40B;Lt{">
<field name="VAR" id="m`AV@FzuKypX,{q_}q/G">aliasIds</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="_.X=:$iu4:#%@j|ZmXm#">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="math_number" id="dN2#*lNQi}cIkIHaTzw_">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="{zN^l*:Dk=gK|6`i^Zst">
<field name="COMMENT">Ist Alias oder kein Duplikat eines Alias</field>
<next>
<block type="controls_if" id="g{bb%Ek;ta=@C6=c!`=#">
<value name="IF0">
<block type="logic_operation" id="2r6fDmEO{oTK.083d@cd" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="UuBTYUqDq`iah8kchl2(">
<field name="OP">GTE</field>
<value name="A">
<block type="math_arithmetic" id="=9)ZJlt;/NIY1S|9|LD0">
<field name="OP">MINUS</field>
<value name="A">
<shadow type="math_number" id="La(o+3lPoq`ZxVz?*l[H">
<field name="NUM">1</field>
</shadow>
<block type="time_get" id="!m(QOJrwwe%omcOH3kHF">
<mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
<field name="OPTION">object</field>
</block>
</value>
<value name="B">
<shadow type="math_number" id="Jz316^^Eg5{@o{m]HX4*">
<field name="NUM">1</field>
</shadow>
<block type="get_value_var" id="}-X,|eiKA:Fa6JN[JPZy">
<field name="ATTR">lc</field>
<value name="OID">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="text">
<field name="TEXT"></field>
</shadow>
<block type="variables_get" id="rngq)ir_H:M@rjN0@C[z">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="B">
<block type="variables_get" id="|=h7YrD?Qv$}a|}Ve@a=">
<field name="VAR" id="PHl4Y`#y5YTa([35V5LH">delay</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="procedures_callcustomreturn" id="P@PNZoKUfO3~]B1XP}v5">
<mutation name="testCondition">
<arg name="countCondition"></arg>
<arg name="id"></arg>
<arg name="val"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="8z(B:*Oz!qGoI`iEf[8s">
<field name="VAR" id="N$c^Ci$6[u/i)b~lfsc:">countCondition</field>
</block>
</value>
<value name="ARG1">
<block type="variables_get" id=")Uu|g6F0p{%w6UCil;eU">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
<value name="ARG2">
<block type="get_value_var" id="pL=WeS-)e!eKMZ9oiO3j">
<field name="ATTR">val</field>
<value name="OID">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="8N$2zC9qG5p2hoi)#N9;">
<field name="TEXT"></field>
</shadow>
<block type="variables_get" id="Hi$=YSzc#RyiA_W5YuP@">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="vC,aaWHEiGy$fY/~H9oG">
<field name="COMMENT">Bedingung passt - zählen</field>
<next>
<block type="debug" id="/}*m$0PObR7NTPFKZ+TZ">
<field name="Severity">debug</field>
<value name="TEXT">
<shadow type="text" id="Gj3hFc5jk|aSQ3ZMj}V,">
<field name="TEXT"></field>
</shadow>
<block type="text_join" id="[H`nKe*yI)rozXIPBgN+">
<mutation items="5"></mutation>
<value name="ADD0">
<block type="text" id="WcdvW[lcKVe#SKk;I$$6">
<field name="TEXT">Matched Condition: </field>
</block>
</value>
<value name="ADD1">
<block type="procedures_callcustomreturn" id="R*_#SSDK6msj1h7[@G?," inline="true">
<mutation name="getParentName">
<arg name="ObjectID"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="oS@0|Uog]vOvi*K$Ab}=">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
</block>
</value>
<value name="ADD2">
<block type="text" id="uEK@WA[wq*kCMs0vziZ*">
<field name="TEXT"> (</field>
</block>
</value>
<value name="ADD3">
<block type="variables_get" id="A6/P:hp[k=bf2J,7B8D|">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
<value name="ADD4">
<block type="text" id=".7L8Cnrs6r|S%KQBTmdD">
<field name="TEXT">)</field>
</block>
</value>
</block>
</value>
<next>
<block type="lists_setIndex" id="wF^tYIr0n[swNFBdb?GQ" inline="false">
<mutation at="true"></mutation>
<field name="MODE">SET</field>
<field name="WHERE">FROM_START</field>
<value name="LIST">
<block type="variables_get" id="(~qBAKpFDn[)m}Ji~k(q">
<field name="VAR" id="kD`Og9/H/ZhOD|,(ydOX">counterMatchedCondition</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="LFssXw,_y9h89E}#31aD">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="Qy~*`pB!|)7QTDj;Ea$V">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="pgzson14c/LAz+(k1^7[">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
<value name="TO">
<block type="math_arithmetic" id="ZGspLcn?Y2U$H8J[CH6)">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="!2qj;9Ms?dhE]E@rmMy4">
<field name="NUM">1</field>
</shadow>
<block type="lists_getIndex" id="1Q|*EqWkOb_!;/qtC?h#">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="9n?TER28=QgFjTjZ@3nH">
<field name="VAR" id="kD`Og9/H/ZhOD|,(ydOX">counterMatchedCondition</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="M.oOgvZy)w7Cv^x2DFrp">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="{MfsIl-OIwSf=3*PG:c+">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="DYF,r4)X3GGEi)+R8HJh">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="B">
<shadow type="math_number" id="2-:W(ZY)Y$LA{L!!/l,t">
<field name="NUM">1</field>
</shadow>
</value>
</block>
</value>
<next>
<block type="lists_setIndex" id="kT}_Rc-j2h9Y?T@2ePC|" inline="false">
<mutation at="true"></mutation>
<field name="MODE">SET</field>
<field name="WHERE">FROM_START</field>
<value name="LIST">
<block type="variables_get" id="~$hrB}dOKcC?.Fa:8e@b">
<field name="VAR" id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="[+umG.jH*@ZI3jJR?R/.">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="Bbw*`)GfQJC1,6pn2cv(">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="~lSX=;p3UCB4JYK(A+;y">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
<value name="TO">
<block type="text_join" id="[Yu.^hra^uLXPLe7wRvn">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="lists_getIndex" id="BGYnyiT.$Ib3p}.?*xXa">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="W3Ogd+[MkY3xlzyDyA%3">
<field name="VAR" id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="23`F=!#bg}7]l{%7Y:^x">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id=":f$D{,|hRs4L=OO#sJNf">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="~HUGkBv6*:orn{{PWFOM">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="ADD1">
<block type="procedures_callcustomreturn" id="pkWKcL0]@1Mi%rMmal0K" inline="true">
<mutation name="getParentName">
<arg name="ObjectID"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="94QlR7Y*R5?ROG[Nj|yE">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
</block>
</value>
<value name="ADD2">
<block type="text" id="RA4+=wkP2LLA??Z{%@nH">
<field name="TEXT">, </field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="faH8#[X8r`LJ:th_xeR-">
<field name="COMMENT">Gesamtsumme zählen</field>
<next>
<block type="lists_setIndex" id="Hjjc]b1fcx^kTj1o~xy`" inline="false">
<mutation at="true"></mutation>
<field name="MODE">SET</field>
<field name="WHERE">FROM_START</field>
<value name="LIST">
<block type="variables_get" id="_lz36FH1Vn9@eL}3]KJ;">
<field name="VAR" id="9yhVfPUIAaLFKk:pHabC">counterTotal</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="60O!!!C}jP[t1Htad!Eb">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="!]f2]rUv]j4u(vz(bR+,">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="9)u9({ZSB-T#^~N;omDz">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
<value name="TO">
<block type="math_arithmetic" id="iUu;J;t)~.kN.s$BH7#f">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="!2qj;9Ms?dhE]E@rmMy4">
<field name="NUM">1</field>
</shadow>
<block type="lists_getIndex" id="Q#7LJ$qotjkp5bhDaj[a">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="wQsT=A%WQ0zhO#As!90k">
<field name="VAR" id="9yhVfPUIAaLFKk:pHabC">counterTotal</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="C`dqr~a{2Ar|Rl+yvI-Q">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="0g,S3Z-gRin9-vqs@dl@">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="XT:o0~$6OORpHAWdxr8)">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="B">
<shadow type="math_number" id="]iZ9N^S6|c`/w6tMVjIE">
<field name="NUM">1</field>
</shadow>
</value>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
<statement name="ELSE">
<block type="comment" id="gxz%bZYf]*|W4M^MhRT.">
<field name="COMMENT">Es existiert ein Duplikat in Alias</field>
<next>
<block type="debug" id="w:burr`6vvs}-SyY^yHp">
<field name="Severity">debug</field>
<value name="TEXT">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="}bdJz:[f$qhoQ8;1jg-Q">
<field name="TEXT">test</field>
</shadow>
<block type="text_join" id="tNR)$uycaKv=w?;:N]rp">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="tZkcRBI,QoGKhv79a+Q5">
<field name="TEXT">DUPLIKAT IN ALIAS GEFUNDEN! Element: </field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="YJqu4o1CQd:grhIMjojn">
<field name="VAR" id="LYQ]a1yRbLus|U(a)S)^">id</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</statement>
<next>
<block type="lists_setIndex" id="4Puqb.Q%j#+p#*i0SZ2=" inline="false">
<mutation at="true"></mutation>
<field name="MODE">SET</field>
<field name="WHERE">FROM_START</field>
<value name="LIST">
<block type="variables_get" id="nl#adm65+gQND20!ncFS">
<field name="VAR" id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="VH^ohtoT!}R0A!7a%pU_">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="pYO1pC?T^(l=~~VR7H#i">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="lu_-YLad]#i4@,;)dvSf">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
<value name="TO">
<block type="text_getSubstring" id="Z}jj](ge:^sV)4?Zs]F)">
<mutation at1="false" at2="true"></mutation>
<field name="WHERE1">FIRST</field>
<field name="WHERE2">FROM_END</field>
<value name="STRING">
<block type="lists_getIndex" id="@d(Py74(`xwVafgc;?a8">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="J(wFj}wqxHw1HR3pb{|_">
<field name="VAR" id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="KmmG$HZb|.chE:#-8h7z">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="Uosd6nye$YJ7qse6YVVr">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="~B[@-*g!+Br5z]deDdzj">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="AT2">
<block type="math_number" id="MvDF`O0_*pDF2I@@l^}E">
<field name="NUM">3</field>
</block>
</value>
</block>
</value>
<next>
<block type="debug" id="^C{q5q}te7FiWM!eTcmR">
<field name="Severity">log</field>
<value name="TEXT">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="P|@X#Co|%Wo=f=8AUz03">
<field name="TEXT">filter</field>
</shadow>
<block type="text_join" id="%;gWk+n9E.NlDFG`w*w$">
<mutation items="8"></mutation>
<value name="ADD0">
<block type="text" id="Q-uXD=H7hi3%N1w55X5@">
<field name="TEXT">------ </field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="He}]!`HG}$QI$DR*dmvd">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="q/Fm%v.yQcKb$mJONVpc">
<field name="TEXT"> ------ </field>
</block>
</value>
<value name="ADD3">
<block type="lists_getIndex" id="AVviSr9wd7{t(S?y~#M5">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="$zOlUAnvEu7yeN,l_gB4">
<field name="VAR" id="kD`Og9/H/ZhOD|,(ydOX">counterMatchedCondition</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="0_J@yW#1#x]8Y9*t_lVz">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="#RSJ6SE{we@9{B}[,qAQ">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="u2ZE_IArKtVNbv|DAW@I">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="ADD4">
<block type="text" id="+VAJhsykPpqCoS]eW~C|">
<field name="TEXT"> von </field>
</block>
</value>
<value name="ADD5">
<block type="lists_getIndex" id="$zew?q#XA{?}G:5pYM-m">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="o3!Guqy1Z/32?FjxAq$s">
<field name="VAR" id="9yhVfPUIAaLFKk:pHabC">counterTotal</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="LlVR$=Iz=KW!enj4nE01">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="y[cqN|4RYt5Jcd}IKy-k">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="8cr96~b]]:Jt=iEd4KO+">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="ADD6">
<block type="text" id="/Uwf{]eAx8?#8N}{hH-P">
<field name="TEXT">: </field>
</block>
</value>
<value name="ADD7">
<block type="lists_getIndex" id="9A7%P+NiDEoi%`T8nJ@7">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="A`/QIf[VG(Y$N0^0Boyt">
<field name="VAR" id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="@/c[Pgx;hITrxRS3NtmZ">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="lqB$w5Bo5B,OlP}gw4J9">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id=";2g@$Dr[D^3a1hltDK2#">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="control_ex" id="Uig=?#[,%$0jm=E2Z?!f" inline="true">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="+G@O_17_-}q:uIV]Vfi`">
<field name="oid">Object ID</field>
</shadow>
<block type="text_join" id="s-kxT=11t^y$?G8|8dwY">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id=")3_^A/L8wFMR!LR/5$pn">
<field name="TEXT">javascript.0.Device-Counter.</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="ah0ixP%,VXKXXJfGT;$r">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="%~p}HYSxv*/X5LUs~~?F">
<field name="TEXT">.ACTUAL</field>
</block>
</value>
</block>
</value>
<value name="VALUE">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="B_uLqc_rE:AZ[=Ji~p$6">
<field name="BOOL">TRUE</field>
</shadow>
<block type="convert_tonumber" id="mU.(V7Y02$|/4Q{-A6iB">
<value name="VALUE">
<block type="lists_getIndex" id="eUMta{O;,l:pDR{A.i.W">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id=",c4Gm%aOV57g-y32IG2S">
<field name="VAR" id="kD`Og9/H/ZhOD|,(ydOX">counterMatchedCondition</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="1XC/(u^59,5nQ%3QV2jc">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="%(i?O$tV3fof8Me{7)ug">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="l~uhR,h~j^NWl)|[+TU!">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id=".!hne%wGs?)*nC~0G-8C">
<field name="NUM">0</field>
</shadow>
</value>
<next>
<block type="control_ex" id="UD~1M*WgLt,Kd;-y%Sr$" inline="true">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="+G@O_17_-}q:uIV]Vfi`">
<field name="oid">Object ID</field>
</shadow>
<block type="text_join" id="Ku3u2VHH+RVim*[N|.t~">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="aYy;SHyM#oi=+*.1urZV">
<field name="TEXT">javascript.0.Device-Counter.</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="`q=L@J1-Mq}q_Z)U`8We">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="~fo/~A-fo1/ZO,d@B~gs">
<field name="TEXT">.TOTAL</field>
</block>
</value>
</block>
</value>
<value name="VALUE">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="B_uLqc_rE:AZ[=Ji~p$6">
<field name="BOOL">TRUE</field>
</shadow>
<block type="convert_tonumber" id="N~H9FZ4H9B44$qnZKAX6">
<value name="VALUE">
<block type="lists_getIndex" id="_v2~k%Ey2bo,a5$uvHB~">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="a4?jl.)YfX`gL.Z(T^BE">
<field name="VAR" id="9yhVfPUIAaLFKk:pHabC">counterTotal</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="qQ%oo53}v6wyK!BNM_8X">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="%o]c1ACLlJg{L1x^EPN8">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="X2n|Rev{AA.(c+O/@8_)">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="[WhwFkpwSRYa!rqX(BWM">
<field name="NUM">0</field>
</shadow>
</value>
<next>
<block type="control_ex" id="aashvbEDRYM)(jc-Z%mJ" inline="true">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="+G@O_17_-}q:uIV]Vfi`">
<field name="oid">Object ID</field>
</shadow>
<block type="text_join" id="%6?4G7An^uCsGA3TGSD.">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="ZzP?#+0rQ}Ne_8m6c[J_">
<field name="TEXT">javascript.0.Device-Counter.</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="MMnYY=u)ZiK(`P+%ZSoz">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="N?AHfN=pfU$=XiwD}dh_">
<field name="TEXT">.ACTUAL_LIST</field>
</block>
</value>
</block>
</value>
<value name="VALUE">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="B_uLqc_rE:AZ[=Ji~p$6">
<field name="BOOL">TRUE</field>
</shadow>
<block type="convert_tostring" id="ZX$-wCQXh6xe;.r*in~k">
<value name="VALUE">
<block type="lists_getIndex" id="AwT=T=i89yw/;SG{Q8G[">
<mutation statement="false" at="true"></mutation>
<field name="MODE">GET</field>
<field name="WHERE">FROM_START</field>
<value name="VALUE">
<block type="variables_get" id="GHx=QfL.NU{2zMs64Xv%">
<field name="VAR" id="8elrMkp34r9~0CgNQ-_7">counterMatchedConditionList</field>
</block>
</value>
<value name="AT">
<block type="lists_indexOf" id="+Ob21AEPDb9,|w.T.EJ^">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="variables_get" id="Y)J3Xo?.n*wmfbb2n9w$">
<field name="VAR" id="+t;%6_-2B(8q-Qp+,,9l">counters</field>
</block>
</value>
<value name="FIND">
<block type="variables_get" id="FE!hr77XINr`,^]4soO%">
<field name="VAR" id="hBHc4zj%4q{R`d`2]q#y">name</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="n6Q%:xq{0;?N4={pno}[">
<field name="NUM">0</field>
</shadow>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</xml>
- Additionally you can collect all the service relevant informations created by the device-counters into service-message-datapoints (with history)
- These can be nicely displayed in iQontrol:
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</variable>
<variable id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</variable>
</variables>
<block type="comment" id="F2kr_VxUJ=Z*~cXu!;eq" x="-213" y="63">
<field name="COMMENT">Servicemeldungen</field>
<next>
<block type="create" id="odh.!#?BxH*JSg1Ev{g%">
<field name="NAME">Device-Counter.Servicemeldungen.ACTUAL</field>
<value name="VALUE">
<block type="math_number" id="tY:kC8_gZ[?S+h~jKn=#">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="SPOjCcXkh(S%,H^?XY/`">
<field name="TEXT">{"read":true, "write":false, "unit":"Servicemeldung(en)"}</field>
</block>
</value>
<next>
<block type="create" id="MU;=0R=xgM=wx!|U[81g">
<field name="NAME">Device-Counter.Servicemeldungen.ACTUAL_LIST</field>
<value name="VALUE">
<block type="text" id="[K{[email protected]%QWz">
<field name="TEXT"></field>
</block>
</value>
<value name="COMMON">
<block type="text" id="6EH67(Ki!`i~g=2)a?=n">
<field name="TEXT">{"read":true, "write":false, "unit":""}</field>
</block>
</value>
<next>
<block type="create" id="HV/vg)yYq+oe0mcFBgS{">
<field name="NAME">Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY</field>
<value name="VALUE">
<block type="text" id="~({.QLS8xO0x.)!PLhe:">
<field name="TEXT"></field>
</block>
</value>
<value name="COMMON">
<block type="text" id="rH$gOHMUTszJ+al;(Zj%">
<field name="TEXT">{"read":true, "write":false, "unit":""}</field>
</block>
</value>
<next>
<block type="create" id="`{N_R?a_6_JjW}2H?.?B">
<field name="NAME">Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY_COUNT</field>
<value name="VALUE">
<block type="math_number" id="S?SmKOV+cRkk=5$]Qg#?">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id=".ifk]3).X[b9`v*/G7fr">
<field name="TEXT">{"read":true, "write":false, "unit":"Log(s)"}</field>
</block>
</value>
<next>
<block type="create" id="_cgU1CY4#q5%uGJEp2}(">
<field name="NAME">Device-Counter.Servicemeldungen.CLEAR_ACTUAL_LIST_HISTORY</field>
<value name="VALUE">
<block type="logic_boolean" id="JK]agnAJ:P|t{w.g081e">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="GGofuMUrkg?;^oGj_FI2">
<field name="TEXT">{"read":false, "write":true, "type":"boolean", "role":"button"}</field>
</block>
</value>
<next>
<block type="on_ext" id="{#U7V0D=g2dv?6.OJ44N">
<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="{o|t~|1Vn!eKTl@#(rXC">
<field name="oid">wolf.0.hg1.1</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="?irzHcxhmDJuYrvnNlk?">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="on_ext" id="E*56K~]aX0Z;1KcJ)Z+k">
<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="IM+z3[6.aiY.aC0R=A]/">
<field name="oid">javascript.0.Device-Counter.ERROR.ACTUAL_LIST</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="H4`LmQThW)@mBKo02lOX">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="on_ext" id="fXq$A(6(_S)KfU35T,%k">
<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="(uH9p$(@sKtm9nZ]td6|">
<field name="oid">javascript.0.Device-Counter.SABOTAGE.ACTUAL_LIST</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="p:G?rtH#4[X$;j(mZ;;)">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="on_ext" id="AFC%A!a9{:?+bVen#|Sx">
<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="e0T^V0edRSlrEq[QR@A[">
<field name="oid">javascript.0.Device-Counter.LOWBAT.ACTUAL_LIST</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="zm^^},`7T^mhVuBgFT8`">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="on_ext" id=",HEqy3SflrY3cCvR;u*K">
<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="b1t,FLq-Q/daVNWT}lo.">
<field name="oid">javascript.0.Device-Counter.UNREACH.ACTUAL_LIST</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="Xd#?E:=oy0$1cn.T_WQ=">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="on_ext" id="y`s/HP(fcy(JqI$fTC!P">
<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="IsHyJGZVh;Jw-%@JE$aw">
<field name="oid">javascript.0.Device-Counter.MAINTENANCE.ACTUAL_LIST</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id=".O*@{$+2FrgM5)dzjf/(">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="on_ext" id="#qI7!6sQJ{H9-:^+m;*%">
<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="y;$$Rx0E9IGTU~UrDCw:">
<field name="oid">javascript.0.Device-Counter.CONFIG_PENDING.ACTUAL_LIST</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="HbeS)jd7mVsoqV.ob)%?">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="on_ext" id="#PY-Vi2U+G;?vb:TL(N_">
<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="*^9Tfh2Vnk!O)Ap~~gF5">
<field name="oid">javascript.0.Device-Counter.Adapter-Monitor.countError</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="bxQp%V?T}5DD)}W9FE9o">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="on_ext" id="A[7n2sp0AiIq+#~aVf##">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
<field name="CONDITION">any</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="L9?.NSi*x?8b.PeG-VT%">
<field name="oid">hm-rega.0.65485</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="e2nK[ol-}.3Vc[Slwwj+">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="comment" id="@,e]Pc.[jhzb83*jV!k@">
<field name="COMMENT">Jede Stunde aktualisieren</field>
<next>
<block type="schedule" id="V7RG1rQ`2,$`Zf*)EAEy">
<field name="SCHEDULE">*/60 * * * *</field>
<statement name="STATEMENT">
<block type="procedures_callnoreturn" id="iuK`zb!lL#nXQ%j7,bXc">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</statement>
<next>
<block type="comment" id="DyoPW,j0Hi^LG!h=?ujd">
<field name="COMMENT">Jetzt aktualisieren</field>
<next>
<block type="procedures_callnoreturn" id="qYUDUMeuJ!UIF1h!8b.5">
<mutation name="ServicemeldungenErstellen"></mutation>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
<block type="procedures_defnoreturn" id="6JINF*5uWi:xPi@*,+uH" x="637" y="63">
<field name="NAME">ServicemeldungenErstellen</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
<statement name="STACK">
<block type="variables_set" id="#b!;$ZOKuk.apzd~k!+T">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_number" id="_SsUys|m|]dkdB5;67d:">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="variables_set" id="I(meu2Ao;X;uOu)r^C-r">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text" id="BFvxw$CM5]Hz}+JfT?p_">
<field name="TEXT"></field>
</block>
</value>
<next>
<block type="controls_if" id="ZZ,YJbv74W;0^PHYM/#c">
<value name="IF0">
<block type="logic_compare" id="fMYlH0qsM_cSRnZ#_[9D">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="+g},LO`#,q5Iq`WMs-pF">
<field name="ATTR">val</field>
<field name="OID">wolf.0.hg1.1</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="2b0nY$7w+4eP}LrDx5gn">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="O:Ac0RV.;tioE;9:K;,-">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="FmP2iXY_Le],3(VUoC9~">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="WUyXyyTnQ4W`]9P+sR=p">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="g8GxP!:$Wt;bI3G,9;)Y">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow type="math_number" id="4m:@8bcsLng3Jc(N}O}l">
<field name="NUM">1</field>
</shadow>
</value>
</block>
</value>
<next>
<block type="variables_set" id="6Ch+|;VJYh;{XLMMuks:">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id=":/nN0=}!/e?m,=q63*5H">
<mutation items="8"></mutation>
<value name="ADD0">
<block type="variables_get" id="nY()mg}.b9;a|zNJ0|_n">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="text" id=")b5pJ-M.2Z33Pq{qj5s`">
<field name="TEXT">Heizung: </field>
</block>
</value>
<value name="ADD2">
<block type="text_newline" id="]vCb:^zgnIngV7O}5p_E">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD3">
<block type="text" id="M+Lr1j*MEkNWS:02CSJ?">
<field name="TEXT">Es liegt eine Störungsmeldung der Heizung vor.</field>
</block>
</value>
<value name="ADD4">
<block type="text" id="v/K2OIHOWiX+m{9:DiSV">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD5">
<block type="text_newline" id="c0mk@|RP^W9,fU#zx9Tc">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD6">
<block type="text" id="p4`~oAak[N2,SYq)=.~e">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD7">
<block type="text_newline" id="@q~qJJWEPZjM4TcFCv=C">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id="*:{Wcb7k/C;0qxFvnq7)">
<value name="IF0">
<block type="logic_compare" id="_.uPo7lOVxyRP~2(~nN=">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="zmf]y4nHcz6%HBQ:3=2Z">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.ERROR.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="FL-$wTv%K@O16UR$o^E*">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="nh#$yQJup5av1yfHw?)J">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="klj(RDgLt~xrL4:f|^0h">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="WUyXyyTnQ4W`]9P+sR=p">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="fd2T;Kbz[f7ge_Q;^[9p">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="4m:@8bcsLng3Jc(N}O}l">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="4Jl6~Xa;b6FU%].pI5_|">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.ERROR.ACTUAL</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="{t!p/}SkIn4ll#U*=}F1">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id="40e^Ihx%~{dj8[+,1^/J">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="variables_get" id="dTR@:f5!wsuA?D?*98@2">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="Cqz.i51{`tIHT29i/D/B">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.ERROR.ACTUAL</field>
</block>
</value>
<value name="ADD2">
<block type="logic_ternary" id="H|FFDt3hmyf?0MP)qM0m">
<value name="IF">
<block type="logic_compare" id="SrrKs8`nU5EVrz]^Hn6R">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="u`AIJk!,G|epJ:[email protected]=/">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.ERROR.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="%!f{)]+WZsJ~TOrD(A]-">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="THEN">
<block type="text" id="r=%`W31o0KKkW3kB(Y9J">
<field name="TEXT"> Gerät mit Fehler: </field>
</block>
</value>
<value name="ELSE">
<block type="text" id="=c8^T9/OB-vs}l~w?iJO">
<field name="TEXT"> Geräte mit Fehler: </field>
</block>
</value>
</block>
</value>
<value name="ADD3">
<block type="text_newline" id="}86,$~xQfoFY-hG9L%t{">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD4">
<block type="get_value" id="vQ[|CF^;1QWt#7S2oSI}">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.ERROR.ACTUAL_LIST</field>
</block>
</value>
<value name="ADD5">
<block type="text" id=";{RZkrmd8;=2T]Bk(@QX">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD6">
<block type="text_newline" id="-mC_5bsb75A9NVQe}Kuy">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD7">
<block type="text" id="3HUg_?oO5J$nlz//6GQ^">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD8">
<block type="text_newline" id="YC!|h{(t=d3Db=PNPQ]m">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id="$Nx7FyhA+,/c?y#,TQxb">
<value name="IF0">
<block type="logic_compare" id="p!~y.0r8#Z7U_NCX+pUr">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="VS%b{uV!Y|;QnKm9]dsS">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.SABOTAGE.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="b{S~)690_g}~}C6yVP;m">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="s,45NoGgJjQ912CP4vkq">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="r)0pn,Kx@[A){;(-,-,-">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="WUyXyyTnQ4W`]9P+sR=p">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="t7DL8d!,(3vd!QR~Z:$p">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="4m:@8bcsLng3Jc(N}O}l">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="_4^VCXB7[b={x~}!l`9~">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.SABOTAGE.ACTUAL</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="HQVdI)e*[Cg^7^bL@:3Y">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id="`u$z?}~5EG];2|0*K:vk">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="variables_get" id="-WUx=hP~yYA|em]B2ILw">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="F:yqss?@J[54IkiIAMPU">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.SABOTAGE.ACTUAL</field>
</block>
</value>
<value name="ADD2">
<block type="logic_ternary" id="VDfl/k~_02^{~4QbKr)W">
<value name="IF">
<block type="logic_compare" id="Ia$IM*yDYf}IP)B$Q%qN">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="`xqbGd37-nzC~8{Ib0G7">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.SABOTAGE.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="[bj$CvX!ULJa]Uz,6Jhb">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="THEN">
<block type="text" id="pbz,cz7qeP=TSW.Gf)1i">
<field name="TEXT"> Gerät mit Sabotage: </field>
</block>
</value>
<value name="ELSE">
<block type="text" id="8!RNsH4A!n9:%`U~(v.y">
<field name="TEXT"> Geräte mit Sabotage: </field>
</block>
</value>
</block>
</value>
<value name="ADD3">
<block type="text_newline" id="~nHeoESa8@Tz4LE$Toat">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD4">
<block type="get_value" id="A%1{{*_X:,V{qPLF!Sz6">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.SABOTAGE.ACTUAL_LIST</field>
</block>
</value>
<value name="ADD5">
<block type="text" id="^Y]=orN~hIYbuPt(2Grn">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD6">
<block type="text_newline" id="OavKnElm.p4DJ;:!W~Th">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD7">
<block type="text" id="1Xi_Bm3F-e@gigntZ11F">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD8">
<block type="text_newline" id="IKI;7CKeduw3_Yft1D/y">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id="bNDM/d#_oT:dSkGYp;=x">
<value name="IF0">
<block type="logic_compare" id=",3Tl72|?QQjUc1KrDZ1f">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="8t^CPZW}-Vhe/K%Ix-@G">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.LOWBAT.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="vGvZ5!q3d-e[2H]TqHDj">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="lknuT7HW]oG{M`oi?W(j">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="G,!9t~dvZfDHW=$ZY4g6">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="WUyXyyTnQ4W`]9P+sR=p">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="l!!JmfrB.3/VY?ISwIXa">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="4m:@8bcsLng3Jc(N}O}l">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="EeCY~S}*nc3*l.rNC_R7">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.LOWBAT.ACTUAL</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="3*Hn5-]r0_-=mH2|yZ@l">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id="#34~r!DlPRQvss_vpq;a">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="variables_get" id="mkGJ~DC#F6`C^s^[MRxR">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="W?/S3bq-SsKVDuAOAQZ*">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.LOWBAT.ACTUAL</field>
</block>
</value>
<value name="ADD2">
<block type="logic_ternary" id="5^4k{tY5Vbss#fVEiPvI">
<value name="IF">
<block type="logic_compare" id="6_#Jri;:VaBL^Oy)Qwp%">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="z2j@~1BNl;^QdS]lh63i">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.LOWBAT.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="Dl_mOih].8[5Yk^h_#HB">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="THEN">
<block type="text" id="?YF+NNh]fipxeEDYR1.M">
<field name="TEXT"> Gerät mit leerer Batterie: </field>
</block>
</value>
<value name="ELSE">
<block type="text" id="3J:@-Ho4K(]ekh^Hq?V{">
<field name="TEXT"> Geräte mit leerer Batterie: </field>
</block>
</value>
</block>
</value>
<value name="ADD3">
<block type="text_newline" id="662?6vHhaYd}^4O[UpjX">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD4">
<block type="get_value" id="0p@:|c1gi,gVZ_#c.~V7">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.LOWBAT.ACTUAL_LIST</field>
</block>
</value>
<value name="ADD5">
<block type="text" id="0a4g3kU@riz/MYIgmG|q">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD6">
<block type="text_newline" id="niLj1|t*u{|mh3QJLc|X">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD7">
<block type="text" id="D=8(4mg+|]#JfAFz|K_l">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD8">
<block type="text_newline" id="VgIz/z~Pyo.bQYuZf~uT">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id="iuSC5eX.e1Xx=k89,@8H">
<value name="IF0">
<block type="logic_compare" id="C-fN$eN6BE4{|1wvoth/">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="R{V;iK84/kwr8xmO_+~@">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.UNREACH.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id=",/${*HGQsA.;RcgJ9UE~">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="Vkyjx(8=tGqr)h:D[*P0">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="n*Enrgjc.kg)QDVmXQ+*">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="WUyXyyTnQ4W`]9P+sR=p">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="#-,IFjGGL*F]JJ3($KA`">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="4m:@8bcsLng3Jc(N}O}l">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="He-}%|/cZ;kC_:]T^wg:">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.UNREACH.ACTUAL</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="5))VYU3kk*d7x1c_EKb6">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id="~27tvWMt_?$VnpqY7K*v">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="variables_get" id="Q.@:GOSS(`#QI?3:Yy(N">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="Y}N{@`G4NwK{N4*GkZzd">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.UNREACH.ACTUAL</field>
</block>
</value>
<value name="ADD2">
<block type="logic_ternary" id="OKPf5q?%MxWffx(=~XLJ">
<value name="IF">
<block type="logic_compare" id="]}oF~FMXfVfqjVWFZA^k">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="[jqq%VxK7)1cG/.z`gYK">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.UNREACH.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="@dqx!vT)e4*a3LKIv%jr">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="THEN">
<block type="text" id="7u;$IM|S]7Q=LgL8*ZCy">
<field name="TEXT"> nicht erreichbares Gerät: </field>
</block>
</value>
<value name="ELSE">
<block type="text" id=".:%r|@(^c(?4zlWGowjo">
<field name="TEXT"> nicht erreichbare Geräte: </field>
</block>
</value>
</block>
</value>
<value name="ADD3">
<block type="text_newline" id="u%{mfu]a~$L]JZ=26p5d">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD4">
<block type="get_value" id="GPd`T]T4;/e_:[adCH2t">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.UNREACH.ACTUAL_LIST</field>
</block>
</value>
<value name="ADD5">
<block type="text" id="TV~?wPDfQT9%kg3|@{4A">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD6">
<block type="text_newline" id="!mEL2;H.]j]uXwrbIG.e">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD7">
<block type="text" id="k/H5EieS$FmQM=7z-%9R">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD8">
<block type="text_newline" id="SY}nv;?szBp+2}V5/3rH">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id="8vCYbWVbN]gzv44^n2?A">
<value name="IF0">
<block type="logic_compare" id="gE-`QUIu{^;q/yDuCpZD">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="~`/vftcf:Y7n)qcP-,Th">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.MAINTENANCE.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="qM3!e,m^]d;_n%#{^.xl">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="(aU-XT_bqY,;EgfXE.63">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="1OrXy+/-wM2P_UjWvZ#x">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="4GpsKqbkr26^qK(~uacW">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="Da);PaWC,?xhW-66qd`p">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.MAINTENANCE.ACTUAL</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="S]RlBaEbX:fv|*AUpaa-">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id="^WZ~k6Klin/pd61O?~]5">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="variables_get" id="5,j[tTfp^W]Dk[B@eaB%">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="w7F13G,S#BDl_X4vG/Jm">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.MAINTENANCE.ACTUAL</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="nJicb8Abw6S]zw9A#OUJ">
<field name="TEXT">-mal Wartung erforderlich: </field>
</block>
</value>
<value name="ADD3">
<block type="text_newline" id="n#d_/}Xb}SbsyJP_t=Qz">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD4">
<block type="get_value" id="eyxy.@oDHnb`58Z3;71N">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.MAINTENANCE.ACTUAL_LIST</field>
</block>
</value>
<value name="ADD5">
<block type="text" id="sav2n6LfBtfF]%B5Aq!#">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD6">
<block type="text_newline" id="wf6?4`hMYwDJ;~N:fbFa">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD7">
<block type="text" id=",5}CZS=?31e[N8m*sTtn">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD8">
<block type="text_newline" id="OaVjWQwkhc?;M[X`3GZ7">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id="#K..1!dfW]S!T;QRkfA^">
<value name="IF0">
<block type="logic_compare" id="CBMN_etUq!60eN{eQ-9|">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="ki{~!-~~31wm:hPDE6y%">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.CONFIG_PENDING.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="X+QPdY4=;,3W6*@Os!8:">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="Kpk.Oa#XTHWNnHAI$JH,">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="p1r,j}606y#B@1N0cvjC">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="WUyXyyTnQ4W`]9P+sR=p">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="qAISi~IUloi*MAltggk+">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="4m:@8bcsLng3Jc(N}O}l">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="(tHp^fx9X#@FmG8tKUF,">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.CONFIG_PENDING.ACTUAL</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="1np(lKgsdl/eAhE|qB$(">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id="KVC#[W)JA~rH}XD%ZiMH">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="variables_get" id="nm`4gR7$]d$##kJg4;xp">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="Lr({|~:$tw-?9~I9e0f%">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.CONFIG_PENDING.ACTUAL</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="zg.o(%9O{ul?GKXmfeWa">
<field name="TEXT">-mal Konfigurationsdaten zur Übertragung: </field>
</block>
</value>
<value name="ADD3">
<block type="text_newline" id="[19!$CSg/;:=$n*2{5u}">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD4">
<block type="get_value" id="=gCOp^W`c!5{E-472=yU">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.CONFIG_PENDING.ACTUAL_LIST</field>
</block>
</value>
<value name="ADD5">
<block type="text" id="L0zN3RR0xLS0?[EJeqeF">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD6">
<block type="text_newline" id="iKTwr@uCWPQy$xA`d|MV">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD7">
<block type="text" id="`Ha02OQ$N],P[h*+/4Z;">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD8">
<block type="text_newline" id="8O(OK5FD7vVoeq(lfYz=">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id="Y$|Htx%{2y^!KWN,!EkM">
<value name="IF0">
<block type="logic_compare" id="nZRcFtxkL{Pr;(Wh79v!">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="1jQ,u0DHbDnW0C#9P*}#">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Adapter-Monitor.countError</field>
</block>
</value>
<value name="B">
<block type="math_number" id="-R`/sF6#~#23;n]7Y$Zo">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="{U`B3#^VB92D:}|059V#">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="N]rS.0l.e{*EO2?G_+2,">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="rn3+r$5bq1+8aO3)8y.7">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id=")hA@Uyxd5]5DPII/_)@:">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Adapter-Monitor.countError</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="cDyBbH9BDG{Em,}k+L|{">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id="EJP^`]~a?t9s}sb{~r/}">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="variables_get" id="B|S87=6;A#e4N9{?^fE0">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="O+*o0%SurPNMW_1bvf8L">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Adapter-Monitor.countError</field>
</block>
</value>
<value name="ADD2">
<block type="logic_ternary" id="`jKR[zAA.Z#OYv[ng9I*">
<value name="IF">
<block type="logic_compare" id="4~%8$3x[FK=ui,%c9~p]">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="~@vu%:vh@NwPIx}ZM${r">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Adapter-Monitor.countError</field>
</block>
</value>
<value name="B">
<block type="math_number" id="AuIxK)W+0I[Dq5SYwWX~">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="THEN">
<block type="text" id=":H;W}M(*}eH-zoLf^~.g">
<field name="TEXT"> fehlerhafter ioBroker-Adapter: </field>
</block>
</value>
<value name="ELSE">
<block type="text" id="^QG*RtL0%Q?|X=/x@hX5">
<field name="TEXT"> fehlerhafte ioBroker-Adapter: </field>
</block>
</value>
</block>
</value>
<value name="ADD3">
<block type="text_newline" id="[p?[aaQfhxuALu#~,yUn">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD4">
<block type="get_value" id=":7?Q{Z$j|AopGTFU:R~U">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Adapter-Monitor.stateError</field>
</block>
</value>
<value name="ADD5">
<block type="text" id="5|`+31Zvz67KJbUi$gJ7">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD6">
<block type="text_newline" id="?FQ|umUxI;WwzNrRK/9b">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD7">
<block type="text" id="yL]KE@$Nu5n3zb~*wSK$">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD8">
<block type="text_newline" id="+4*ea(jBhAg8f5[fpKC7">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id=")yn_lltCs(YiC!fP5J^-">
<value name="IF0">
<block type="logic_operation" id="9,y$-?zZpi64KK,v3JkP" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_operation" id=":{iN0SsxH:.bMt(I(1H|" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="robvm{8WLr$Hzt6#4U3H">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="+^jDO{~EFB*Je_}LNc!E">
<field name="ATTR">val</field>
<field name="OID">hm-rega.0.maintenance</field>
</block>
</value>
<value name="B">
<block type="math_number" id="}}@ll!S.z?)`a^#IqR}V">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="#!Aaj`;=zsy.q-rK~#a@">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="rbY!|5JG2^CqEw.qo7sZ">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Servicemeldungen.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="math_number" id="`CNUHT]K2__#!qKp.pHv">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="9oG{|/FQX6NLxZ?m9E)O">
<field name="OP">GT</field>
<value name="A">
<block type="text_length" id="/UP3Q=zu-Kg,~pR^0$*J">
<value name="VALUE">
<shadow type="text" id="^uh7:DX1xM9meV0@_U(|">
<field name="TEXT">abc</field>
</shadow>
<block type="get_value" id="3.@3Ekm5CKU=nB09xF|l">
<field name="ATTR">val</field>
<field name="OID">hm-rega.0.65485</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="math_number" id="!]+S..iPkia:I(P3zxc@">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="variables_set" id="HDCOsiGC_qdtM]zWneSV">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
<value name="VALUE">
<block type="math_arithmetic" id="g+PP_;//Y8^xCSJd2jj.">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="WUyXyyTnQ4W`]9P+sR=p">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="}$jMx_0XP}m{Bm8fx)Uc">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<shadow type="math_number" id="GO3wZX-HPGqKF4o+)^01">
<field name="NUM">1</field>
</shadow>
</value>
</block>
</value>
<next>
<block type="variables_set" id="__`PAo;Syu_kWdmhEjhK">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_join" id=")r4CL2}xPPX%Nv@j!UAY">
<mutation items="9"></mutation>
<value name="ADD0">
<block type="variables_get" id="]`t4#O#xaxVPurMEqD_.">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD1">
<block type="get_value" id="6c(y|c@-f`1wnVKRFfP#">
<field name="ATTR">val</field>
<field name="OID">hm-rega.0.maintenance</field>
</block>
</value>
<value name="ADD2">
<block type="logic_ternary" id=":@kxzaK,@ai)-yWy$~ym">
<value name="IF">
<block type="logic_compare" id="R;)GLX6-DktXUy#rSjrE">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="[N_EbT!,~8c1KHJ[MC=9">
<field name="ATTR">val</field>
<field name="OID">hm-rega.0.maintenance</field>
</block>
</value>
<value name="B">
<block type="math_number" id="2|8rWV=Q[$N_7)N@QmW_">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="THEN">
<block type="text" id="RH)uBY!6AMel[87Pv)n{">
<field name="TEXT"> Homematic-Servicemeldung: </field>
</block>
</value>
<value name="ELSE">
<block type="text" id=")i3er%k-Y]^{}%zFr_8H">
<field name="TEXT"> Homematic-Servicemeldungen: </field>
</block>
</value>
</block>
</value>
<value name="ADD3">
<block type="text_newline" id="n:nrshF1pj6mBri0_+|}">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD4">
<block type="get_value" id="V0GM?_MyVerH]Twn9k[^">
<field name="ATTR">val</field>
<field name="OID">hm-rega.0.65485</field>
</block>
</value>
<value name="ADD5">
<block type="text" id="c:28N6}l.7IjXqPY@!pV">
<field name="TEXT">; </field>
</block>
</value>
<value name="ADD6">
<block type="text_newline" id="91tL-vK~Di-n/A8a(4|Z">
<field name="Type">\r\n</field>
</block>
</value>
<value name="ADD7">
<block type="text" id="7CLaMItvBU*,IerOj]fy">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD8">
<block type="text_newline" id="+n#T:NR~qP%E2U}IKpFJ">
<field name="Type">\r\n</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="variables_set" id="-0.}=6s~6UF1:|+]ha[2">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
<value name="VALUE">
<block type="text_getSubstring" id="}zwn**/Nr~:0(Hue_~Vt">
<mutation at1="false" at2="true"></mutation>
<field name="WHERE1">FIRST</field>
<field name="WHERE2">FROM_END</field>
<value name="STRING">
<block type="variables_get" id="UQxTj8}~7xnayRyb2,X:">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="AT2">
<block type="math_number" id="7){iao-PFd-YI=Q8+@n+">
<field name="NUM">8</field>
</block>
</value>
</block>
</value>
<next>
<block type="controls_if" id="00Pv[F+af9AEcAj8?w~f">
<value name="IF0">
<block type="logic_operation" id="}evkJzkz;/AMBlV!Pr^+" inline="false">
<field name="OP">OR</field>
<value name="A">
<block type="logic_operation" id="23rw5P!8j_!Jly`o2hEb" inline="false">
<field name="OP">OR</field>
<value name="A">
<block type="logic_compare" id="jVF=JcgVb9^j~#@n_53F">
<field name="OP">NEQ</field>
<value name="A">
<block type="get_value" id="u?7V^AY,;u_WYq^G!ev^">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Servicemeldungen.ACTUAL</field>
</block>
</value>
<value name="B">
<block type="variables_get" id="V,S5}N6Dugz5L@J,UU7x">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_negate" id="(BRFw2^PLC?Wh74g;fc|">
<value name="BOOL">
<block type="get_value" id=";qEh;#=s(9aK]FLgdv=W">
<field name="ATTR">ack</field>
<field name="OID">javascript.0.Device-Counter.Servicemeldungen.ACTUAL</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_operation" id=";FZKgLPwk3S9n|s`%6[o" inline="false">
<field name="OP">OR</field>
<value name="A">
<block type="logic_compare" id="exYB$*o(.X.7IjvRO8.]">
<field name="OP">NEQ</field>
<value name="A">
<block type="get_value" id="8~sv4;neW3-TnQXXP-IZ">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST</field>
</block>
</value>
<value name="B">
<block type="variables_get" id="eB#t6)lT|s`},lokAqPN">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_negate" id="dZwlIAIgV-5lHaC3/S*m">
<value name="BOOL">
<block type="get_value" id="PNfR89ba2Klpf(qsIh5!">
<field name="ATTR">ack</field>
<field name="OID">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="debug" id="wzbLzDb?NpoNeQHarCld">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text" id="3HT0gm+w#w4:n~=8AM^w">
<field name="TEXT">Servicemeldungen</field>
</shadow>
<block type="text_join" id="@wKvptc@}rOSMNhh:Hbi">
<mutation items="4"></mutation>
<value name="ADD0">
<block type="text" id="ZF$MEz,wl9)5R.IU5o@0">
<field name="TEXT">Servicemeldungen: </field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="}xOkO,g/6Q3z:))YQ1(m">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="bj@@FXZvkS6%-1gb(FAS">
<field name="TEXT"> | </field>
</block>
</value>
<value name="ADD3">
<block type="variables_get" id="-_fYF)FB`87W2x4A04Pa">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
</block>
</value>
<next>
<block type="control_ex" id="Rdx~$}P8g-:O@]RY)2pN">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow type="field_oid" id="zDKtiNGlB(aX~sZdNQ-f">
<field name="oid">javascript.0.Device-Counter.Servicemeldungen.ACTUAL</field>
</shadow>
</value>
<value name="VALUE">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="fRJEFJj$6;1/pa5h:Qs8">
<field name="BOOL">TRUE</field>
</shadow>
<block type="variables_get" id="IXS=aVs%OMJ:+~6oZVJb">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="LDl|eEg*:_]70g#3bYWp">
<field name="NUM">0</field>
</shadow>
</value>
<next>
<block type="control_ex" id="2TD5qn$PGPr[V[%B!SH^">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow type="field_oid" id="BbQ$4h7y`reR!ja^fb_F">
<field name="oid">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST</field>
</shadow>
</value>
<value name="VALUE">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="fRJEFJj$6;1/pa5h:Qs8">
<field name="BOOL">TRUE</field>
</shadow>
<block type="variables_get" id=",B)wPCYUzXzxactlE,6Z">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="[v2!N}JP}BNhBHPX+++O">
<field name="NUM">0</field>
</shadow>
</value>
<next>
<block type="control_ex" id="g1GK8GPwzUKr|p{=31#$">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow type="field_oid" id="mIg)k95v#ju42/$H:wU$">
<field name="oid">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY</field>
</shadow>
</value>
<value name="VALUE">
<shadow type="logic_boolean">
<field name="BOOL">TRUE</field>
</shadow>
<block type="text_join" id="3.EPl-lk-ezjw8A-2ht(">
<mutation items="12"></mutation>
<value name="ADD0">
<block type="text" id="o%I}O*$+QmtuVqP@Z3cX">
<field name="TEXT">(</field>
</block>
</value>
<value name="ADD1">
<block type="math_arithmetic" id="7iw2ro_?4n9Ae,B%]Vcj">
<field name="OP">ADD</field>
<value name="A">
<shadow type="math_number">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="2cA_]dqipvn2dO5[nP+u">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY_COUNT</field>
</block>
</value>
<value name="B">
<shadow type="math_number" id="Ej(pK{F1gmhH^Y9nJyPA">
<field name="NUM">1</field>
</shadow>
</value>
</block>
</value>
<value name="ADD2">
<block type="text" id="LC[VG;~|8(7Gi:@9.IIN">
<field name="TEXT">) </field>
</block>
</value>
<value name="ADD3">
<block type="time_get" id="G(Sbjs[iQyRB%TF7yOEe">
<mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
<field name="OPTION">DD.MM.YYYY</field>
</block>
</value>
<value name="ADD4">
<block type="text" id="P).BPodyogb4n@9jAF4t">
<field name="TEXT">, </field>
</block>
</value>
<value name="ADD5">
<block type="time_get" id="^TaJzgc=X:%~T55cGURV">
<mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
<field name="OPTION">hh:mm:ss</field>
</block>
</value>
<value name="ADD6">
<block type="text" id=":Hc-QO}e9e9j]?zKM}7y">
<field name="TEXT"> - </field>
</block>
</value>
<value name="ADD7">
<block type="variables_get" id="[+Bhj@rFBRtg]ZYhrp#o">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="ADD8">
<block type="logic_ternary" id="v-_21/sFrm|V5OIW7eD!">
<value name="IF">
<block type="logic_compare" id="v|/f7c(JXR^n{R^x!;P|">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="ywR{tGQI04NHlsSG~OgB">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="B">
<block type="math_number" id="jp(1:`rax.c7nB9ck.=h">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<value name="THEN">
<block type="text" id="v0GkyC(cjC%BQkJrz1Le">
<field name="TEXT"> Servicemeldung: </field>
</block>
</value>
<value name="ELSE">
<block type="text" id="/JXbqG=x5J3z8thiJZs]">
<field name="TEXT"> Servicemeldungen: </field>
</block>
</value>
</block>
</value>
<value name="ADD9">
<block type="variables_get" id="B6F2oJw:#p2MqLGe6v-N">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
<value name="ADD10">
<block type="text" id=".%S1Nko@_umF5jV(*K,F">
<field name="TEXT"><hr></field>
</block>
</value>
<value name="ADD11">
<block type="get_value" id="OJsVOc!fKx!z-1m|Wu1T">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY</field>
</block>
</value>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="eVX=VsF+LD1Pc{bGgKrV">
<field name="NUM">0</field>
</shadow>
</value>
<next>
<block type="control_ex" id="7,k~Q(lSxlWn`=i^K#hU">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow type="field_oid" id="ehm[l0B%_c?SKIFPq;:;">
<field name="oid">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY_COUNT</field>
</shadow>
</value>
<value name="VALUE">
<shadow type="logic_boolean">
<field name="BOOL">TRUE</field>
</shadow>
<block type="math_arithmetic" id="YN0=xU)ouN5T+$cd+Qj+">
<field name="OP">ADD</field>
<value name="A">
<shadow type="math_number">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="b)QB4E{dF.Uc6ZeqNmBF">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY_COUNT</field>
</block>
</value>
<value name="B">
<shadow type="math_number" id="PUgW2t}5psK5iMu}Aw-o">
<field name="NUM">1</field>
</shadow>
</value>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="{t[^vw)O+eBbTQvmv$Ov">
<field name="NUM">0</field>
</shadow>
</value>
<next>
<block type="controls_if" id="Zw$2)sK+Y.7Lj*`?C=)r">
<value name="IF0">
<block type="variables_get" id="@gAtcZM2:RyIRFz51St4">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<statement name="DO0">
<block type="sendto_custom" id="`Q6?40FEpcdsg}`JD6N+">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="PopupMessage,PopupDuration" with_statement="false"></mutation>
<field name="INSTANCE">iqontrol.0</field>
<field name="COMMAND">send</field>
<field name="LOG"></field>
<field name="WITH_STATEMENT">FALSE</field>
<value name="ARG0">
<shadow type="text" id="||8XhqVyb%Z[w;Sysv|,">
<field name="TEXT"></field>
</shadow>
<block type="text_join" id="`@+-1;q=vBXKbur.6Hq.">
<mutation items="4"></mutation>
<value name="ADD0">
<block type="text" id="FYL^6hGvyd2R6dAS^uk_">
<field name="TEXT">Aktuell </field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="!0#pAEUxy=oU`PB,1oEC">
<field name="VAR" id="[wfX$mB[M!1H4](u/2zH">servicemeldungenActual</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="TV%tU}`M[1Kmvx|[fPFg">
<field name="TEXT"> Servicemeldungen:<br></field>
</block>
</value>
<value name="ADD3">
<block type="variables_get" id="Gb/v~wE5Bf;-Qa[qLWk8">
<field name="VAR" id="q]?!@x:[#R5|{Wqg0]~_">servicemeldungenActualList</field>
</block>
</value>
</block>
</value>
<value name="ARG1">
<shadow type="text" id="5bJdn6lD;nO).28o~,VI">
<field name="TEXT">2500</field>
</shadow>
</value>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
<block type="on_ext" id="xyFG$_JvBDaJM=`EYz8l" x="1912" y="63">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
<field name="CONDITION">any</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="(NG$i;Ux/y-iPe-uMpyu">
<field name="oid">javascript.0.Device-Counter.Servicemeldungen.CLEAR_ACTUAL_LIST_HISTORY</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="control_ex" id="ELB#.Fd!x!e;9Zwy;*TO">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow type="field_oid" id="bey^-BhWG5abN*xZQz!k">
<field name="oid">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY</field>
</shadow>
</value>
<value name="VALUE">
<shadow type="logic_boolean" id="2gltl$.(VKn)@r51*0m^">
<field name="BOOL">TRUE</field>
</shadow>
<block type="text" id="s^uGds*T:O|V~h}^2b8j">
<field name="TEXT"></field>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="Z@RNt}3?t)X!y$m%PE;Z">
<field name="NUM">0</field>
</shadow>
</value>
<next>
<block type="control_ex" id="P7EYjnmKFnq1ZtPblOqs">
<field name="TYPE">true</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow type="field_oid" id="|lKee9;J/al^b?9;/Lj+">
<field name="oid">javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY_COUNT</field>
</shadow>
</value>
<value name="VALUE">
<shadow type="logic_boolean" id="#^KTQ{rVW^%NW+yMTp`{">
<field name="BOOL">TRUE</field>
</shadow>
<block type="math_number" id="8aT1pzsH{DaMZO2w9Ulv">
<field name="NUM">0</field>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="|VaHOPGYPt6/IRamZw),">
<field name="NUM">0</field>
</shadow>
</value>
</block>
</next>
</block>
</statement>
</block>
</xml>
To display the count of service-messages in the name use this as device-name: Service-meldungen|{javascript.0.Device-Counter.Servicemeldungen.ACTUAL}
The used values are:
- STATE:
javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST
- BATTERY:
javascript.0.Device-Counter.LOWBAT.ACTUAL_LIST
- UNREACH:
javascript.0.Device-Counter.UNREACH.ACTUAL_LIST
- ERROR:
javascript.0.Device-Counter.ERROR.ACTUAL_LIST
And for History:
The used values are:
- STATE:
javascript.0.Device-Counter.Servicemeldungen.CLEAR_ACTUAL_LIST_HISTORY
- HTML:
javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY
- ERROR:
javascript.0.Device-Counter.Servicemeldungen.ACTUAL_LIST_HISTORY
And under options:
- Capture for button:
Log leeren
(german for clear log)