<xml xmlns="https://developers.google.com/blockly/xml">
<block type="comment" id="dQzp-onKog66L~byzH[l" x="-2188" y="-1287">
<field name="COMMENT">https://www.iobroker.net/#de/documentation/dev/stateroles.md</field>
<next>
<block type="comment" id="EI-uCmW`R}jN#)YJ_:r6">
<field name="COMMENT">Rollen von Datenpunkten</field>
<next>
<block type="comment" id="xD3cr?N+-f`fqc_BIu8`">
<field name="COMMENT">Allgemein</field>
<next>
<block type="create" id="c92#N__+3@_i,+@%jupm">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.01Allgemein.state</field>
<value name="VALUE">
<block type="text" id="Z-/BFV]=8dlO5f!k=R%W">
<field name="TEXT">leer</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="7TM}v,C*Rq*@4}emmW5a">
<field name="TEXT">{"role":"state","name":"state"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="#1~l*!TM7r9U{)k7cs0p">
<field name="COMMENT">state</field>
<next>
<block type="comment" id="LG0pFM/6MUyB$y{ilTO2">
<field name="COMMENT">sehr allgemeiner Zweck. Zu verwenden, wenn unbekannt ist, welche Rolle der Datenpukt hat</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="+|o.X^XuZxSLC3jSJevE">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.01Allgemein.text</field>
<value name="VALUE">
<block type="text" id="vnwPz*IC^qWDt6+|;jM[">
<field name="TEXT">leer</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="~Zja)ekO(?G8OZ]F](`|">
<field name="TEXT">{"role":"text","type":"string","name":"text"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="};g^n8vf~Ft0}Suiik{F">
<field name="COMMENT">text</field>
<next>
<block type="comment" id=";R%;:.*l#WHpX9aNfWj6">
<field name="COMMENT">(common.type = string)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="q^n(E4XU2?L/+v/rhyx+">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.01Allgemein.url</field>
<value name="VALUE">
<block type="text" id="Ye7!RD/;);([)3DDl+9t">
<field name="TEXT">leer</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="+BtGMQWw!`K3%G(Gp#9c">
<field name="TEXT">{"role":"text.url","type":"string","name":"url"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="pP!NHf5w}}^k^r(T`8R7">
<field name="COMMENT">text.url</field>
<next>
<block type="comment" id="?R)WbVB$M1u=v~P5xDV~">
<field name="COMMENT">(common.type = string) state val enthält eine URL zur Verwendung in einem Anker, Iframe oder img</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="qPwzf!p(SYPjhG[zJtR0">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.01Allgemein.html</field>
<value name="VALUE">
<block type="text" id="dmRV[:WHaQPFSEY4kt8B">
<field name="TEXT">leer</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="0OMs-Qi;]m$;.H{1cOaq">
<field name="TEXT">{"role":"html","type":"string","name":"html"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="~y9tO:pKnlGe%C:t?t4|">
<field name="COMMENT">html</field>
<next>
<block type="comment" id="TpK]GC//)AiVJ_?I.71G">
<field name="COMMENT">(common.type = string)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="yLxUcA5NHVeE_1TWl!BY">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.01Allgemein.json</field>
<value name="VALUE">
<block type="text" id="`wI9$A(MA|u|:_1?vLn=">
<field name="TEXT">leer</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="s$XAUM-3MozknXLQ-3T[">
<field name="TEXT">{"role":"json","type":"string","name": "json"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="pS?-Vhv;Hwhx?2/U)o9n">
<field name="COMMENT">json</field>
<next>
<block type="comment" id="].|(!pRv|*JpwJ@oi`6H">
<field name="COMMENT">(common.type = string)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="v$y=S_~Z;R,M;n-aoHw9">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.01Allgemein.list</field>
<value name="VALUE">
<block type="text" id="BiyjsSwVP/F=_rI|wcih">
<field name="TEXT">leer</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="ZTJ@3R{QSaQ-cY-ev-;-">
<field name="TEXT">{"role": "list","type":"array","name":"list"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="hmN;3e}f/PPtly6TWi,c">
<field name="COMMENT">list</field>
<next>
<block type="comment" id="s`S!P,!qahsUbN1!6{4G">
<field name="COMMENT">(common.type = array)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="SUi3wBCZ=^u)Uqq?c]b1">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.01Allgemein.01_date</field>
<value name="VALUE">
<block type="text" id="(yT!w=JwVW_CMbc_vC@E">
<field name="TEXT">01.01.2021</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="oT0tYRvHs%C.(4Af+jP7">
<field name="TEXT">{"role":"date","type":"string","name":"01 date"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="(X%+k[b9$19m/D08~O28">
<field name="COMMENT">date</field>
<next>
<block type="comment" id="KaabFCfLl8MF753wo#;!">
<field name="COMMENT">(common.type = string - kann mit der Zeichenfolge "new Date (ddd)" analysiert werden)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="|IdA74#+H9F5C8j58FSP">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.01Allgemein.02_date</field>
<value name="VALUE">
<block type="math_number" id="5.`~UU+iTb%tp`anaUYa">
<field name="NUM">1</field>
</block>
</value>
<value name="COMMON">
<block type="text" id=")$C24x@KEKOfPB=JZFv[">
<field name="TEXT">{"role":"date","type":"number","name":"02 date"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="PG#KAK-N9ZYgPqOU^ByK">
<field name="COMMENT">date</field>
<next>
<block type="comment" id="/(nV-k2c}lsxze#JqSa|">
<field name="COMMENT">(common.type = number - Sekunden * 1000)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="x`0Zd}y~c_v!;vD3H7Bl">
<field name="COMMENT">Sensor (Boolescher Wert, schreibgeschützt)</field>
<next>
<block type="comment" id=";Xi#NDCI^4pzMB~hg9Xu">
<field name="COMMENT">common.type = boolean, common.write = false</field>
<next>
<block type="create" id="H#dh27`T;r[Jc%cFggUC">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.window</field>
<value name="VALUE">
<block type="logic_boolean" id="L^+Iu)]$[5k;!*|8(bI{">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="iJ$!rtzfYzp{O28U%^Mn">
<field name="TEXT">{"role":"sensor.window","type":"boolean","read":true,"write":false,"name":"window"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="09VSzue3~1K[Q?k=*/mn">
<field name="COMMENT">sensor.window</field>
<next>
<block type="comment" id="C)R]QzLYQ~m!V$ww0%0g">
<field name="COMMENT">Fenster geöffnet (true) oder geschlossen (false)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="T).4enx~.i|HCYKZo:0v">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.door</field>
<value name="VALUE">
<block type="logic_boolean" id="/+^*A=Gt`IRpjEh{@_xG">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="#xAtBkvnL4=)C~k$Ww)?">
<field name="TEXT">{"role":"sensor.door","type":"boolean","read":true,"write":false,"name":"door"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="?*L1lOsLe8%uV6aBXb0C">
<field name="COMMENT">sensor.door</field>
<next>
<block type="comment" id="vY4:T?_Y@_1,U5lcdCP_">
<field name="COMMENT">Tür geöffnet (true) oder geschlossen (false)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="o~dYu:n_9Y$-9]=1;+(K">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.alarm</field>
<value name="VALUE">
<block type="logic_boolean" id="glz?6_gel-~O#rx:Ycp[">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="H!hPp9I!ClUS6`|dN0m/">
<field name="TEXT">{"role":"sensor.alarm","type":"boolean","read":true,"write":false,"name":"alarm"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="OauWuH{+P[r(-f7t]UTn">
<field name="COMMENT">sensor.alarm</field>
<next>
<block type="comment" id="$5hP5aP_xWX;MX6/Y2W.">
<field name="COMMENT">ein häufiger Alarm</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="GdI2mMTpC6C,9o%uci#N">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.alarm_flood</field>
<value name="VALUE">
<block type="logic_boolean" id="/N(:6r!;xG,W75kKvxVy">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="OxzYiYF13bjOq0Eq}@q-">
<field name="TEXT">{"role":"sensor.alarm.flood","type":"boolean","read":true,"write":false,"name":"alarm flood"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="+q{BH`p/}Q0{`g`,[.cD">
<field name="COMMENT">sensor.alarm.flood</field>
<next>
<block type="comment" id="{+P@@OoPf4T4dsSDffQj">
<field name="COMMENT">Wasserleckage</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="XyPOi4:{^cc{QG9):GJE">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.alarm_fire</field>
<value name="VALUE">
<block type="logic_boolean" id="0ghAc~J@cD#5R,`srdy_">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="xr.[t9#10Tpi_,|1(z[D">
<field name="TEXT">{"role":"sensor.alarm.fire","type":"boolean","read":true,"write":false,"name":"alarm fire"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="tbj6h20d]mF66$GV=nG6">
<field name="COMMENT">sensor.alarm.fire</field>
<next>
<block type="comment" id="lnEM{LQ6HSMk33|5TH=]">
<field name="COMMENT">Feuersensor</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="Y{$n]:|PaUbg8Tu=.p_H">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.alarm_secure</field>
<value name="VALUE">
<block type="logic_boolean" id="4~hqmFH2`A%/-.rc1o1l">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="4irEOLnO7Q/gj%,G9,+|">
<field name="TEXT">{"role":"sensor.alarm.secure","type":"boolean","read":true,"write":false,"name":"alarm secure"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="2x3k`$H=j;{TUX+0fWs~">
<field name="COMMENT">sensor.alarm.secure</field>
<next>
<block type="comment" id="$c7(#ZibK@76:FMKvo|a">
<field name="COMMENT">Tür geöffnet, Fenster geöffnet oder Bewegung erkannt, während der Alarm eingeschaltet ist.</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="I1qUgGy;jEbJ013B(|L|">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.alarm_power</field>
<value name="VALUE">
<block type="logic_boolean" id=":]EhVGjze(NPghh-XLU=">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="R/tc$V0c+?{VCq(,w;;J">
<field name="TEXT">{"role":"sensor.alarm. power","type":"boolean","read":true,"write":false,"name":"alarm power"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="jExJjIhzoivAhr$REYyK">
<field name="COMMENT">sensor.alarm.power</field>
<next>
<block type="comment" id="tBJe]Ki`=4e=0@Bf.hb|">
<field name="COMMENT">Kein Strom (Spannung = 0)</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="k8/ed(mJ6F?![g!N68[i">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.light</field>
<value name="VALUE">
<block type="logic_boolean" id="u.y9{fhu;,.q%00|b]Ub">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="m`EIvw];McBz@A{v=yn3">
<field name="TEXT">{"role":"sensor.light","type":"boolean","read":true,"write":false,"name":"light"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="eWCsa,d8V?Q6zn:KYxq}">
<field name="COMMENT">sensor.light</field>
<next>
<block type="comment" id="3BuWyvl(szbdkyQ+J?G5">
<field name="COMMENT">Rückmeldung der Lampe, dass sie eingeschaltet ist</field>
<next>
<block type="create" id="bD+rsdu(PkAcT4$K.Y[Q">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.lock</field>
<value name="VALUE">
<block type="logic_boolean" id="PiD4%iJ{X_/.]ub:y9^m">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="2%tLacx:Ne?Rr)jdX`--">
<field name="TEXT">{"role":"sensor.lock","type":"boolean","read":true,"write":false,"name":"lock"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="J9=T-N-(#6%u*Y_bJXe]">
<field name="COMMENT">sensor.lock</field>
<next>
<block type="comment" id="T%9_]pNpT3l0D-=DM3bo">
<field name="COMMENT">aktuelle Position des Schlosses</field>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="wug$JyHzLP-fSDTc;@eL">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.motion</field>
<value name="VALUE">
<block type="logic_boolean" id="+89ou+G@pz.*jj@w]x(I">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="j%t9B8ap2ky!XLb{k2Pj">
<field name="TEXT">{"role":"sensor.motion","type":"boolean","read":true,"write":false,"name":"motion"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="#g,Z[p/h^`U3Gu.lS@W^">
<field name="COMMENT">sensor.motion</field>
<next>
<block type="comment" id="`nE#*{U9hL/nt(sY9j[8">
<field name="COMMENT">Bewegungssensor</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="m}z.2Nx`8~/cT%8aZi_M">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.rain</field>
<value name="VALUE">
<block type="logic_boolean" id="Q#F`O`6[o[K{Frcc.D(_">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id=".U//jno/Y-QHWiiZXtHx">
<field name="TEXT">{"role":"sensor.rain","type":"boolean","read":true,"write":false,"name":"rain"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="63%^YG-uQlsC}I,]?Y1r">
<field name="COMMENT">sensor.rain</field>
<next>
<block type="comment" id="U.AV~ya?kyZ?-n{I8/zJ">
<field name="COMMENT">Regen erkannt</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="Q|Fza.c0d1)_e(FZ4[|M">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.02Sensor_schreibgeschuetzt.noise</field>
<value name="VALUE">
<block type="logic_boolean" id="d]H#j2R011eh}?FF.%j+">
<field name="BOOL">FALSE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="FgHBM|=P~IrR*0gq@#N7">
<field name="TEXT">{"role":"sensor.noise","type":"boolean","read":true,"write":false,"name":"noise"}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="q)|m55L3`VQB+UnH%V(a">
<field name="COMMENT">sensor.noise</field>
<next>
<block type="comment" id="hj`RdGzooY`:$P~g*R~9">
<field name="COMMENT">Geräusch erkannt</field>
</block>
</next>
</block>
</statement>
<next>
<block type="create" id="*bW5N?BH~L|VbVBa3L*X">
<field name="NAME">0_userdata.0.Datenpunkte_erstellen.Button.Testbutton</field>
<value name="VALUE">
<block type="logic_boolean" id="vaVH-lS5e@.bZyqxQ))L">
<field name="BOOL">TRUE</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="xAhK+2KmB]Up}qfc/}+!">
<field name="TEXT">{"name":"Testbutton","type":"boolean","read":false,"write":true,"role":"button","def":true,"smartName": {"de": "a. r. d. ","smartType": "SWITCH"}}</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="qa?~BsR4oTlmTtwy_PB/">
<field name="COMMENT">Tasten (Boolscher Wert, nur Schreiben)</field>
<next>
<block type="comment" id="L]aptP.6it7*Qq!D^8I}">
<field name="COMMENT">common.type = boolean, common.write = true, common.read = false</field>
</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>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</xml>