Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Trockner / Waschmaschine Blockly

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    343

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

Trockner / Waschmaschine Blockly

Geplant Angeheftet Gesperrt Verschoben Blockly
16 Beiträge 6 Kommentatoren 1.7k Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • G Offline
    G Offline
    goliat0815
    schrieb am zuletzt editiert von
    #1

    Hier für die, die auf Facebook danach gefragt haben. Es geht bestimmt noch "schöner" aber es funktioniert für mich sehr gut.

    <xml xmlns="https://developers.google.com/blockly/xml">
      <variables>
        <variable id="y~7J[6y=#n^R6V6y{@A#">timeout2 laeuft</variable>
        <variable id="obP`JV;QUU%V#ga-ubf7">WM State</variable>
        <variable type="timeout" id="timeout2">timeout2</variable>
        <variable type="timeout" id="timeout">timeout</variable>
      </variables>
      <block type="on_ext" id="]nm@fXILEu8mmca4J!}S" x="168" y="108">
        <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^94DZ+R]6b4~Y@S|NF">
            <field name="oid">linkeddevices.0.Keller.load_power-Trockner</field>
          </shadow>
        </value>
        <statement name="STATEMENT">
          <block type="controls_if" id="JV-H#l({$GTnPrUa8y{3">
            <mutation elseif="1"></mutation>
            <value name="IF0">
              <block type="logic_operation" id="M:@_gjjI/w8vfS2qLOGa">
                <field name="OP">AND</field>
                <value name="A">
                  <block type="logic_compare" id="PM)qIzUYsmB^@HycHPHH">
                    <field name="OP">EQ</field>
                    <value name="A">
                      <block type="variables_get" id="JsQ@!uO)bo0B4ul9Lfr~">
                        <field name="VAR" id="y~7J[6y=#n^R6V6y{@A#">timeout2 laeuft</field>
                      </block>
                    </value>
                    <value name="B">
                      <block type="logic_boolean" id=".|#T=RNjlbit^F8MDF]x">
                        <field name="BOOL">FALSE</field>
                      </block>
                    </value>
                  </block>
                </value>
                <value name="B">
                  <block type="logic_operation" id="BT1+lSS:@uduP0a?V87;">
                    <field name="OP">AND</field>
                    <value name="A">
                      <block type="logic_compare" id="-H+iRz]Uqs[l)$HtUlFb">
                        <field name="OP">EQ</field>
                        <value name="A">
                          <block type="get_value" id="w0|7,Rz!7e*(Isl;z^|*">
                            <field name="ATTR">val</field>
                            <field name="OID">linkeddevices.0.Keller.plug4state</field>
                          </block>
                        </value>
                        <value name="B">
                          <block type="logic_boolean" id="oRXS=]W|YWHn_j^mTfop">
                            <field name="BOOL">TRUE</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <value name="B">
                      <block type="logic_operation" id="pOk]GXVqIbHV_ageKu)_">
                        <field name="OP">AND</field>
                        <value name="A">
                          <block type="logic_compare" id="/uPHwL2H%FIIbi[,uV?7">
                            <field name="OP">LTE</field>
                            <value name="A">
                              <block type="on_source" id="HF{nrhe:q{Abj{LHZhyL">
                                <field name="ATTR">state.val</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="math_number" id=";yW3,/MeGY0Xm3-SBT1]">
                                <field name="NUM">5</field>
                              </block>
                            </value>
                          </block>
                        </value>
                        <value name="B">
                          <block type="logic_compare" id="+;dNW$-US?GH.*8%xhDP">
                            <field name="OP">EQ</field>
                            <value name="A">
                              <block type="variables_get" id="$UISt9g$wu6FGFhJM;%1">
                                <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_boolean" id="#FNXT:j[{g#6^ek$S2YO">
                                <field name="BOOL">FALSE</field>
                              </block>
                            </value>
                          </block>
                        </value>
                      </block>
                    </value>
                  </block>
                </value>
              </block>
            </value>
            <statement name="DO0">
              <block type="variables_set" id="JL#cs,QR6%KOe9b:_kBl">
                <field name="VAR" id="y~7J[6y=#n^R6V6y{@A#">timeout2 laeuft</field>
                <value name="VALUE">
                  <block type="logic_boolean" id="_#exSs!eL3DWJ!F2~wFS">
                    <field name="BOOL">TRUE</field>
                  </block>
                </value>
                <next>
                  <block type="timeouts_settimeout" id="!onvlitH0:sESCUF:%rG">
                    <field name="NAME">timeout2</field>
                    <field name="DELAY">5</field>
                    <field name="UNIT">min</field>
                    <statement name="STATEMENT">
                      <block type="variables_set" id="`{3,PaU:nQ5f_o%Q4Rue">
                        <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                        <value name="VALUE">
                          <block type="logic_boolean" id=",azJL-m/fi@I^13c[|48">
                            <field name="BOOL">TRUE</field>
                          </block>
                        </value>
                      </block>
                    </statement>
                  </block>
                </next>
              </block>
            </statement>
            <value name="IF1">
              <block type="logic_operation" id="FyT5Xy@*}(|Jl%Irp]Yx">
                <field name="OP">AND</field>
                <value name="A">
                  <block type="logic_compare" id="I/sCDvjrlJ+Cq59oa:5-">
                    <field name="OP">GTE</field>
                    <value name="A">
                      <block type="on_source" id="j%w8y9.s{wX3QIfDEp]e">
                        <field name="ATTR">state.val</field>
                      </block>
                    </value>
                    <value name="B">
                      <block type="math_number" id="dSIx~IwX%CiF$zVGu?@Q">
                        <field name="NUM">5</field>
                      </block>
                    </value>
                  </block>
                </value>
                <value name="B">
                  <block type="logic_compare" id="=y*g.8h5{Keb?j]@NMDv">
                    <field name="OP">EQ</field>
                    <value name="A">
                      <block type="get_value" id="SgV`ADWO)?wf:WK3F6T.">
                        <field name="ATTR">val</field>
                        <field name="OID">linkeddevices.0.Keller.plug4state</field>
                      </block>
                    </value>
                    <value name="B">
                      <block type="logic_boolean" id="k.2RVcrdrkcKxh#]Fp2I">
                        <field name="BOOL">TRUE</field>
                      </block>
                    </value>
                  </block>
                </value>
              </block>
            </value>
            <statement name="DO1">
              <block type="variables_set" id="Q=SNwc@Z;COj!!~.]wWT">
                <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                <value name="VALUE">
                  <block type="logic_boolean" id="d[O:fYc*ye@Viio:qFc7">
                    <field name="BOOL">FALSE</field>
                  </block>
                </value>
                <next>
                  <block type="variables_set" id="D-oDWb#/vUM+[UnpgqvE">
                    <field name="VAR" id="y~7J[6y=#n^R6V6y{@A#">timeout2 laeuft</field>
                    <value name="VALUE">
                      <block type="logic_boolean" id="cv[;g$(]([@Q0SXBZWDV">
                        <field name="BOOL">FALSE</field>
                      </block>
                    </value>
                    <next>
                      <block type="timeouts_cleartimeout" id="2I]L7z7mQO^HVpM-d5^Q">
                        <field name="NAME">timeout2</field>
                        <next>
                          <block type="timeouts_cleartimeout" id="qLVq#~d3PJaW5%tdd:fI">
                            <field name="NAME">timeout</field>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </statement>
            <next>
              <block type="controls_if" id=".D(GY(Fu:0Hpl[T;i2gH">
                <value name="IF0">
                  <block type="logic_compare" id="W7pxvQ8@.auCssuNrHw.">
                    <field name="OP">EQ</field>
                    <value name="A">
                      <block type="variables_get" id="BDhwprXphiuUGv{YowK=">
                        <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                      </block>
                    </value>
                    <value name="B">
                      <block type="logic_boolean" id="qo;@]3`btuaF!QU,[Y/1">
                        <field name="BOOL">TRUE</field>
                      </block>
                    </value>
                  </block>
                </value>
                <statement name="DO0">
                  <block type="control" id="*7uvT_h}6AP/;;|@hNT1">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                    <field name="OID">alexa2.0.Echo-Devices.G091AA08050426L5.Commands.speak</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                      <block type="text" id="nG_=]B/h4YoF9fV}xRtg">
                        <field name="TEXT">Trockner ist fertig wird in 30 Minuten ausgeschaltet</field>
                      </block>
                    </value>
                    <next>
                      <block type="control" id="LF7t46?8w~}YOJ!B4wQl">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">alexa2.0.Echo-Devices.90F008187205096V.Commands.speak</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="text" id="6@nZ5?ySJlli^Rfim*d;">
                            <field name="TEXT">Trocknerist fertig und wird in 30 Minuten ausgeschaltet</field>
                          </block>
                        </value>
                        <next>
                          <block type="variables_set" id=")gVj-JyVo;gciJjD#dgQ">
                            <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                            <value name="VALUE">
                              <block type="logic_boolean" id="=-kkiN(/m7Z1#X2O[@3*">
                                <field name="BOOL">FALSE</field>
                              </block>
                            </value>
                            <next>
                              <block type="timeouts_cleartimeout" id="PP}#`P%zVKJ@^O=G9.Pg">
                                <field name="NAME">timeout</field>
                                <next>
                                  <block type="timeouts_settimeout" id="aW8]DVZba[Vc$Vf^.{nN">
                                    <field name="NAME">timeout</field>
                                    <field name="DELAY">30</field>
                                    <field name="UNIT">min</field>
                                    <statement name="STATEMENT">
                                      <block type="controls_if" id="jr{X%^Jzg},`$Y3q@`@C">
                                        <value name="IF0">
                                          <block type="logic_compare" id="fsyFmmzVJ^.FLEE=%6mS">
                                            <field name="OP">EQ</field>
                                            <value name="A">
                                              <block type="get_value" id="nA|JE%P:q1miCZA^wk[i">
                                                <field name="ATTR">val</field>
                                                <field name="OID">linkeddevices.0.Keller.plug4state</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="logic_boolean" id="mx8l@g]G|KZ|xo!42)|l">
                                                <field name="BOOL">TRUE</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO0">
                                          <block type="control" id="[.1|@|NZ*PXxS4B=Tust">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">linkeddevices.0.Keller.plug4state</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="Hm8X4#5^[40j:=B[8fGJ">
                                                <field name="BOOL">FALSE</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="control" id="]EJj$ZO_@,Bt[nD:xrwW">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                <field name="OID">alexa2.0.Echo-Devices.G091AA08050426L5.Commands.speak</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="text" id="#sXGwOrKz@.O_EvTG@[?">
                                                    <field name="TEXT">Trockner wurde nun ausgeschaltet</field>
                                                  </block>
                                                </value>
                                                <next>
                                                  <block type="control" id="9.6p6AHB]J=#dC$SRg#b">
                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                    <field name="OID">alexa2.0.Echo-Devices.90F008187205096V.Commands.speak</field>
                                                    <field name="WITH_DELAY">FALSE</field>
                                                    <value name="VALUE">
                                                      <block type="text" id="swKiI00;_#Nn#`6s(iBy">
                                                        <field name="TEXT">Trockner wurde nun ausgeschaltet</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                    </statement>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </statement>
              </block>
            </next>
          </block>
        </statement>
      </block>
    </xml>
    
    

    4f29040a-6535-4961-901c-411d4633d3e2-image.png

    haselchenH 1 Antwort Letzte Antwort
    1
    • G goliat0815

      Hier für die, die auf Facebook danach gefragt haben. Es geht bestimmt noch "schöner" aber es funktioniert für mich sehr gut.

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="y~7J[6y=#n^R6V6y{@A#">timeout2 laeuft</variable>
          <variable id="obP`JV;QUU%V#ga-ubf7">WM State</variable>
          <variable type="timeout" id="timeout2">timeout2</variable>
          <variable type="timeout" id="timeout">timeout</variable>
        </variables>
        <block type="on_ext" id="]nm@fXILEu8mmca4J!}S" x="168" y="108">
          <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^94DZ+R]6b4~Y@S|NF">
              <field name="oid">linkeddevices.0.Keller.load_power-Trockner</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="controls_if" id="JV-H#l({$GTnPrUa8y{3">
              <mutation elseif="1"></mutation>
              <value name="IF0">
                <block type="logic_operation" id="M:@_gjjI/w8vfS2qLOGa">
                  <field name="OP">AND</field>
                  <value name="A">
                    <block type="logic_compare" id="PM)qIzUYsmB^@HycHPHH">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="variables_get" id="JsQ@!uO)bo0B4ul9Lfr~">
                          <field name="VAR" id="y~7J[6y=#n^R6V6y{@A#">timeout2 laeuft</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_boolean" id=".|#T=RNjlbit^F8MDF]x">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <value name="B">
                    <block type="logic_operation" id="BT1+lSS:@uduP0a?V87;">
                      <field name="OP">AND</field>
                      <value name="A">
                        <block type="logic_compare" id="-H+iRz]Uqs[l)$HtUlFb">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id="w0|7,Rz!7e*(Isl;z^|*">
                              <field name="ATTR">val</field>
                              <field name="OID">linkeddevices.0.Keller.plug4state</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_boolean" id="oRXS=]W|YWHn_j^mTfop">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_operation" id="pOk]GXVqIbHV_ageKu)_">
                          <field name="OP">AND</field>
                          <value name="A">
                            <block type="logic_compare" id="/uPHwL2H%FIIbi[,uV?7">
                              <field name="OP">LTE</field>
                              <value name="A">
                                <block type="on_source" id="HF{nrhe:q{Abj{LHZhyL">
                                  <field name="ATTR">state.val</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id=";yW3,/MeGY0Xm3-SBT1]">
                                  <field name="NUM">5</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_compare" id="+;dNW$-US?GH.*8%xhDP">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="variables_get" id="$UISt9g$wu6FGFhJM;%1">
                                  <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_boolean" id="#FNXT:j[{g#6^ek$S2YO">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="variables_set" id="JL#cs,QR6%KOe9b:_kBl">
                  <field name="VAR" id="y~7J[6y=#n^R6V6y{@A#">timeout2 laeuft</field>
                  <value name="VALUE">
                    <block type="logic_boolean" id="_#exSs!eL3DWJ!F2~wFS">
                      <field name="BOOL">TRUE</field>
                    </block>
                  </value>
                  <next>
                    <block type="timeouts_settimeout" id="!onvlitH0:sESCUF:%rG">
                      <field name="NAME">timeout2</field>
                      <field name="DELAY">5</field>
                      <field name="UNIT">min</field>
                      <statement name="STATEMENT">
                        <block type="variables_set" id="`{3,PaU:nQ5f_o%Q4Rue">
                          <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id=",azJL-m/fi@I^13c[|48">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </statement>
              <value name="IF1">
                <block type="logic_operation" id="FyT5Xy@*}(|Jl%Irp]Yx">
                  <field name="OP">AND</field>
                  <value name="A">
                    <block type="logic_compare" id="I/sCDvjrlJ+Cq59oa:5-">
                      <field name="OP">GTE</field>
                      <value name="A">
                        <block type="on_source" id="j%w8y9.s{wX3QIfDEp]e">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="dSIx~IwX%CiF$zVGu?@Q">
                          <field name="NUM">5</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <value name="B">
                    <block type="logic_compare" id="=y*g.8h5{Keb?j]@NMDv">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="get_value" id="SgV`ADWO)?wf:WK3F6T.">
                          <field name="ATTR">val</field>
                          <field name="OID">linkeddevices.0.Keller.plug4state</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_boolean" id="k.2RVcrdrkcKxh#]Fp2I">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO1">
                <block type="variables_set" id="Q=SNwc@Z;COj!!~.]wWT">
                  <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                  <value name="VALUE">
                    <block type="logic_boolean" id="d[O:fYc*ye@Viio:qFc7">
                      <field name="BOOL">FALSE</field>
                    </block>
                  </value>
                  <next>
                    <block type="variables_set" id="D-oDWb#/vUM+[UnpgqvE">
                      <field name="VAR" id="y~7J[6y=#n^R6V6y{@A#">timeout2 laeuft</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="cv[;g$(]([@Q0SXBZWDV">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                      <next>
                        <block type="timeouts_cleartimeout" id="2I]L7z7mQO^HVpM-d5^Q">
                          <field name="NAME">timeout2</field>
                          <next>
                            <block type="timeouts_cleartimeout" id="qLVq#~d3PJaW5%tdd:fI">
                              <field name="NAME">timeout</field>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
              <next>
                <block type="controls_if" id=".D(GY(Fu:0Hpl[T;i2gH">
                  <value name="IF0">
                    <block type="logic_compare" id="W7pxvQ8@.auCssuNrHw.">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="variables_get" id="BDhwprXphiuUGv{YowK=">
                          <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_boolean" id="qo;@]3`btuaF!QU,[Y/1">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="control" id="*7uvT_h}6AP/;;|@hNT1">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">alexa2.0.Echo-Devices.G091AA08050426L5.Commands.speak</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="text" id="nG_=]B/h4YoF9fV}xRtg">
                          <field name="TEXT">Trockner ist fertig wird in 30 Minuten ausgeschaltet</field>
                        </block>
                      </value>
                      <next>
                        <block type="control" id="LF7t46?8w~}YOJ!B4wQl">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">alexa2.0.Echo-Devices.90F008187205096V.Commands.speak</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="text" id="6@nZ5?ySJlli^Rfim*d;">
                              <field name="TEXT">Trocknerist fertig und wird in 30 Minuten ausgeschaltet</field>
                            </block>
                          </value>
                          <next>
                            <block type="variables_set" id=")gVj-JyVo;gciJjD#dgQ">
                              <field name="VAR" id="obP`JV;QUU%V#ga-ubf7">WM State</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="=-kkiN(/m7Z1#X2O[@3*">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                              <next>
                                <block type="timeouts_cleartimeout" id="PP}#`P%zVKJ@^O=G9.Pg">
                                  <field name="NAME">timeout</field>
                                  <next>
                                    <block type="timeouts_settimeout" id="aW8]DVZba[Vc$Vf^.{nN">
                                      <field name="NAME">timeout</field>
                                      <field name="DELAY">30</field>
                                      <field name="UNIT">min</field>
                                      <statement name="STATEMENT">
                                        <block type="controls_if" id="jr{X%^Jzg},`$Y3q@`@C">
                                          <value name="IF0">
                                            <block type="logic_compare" id="fsyFmmzVJ^.FLEE=%6mS">
                                              <field name="OP">EQ</field>
                                              <value name="A">
                                                <block type="get_value" id="nA|JE%P:q1miCZA^wk[i">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">linkeddevices.0.Keller.plug4state</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="logic_boolean" id="mx8l@g]G|KZ|xo!42)|l">
                                                  <field name="BOOL">TRUE</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO0">
                                            <block type="control" id="[.1|@|NZ*PXxS4B=Tust">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">linkeddevices.0.Keller.plug4state</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="logic_boolean" id="Hm8X4#5^[40j:=B[8fGJ">
                                                  <field name="BOOL">FALSE</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="control" id="]EJj$ZO_@,Bt[nD:xrwW">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                  <field name="OID">alexa2.0.Echo-Devices.G091AA08050426L5.Commands.speak</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="text" id="#sXGwOrKz@.O_EvTG@[?">
                                                      <field name="TEXT">Trockner wurde nun ausgeschaltet</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="control" id="9.6p6AHB]J=#dC$SRg#b">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                      <field name="OID">alexa2.0.Echo-Devices.90F008187205096V.Commands.speak</field>
                                                      <field name="WITH_DELAY">FALSE</field>
                                                      <value name="VALUE">
                                                        <block type="text" id="swKiI00;_#Nn#`6s(iBy">
                                                          <field name="TEXT">Trockner wurde nun ausgeschaltet</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                      </statement>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </statement>
        </block>
      </xml>
      
      

      4f29040a-6535-4961-901c-411d4633d3e2-image.png

      haselchenH Offline
      haselchenH Offline
      haselchen
      Most Active
      schrieb am zuletzt editiert von
      #2

      @goliat0815

      Hallo und guten Morgen,

      Danke fürs Teilen.
      Aber vielleicht erklärst Du noch den nicht Facebook-Wissenden die einzelnen Datenpunkte und Blockly Bausteine.

      Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

      G 1 Antwort Letzte Antwort
      0
      • haselchenH haselchen

        @goliat0815

        Hallo und guten Morgen,

        Danke fürs Teilen.
        Aber vielleicht erklärst Du noch den nicht Facebook-Wissenden die einzelnen Datenpunkte und Blockly Bausteine.

        G Offline
        G Offline
        goliat0815
        schrieb am zuletzt editiert von
        #3

        @haselchen
        :-) ist eine gute Frage ... musste selbst gerade erstmal überlegen.

        Im Endeffekt überwache ich den Momentanverbrauch der Waschmaschine bzw. des Trockners. Da ich mir vorher den Verlauf eines Waschgangs mal angeschaut habe und der Verbrauch auch während des Waschgangs kurzzeitig mal auf unter 5W sinkt, habe ich eine Verzögerung eingebaut und den eigentlichen "Vorgang" des Meldens und Abschaltens, mit Variablen abstrahiert.
        Wenn also der Verbrauch sich unter 5W ändert, wird erstmal 5 Minuten gewartet, bis die Variable "WM State" auf true gesetzt wird. Falls in den fünf Minuten sich der Wert wieder ändert und erhöht, wird der Timeout wieder gelöscht. Auch wird der Timeout nur gesetzt, wenn dieser nicht bereits läuft, sonst "swingt" der ja ständig. Das wird in der ersten "falls" Abfrage daher berücksichtigt. Auch wird da überprüft, ob der WM State nicht bereits auf "true" gesetzt wurde, dann muss das ja nicht nochmal mittels Timeout passieren. Das muss sich auch deshalb machen, da selbst nach dem Waschgang, wenn die Maschine fertig ist, der Momentanverbrauch von 1-5 W schwankt und sich daher immer wieder Änderungen des Verbrauchs ergeben, die dennoch ein "WM ist fertig" bedeuten und den Verlauf des Scriptes nicht beeinflussen sollen.
        Wenn das Gerät aber mehr als 5 Minuten unter 5W bleibt, dann wird der "WM State" auf true gesetzt und das untere "falls" wird getriggert. Da sollte ja soweit selbsterklärend sein, was da passiert. Es wird aus zwei Alexas gemeldet, dass das Gerät fertig ist und nach weiteren 30 Minuten wird gemeldet, dass das Gerät abgeschaltet wird und dies dann auch so durchgeführt.
        Sollte sich innerhalb der Alexa Meldungen (30 Minuten) etwas am Momentanverbrauch ändern, z.B. weil meine Frau eine neue Waschmaschine ansetzt, werden die Zustände udn Trigger wieder alle gelöscht und es beginnt von vorn.

        da_WoodyD 1 Antwort Letzte Antwort
        1
        • G goliat0815

          @haselchen
          :-) ist eine gute Frage ... musste selbst gerade erstmal überlegen.

          Im Endeffekt überwache ich den Momentanverbrauch der Waschmaschine bzw. des Trockners. Da ich mir vorher den Verlauf eines Waschgangs mal angeschaut habe und der Verbrauch auch während des Waschgangs kurzzeitig mal auf unter 5W sinkt, habe ich eine Verzögerung eingebaut und den eigentlichen "Vorgang" des Meldens und Abschaltens, mit Variablen abstrahiert.
          Wenn also der Verbrauch sich unter 5W ändert, wird erstmal 5 Minuten gewartet, bis die Variable "WM State" auf true gesetzt wird. Falls in den fünf Minuten sich der Wert wieder ändert und erhöht, wird der Timeout wieder gelöscht. Auch wird der Timeout nur gesetzt, wenn dieser nicht bereits läuft, sonst "swingt" der ja ständig. Das wird in der ersten "falls" Abfrage daher berücksichtigt. Auch wird da überprüft, ob der WM State nicht bereits auf "true" gesetzt wurde, dann muss das ja nicht nochmal mittels Timeout passieren. Das muss sich auch deshalb machen, da selbst nach dem Waschgang, wenn die Maschine fertig ist, der Momentanverbrauch von 1-5 W schwankt und sich daher immer wieder Änderungen des Verbrauchs ergeben, die dennoch ein "WM ist fertig" bedeuten und den Verlauf des Scriptes nicht beeinflussen sollen.
          Wenn das Gerät aber mehr als 5 Minuten unter 5W bleibt, dann wird der "WM State" auf true gesetzt und das untere "falls" wird getriggert. Da sollte ja soweit selbsterklärend sein, was da passiert. Es wird aus zwei Alexas gemeldet, dass das Gerät fertig ist und nach weiteren 30 Minuten wird gemeldet, dass das Gerät abgeschaltet wird und dies dann auch so durchgeführt.
          Sollte sich innerhalb der Alexa Meldungen (30 Minuten) etwas am Momentanverbrauch ändern, z.B. weil meine Frau eine neue Waschmaschine ansetzt, werden die Zustände udn Trigger wieder alle gelöscht und es beginnt von vorn.

          da_WoodyD Online
          da_WoodyD Online
          da_Woody
          schrieb am zuletzt editiert von
          #4

          @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

          gruß vom Woody
          HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

          XenonX SlowmanS G 3 Antworten Letzte Antwort
          0
          • da_WoodyD da_Woody

            @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

            XenonX Offline
            XenonX Offline
            Xenon
            Forum Testing Developer
            schrieb am zuletzt editiert von Xenon
            #5

            @da_woody sagte in Trockner / Waschmaschine Blockly:

            @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

            Gibs auf, das Rad muss halt ständig neu erfunden werden 😉
            Dann nutzen die Leute lieber für jedes einzelne Gerät ein einzelnes Script, deren Entscheidung

            Und wenn dann wieder Fragen kommen wie " Wie integriere ich noch das und das" kommt kein Support von den Leuten

            wenn euch mein Beitrag geholfen hat, bewertet ihn bitte unten rechts :)

            da_WoodyD G 2 Antworten Letzte Antwort
            0
            • XenonX Xenon

              @da_woody sagte in Trockner / Waschmaschine Blockly:

              @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

              Gibs auf, das Rad muss halt ständig neu erfunden werden 😉
              Dann nutzen die Leute lieber für jedes einzelne Gerät ein einzelnes Script, deren Entscheidung

              Und wenn dann wieder Fragen kommen wie " Wie integriere ich noch das und das" kommt kein Support von den Leuten

              da_WoodyD Online
              da_WoodyD Online
              da_Woody
              schrieb am zuletzt editiert von
              #6

              @xenon man munkelt, du hast den adapter so gut versteckt, daß ihn keiner findet... :D

              gruß vom Woody
              HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

              A 1 Antwort Letzte Antwort
              0
              • da_WoodyD da_Woody

                @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

                SlowmanS Offline
                SlowmanS Offline
                Slowman
                schrieb am zuletzt editiert von
                #7

                @da_woody sagte in Trockner / Waschmaschine Blockly:

                @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

                Es soll auch Leute geben, bei denen der Adapter nicht richtig funktioniert (liegt wahrscheinlich am Benutzer, wie mich das man zu doof dazu ist). Selbst meine WM iQ800 wird nicht richtig erkannt. Also nimmt man lieber einen Blockly der Funktioniert, als sich ständig über sich selber zu ärgern, dass man den Adapter nicht richtig eingestellt bekommt mit seinen exotischen Geräten, wie Siemens, Bosch und Miele.

                @goliat0815

                Danke für die Teilung deines Blockly, wenn alle so denken, da gibt es ja was von Ratiopharm. Dann bräuchten wir die Rubrik Blockly ja nicht mehr. Es gibt ja schon für fast alles Ersatz.

                XenonX 1 Antwort Letzte Antwort
                1
                • SlowmanS Slowman

                  @da_woody sagte in Trockner / Waschmaschine Blockly:

                  @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

                  Es soll auch Leute geben, bei denen der Adapter nicht richtig funktioniert (liegt wahrscheinlich am Benutzer, wie mich das man zu doof dazu ist). Selbst meine WM iQ800 wird nicht richtig erkannt. Also nimmt man lieber einen Blockly der Funktioniert, als sich ständig über sich selber zu ärgern, dass man den Adapter nicht richtig eingestellt bekommt mit seinen exotischen Geräten, wie Siemens, Bosch und Miele.

                  @goliat0815

                  Danke für die Teilung deines Blockly, wenn alle so denken, da gibt es ja was von Ratiopharm. Dann bräuchten wir die Rubrik Blockly ja nicht mehr. Es gibt ja schon für fast alles Ersatz.

                  XenonX Offline
                  XenonX Offline
                  Xenon
                  Forum Testing Developer
                  schrieb am zuletzt editiert von
                  #8

                  @slowman ich hab dir mehrfach hilfe angeboten, auch das ich dir auf den discord per Bildschirmteilen helfen würde. Ich habe selber Bosch Geräte 😉

                  Jeder kann tun und lassen was er will. Natürlich kann man eigene scripte nutzen, kein Problem. Aber wenn man Vorlagen einstellt erwarte ich auch Support bei User Fragen

                  wenn euch mein Beitrag geholfen hat, bewertet ihn bitte unten rechts :)

                  SlowmanS 1 Antwort Letzte Antwort
                  0
                  • XenonX Xenon

                    @slowman ich hab dir mehrfach hilfe angeboten, auch das ich dir auf den discord per Bildschirmteilen helfen würde. Ich habe selber Bosch Geräte 😉

                    Jeder kann tun und lassen was er will. Natürlich kann man eigene scripte nutzen, kein Problem. Aber wenn man Vorlagen einstellt erwarte ich auch Support bei User Fragen

                    SlowmanS Offline
                    SlowmanS Offline
                    Slowman
                    schrieb am zuletzt editiert von
                    #9

                    @xenon

                    Höre ich jetzt das 1. Mal mit dieser Hilfe. Aber egal, ich bin so wie ich es mit meinen exotischen dt. Geräten umgesetzt habe, erst mal zufrieden. Da sind andere Baustellen, die zuerst erledigt werden müssen.
                    Und was ich in deinen Adapter Thema schon geschrieben habe, es ist ein genialer Adapter und bei denen er funktioniert eine schnelle Umsetzung seiner Wünsche und gehört zu den Top5 Scripte hier im Forum.

                    da_WoodyD 1 Antwort Letzte Antwort
                    0
                    • SlowmanS Slowman

                      @xenon

                      Höre ich jetzt das 1. Mal mit dieser Hilfe. Aber egal, ich bin so wie ich es mit meinen exotischen dt. Geräten umgesetzt habe, erst mal zufrieden. Da sind andere Baustellen, die zuerst erledigt werden müssen.
                      Und was ich in deinen Adapter Thema schon geschrieben habe, es ist ein genialer Adapter und bei denen er funktioniert eine schnelle Umsetzung seiner Wünsche und gehört zu den Top5 Scripte hier im Forum.

                      da_WoodyD Online
                      da_WoodyD Online
                      da_Woody
                      schrieb am zuletzt editiert von
                      #10

                      @slowman keine ahnung welche probleme sich da auftun bei dir. einfach waschmaschine und trockner den verbrauchDP angegeben, ein paar alexas eingetragen, den text für anfang und ende, fertig. zu testzwecken am anfang noch push zusätzlich verwendet...

                      gruß vom Woody
                      HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                      1 Antwort Letzte Antwort
                      0
                      • da_WoodyD da_Woody

                        @xenon man munkelt, du hast den adapter so gut versteckt, daß ihn keiner findet... :D

                        A Offline
                        A Offline
                        Ash2k
                        schrieb am zuletzt editiert von
                        #11

                        @da_woody sagte in Trockner / Waschmaschine Blockly:

                        @xenon man munkelt, du hast den adapter so gut versteckt, daß ihn keiner findet... :D

                        @da_woody

                        Hmm ich höre bzw lese auch gerade das erste Mal von dem Adapter obwohl ich denke das ich schon recht oft hier mitlese aber der Beitrag ist bei mir bislang nie in den Ungelesenen aufgefallen oder ich habe den anhand der Überschrift nicht mit der Funktion in Verbindung gebracht ;)

                        Werd ich mir jedenfalls mal anschauen, auch wenn ich mit meinen Scripten soweit zufrieden bin, bisschen über den eigenen Tellerrand hinausschauen kann ja nie schaden :D

                        SlowmanS 1 Antwort Letzte Antwort
                        1
                        • A Ash2k

                          @da_woody sagte in Trockner / Waschmaschine Blockly:

                          @xenon man munkelt, du hast den adapter so gut versteckt, daß ihn keiner findet... :D

                          @da_woody

                          Hmm ich höre bzw lese auch gerade das erste Mal von dem Adapter obwohl ich denke das ich schon recht oft hier mitlese aber der Beitrag ist bei mir bislang nie in den Ungelesenen aufgefallen oder ich habe den anhand der Überschrift nicht mit der Funktion in Verbindung gebracht ;)

                          Werd ich mir jedenfalls mal anschauen, auch wenn ich mit meinen Scripten soweit zufrieden bin, bisschen über den eigenen Tellerrand hinausschauen kann ja nie schaden :D

                          SlowmanS Offline
                          SlowmanS Offline
                          Slowman
                          schrieb am zuletzt editiert von
                          #12

                          @da_Woody

                          Ja, das habe ich gemacht. Der Script ist ja auch sehr verständlich und selbsterklärend aufgebaut. Aber ich muss zu doof sein diesen Script ordentlich einzurichten. Die gefundenen Blocklys und mithilfe der Member hier an meine Bedürfnisse angepasst laufen diese zuverlässig.

                          @Team

                          Vielleicht sollte man im Wiki für Einsteiger (1. Schritte) solche Scripte wie SmartControl, ShutterControl oder auch Device-Reminder erwähnen. Dies macht dein Einstieg in ioBroker einfacher und man hat schnell Erfolge --> Anfänger wollen am Anfang Lampe mit BWM schalten oder ihre Haushaltsgeräe Smart machen. Vielleicht wäre dies mal eine Überlegung.

                          1 Antwort Letzte Antwort
                          0
                          • XenonX Xenon

                            @da_woody sagte in Trockner / Waschmaschine Blockly:

                            @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

                            Gibs auf, das Rad muss halt ständig neu erfunden werden 😉
                            Dann nutzen die Leute lieber für jedes einzelne Gerät ein einzelnes Script, deren Entscheidung

                            Und wenn dann wieder Fragen kommen wie " Wie integriere ich noch das und das" kommt kein Support von den Leuten

                            G Offline
                            G Offline
                            goliat0815
                            schrieb am zuletzt editiert von goliat0815
                            #13

                            @xenon
                            ... kann und soll doch jeder machen wir er will. Ich wurde auf FB gefragt, ob ich das Blockly zur Verfügung stellen kann und dafür bietet sich dieses Forum ja nun mal an ... oder nicht. Wenn Blocklys nicht erwünscht sind, warum gibt es denn das Forum hier?
                            Den genannten Adapter kannte ich noch nicht und ich schaue mir den gern mal an. Wenn es einfacher geht, dann nutze ich das schon und sehr gern.
                            Auf der anderen Seite habe ich auch Spaß am Blockly, liegt vielleicht daran, das sich aus der IT komme und viele Powershell Scripte schreibe und daran auch Spaß habe. Außerdem kommt man durch solche Blocklys auch damit generell in Berührung und lernt, wie diese funktionieren. ... nur Übung macht den Meister.

                            Ich kann daher deinen Post nicht nachvollziehen, zumindest nicht die Art des Posts.

                            XenonX 1 Antwort Letzte Antwort
                            1
                            • da_WoodyD da_Woody

                              @goliat0815 hut ab vor deinen blockly künsten, aber für das hat @Xenon den Device Reminder in adapterform ins leben gerufen... :)

                              G Offline
                              G Offline
                              goliat0815
                              schrieb am zuletzt editiert von
                              #14

                              @da_woody
                              Danke, den kannte ich noch nicht und ich suche ja nicht ständig die ganzen Adapter durch :-)
                              Ich schaue mir den Adapter nun aber gern mal an. Wenn das einfacher zu lösen geht, dann muss ich auch kein Blockly laufen haben.

                              1 Antwort Letzte Antwort
                              0
                              • G goliat0815

                                @xenon
                                ... kann und soll doch jeder machen wir er will. Ich wurde auf FB gefragt, ob ich das Blockly zur Verfügung stellen kann und dafür bietet sich dieses Forum ja nun mal an ... oder nicht. Wenn Blocklys nicht erwünscht sind, warum gibt es denn das Forum hier?
                                Den genannten Adapter kannte ich noch nicht und ich schaue mir den gern mal an. Wenn es einfacher geht, dann nutze ich das schon und sehr gern.
                                Auf der anderen Seite habe ich auch Spaß am Blockly, liegt vielleicht daran, das sich aus der IT komme und viele Powershell Scripte schreibe und daran auch Spaß habe. Außerdem kommt man durch solche Blocklys auch damit generell in Berührung und lernt, wie diese funktionieren. ... nur Übung macht den Meister.

                                Ich kann daher deinen Post nicht nachvollziehen, zumindest nicht die Art des Posts.

                                XenonX Offline
                                XenonX Offline
                                Xenon
                                Forum Testing Developer
                                schrieb am zuletzt editiert von
                                #15

                                @goliat0815 dann hast du es nur falsch verstanden. Mir es darum, dass man auch Support für User fragen bietet, wenn man etwas als Vorlage einstellt. Das machen die meisten Leute aber nicht

                                Mehr hatte ich doch auch nicht geschrieben

                                wenn euch mein Beitrag geholfen hat, bewertet ihn bitte unten rechts :)

                                G 1 Antwort Letzte Antwort
                                0
                                • XenonX Xenon

                                  @goliat0815 dann hast du es nur falsch verstanden. Mir es darum, dass man auch Support für User fragen bietet, wenn man etwas als Vorlage einstellt. Das machen die meisten Leute aber nicht

                                  Mehr hatte ich doch auch nicht geschrieben

                                  G Offline
                                  G Offline
                                  goliat0815
                                  schrieb am zuletzt editiert von
                                  #16

                                  @xenon OK, dann hatte ich das tatsächlich falsch verstanden.

                                  1 Antwort Letzte Antwort
                                  0
                                  Antworten
                                  • In einem neuen Thema antworten
                                  Anmelden zum Antworten
                                  • Älteste zuerst
                                  • Neuste zuerst
                                  • Meiste Stimmen


                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  748

                                  Online

                                  32.5k

                                  Benutzer

                                  81.7k

                                  Themen

                                  1.3m

                                  Beiträge
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                  ioBroker Community 2014-2025
                                  logo
                                  • Anmelden

                                  • Du hast noch kein Konto? Registrieren

                                  • Anmelden oder registrieren, um zu suchen
                                  • Erster Beitrag
                                    Letzter Beitrag
                                  0
                                  • Home
                                  • Aktuell
                                  • Tags
                                  • Ungelesen 0
                                  • Kategorien
                                  • Unreplied
                                  • Beliebt
                                  • GitHub
                                  • Docu
                                  • Hilfe