Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [Frage] Xiaomi Vacuum cleaner

NEWS

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    5
    1
    75

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    840

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.4k

[Frage] Xiaomi Vacuum cleaner

Scheduled Pinned Locked Moved ioBroker Allgemein
2.2k Posts 204 Posters 1.0m Views 39 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D der-eine

    @seppel786 klar 👍

    <xml xmlns="http://www.w3.org/1999/xhtml">
     <variables>
       <variable type="" id="H5jM!d-6fer30oMoMTOL">Wohnzimmer</variable>
       <variable type="" id="-M/PPIWr7NY[r%Jw1vXb">Arbeitszimmer</variable>
       <variable type="" id=":%U|iH-0aK@J*xqmm2$s">Kueche</variable>
       <variable type="" id="qlPh|Kcns,Le0OjrSr~Q">Kuechenblock</variable>
       <variable type="" id="TWx.F5)_#a0_W/gb6CbH">Kinderzimmer</variable>
       <variable type="" id="%D}S:Ibzy1[a1-6)Yk}K">Schlafzimmer</variable>
       <variable type="" id="![*U^yoiQy}#OpB-KNZZ">Badezimmer1</variable>
       <variable type="" id="W5^D4IEYa#}p]qmSx3tw">Badezimmer2</variable>
       <variable type="" id="pS)E,EGzvESC,L}rBk/X">Eingang</variable>
       <variable type="" id="?338$LOCRmXqk%RE}N95">Zone</variable>
       <variable type="undefined" id="timeout4">timeout4</variable>
       <variable type="undefined" id="timeout">timeout</variable>
       <variable type="undefined" id="timeout2">timeout2</variable>
       <variable type="undefined" id="timeout3">timeout3</variable>
     </variables>
     <block type="variables_set" id="%oE/KUz@)En!^j{~$d-9" x="-1038" y="-1362">
       <field name="VAR" id="H5jM!d-6fer30oMoMTOL" variabletype="">Wohnzimmer</field>
       <value name="VALUE">
         <block type="text" id="Eg-alu,H4WSal,1P[?qe">
           <field name="TEXT">[18190,27121,21540,32571,1],</field>
         </block>
       </value>
       <next>
         <block type="variables_set" id="gQ$iEL?YpEgmPAT$2^Uw">
           <field name="VAR" id="-M/PPIWr7NY[r%Jw1vXb" variabletype="">Arbeitszimmer</field>
           <value name="VALUE">
             <block type="text" id="oI2l*9_~qVjEOhn@i=Se">
               <field name="TEXT">[19549,24651,21999,26801,1],</field>
             </block>
           </value>
           <next>
             <block type="variables_set" id="kKkRwrSMU.Z~iSW8^@%">
               <field name="VAR" id=":%U|iH-0aK@J*xqmm2$s" variabletype="">Kueche</field>
               <value name="VALUE">
                 <block type="text" id="tHGu}ud|Eg2pTbQfId[;">
                   <field name="TEXT">[21973,25137,25673,28787,1],</field>
                 </block>
               </value>
               <next>
                 <block type="variables_set" id="Kbh`mAowWKN8Q+,w=+Ws">
                   <field name="VAR" id="qlPh|Kcns,Le0OjrSr~Q" variabletype="">Kuechenblock</field>
                   <value name="VALUE">
                     <block type="text" id="@~f97r;QUO-?:G^OvMUs">
                       <field name="TEXT">[22395,25132,25545,26382,1],</field>
                     </block>
                   </value>
                   <next>
                     <block type="variables_set" id="y,ZY}6:X2v=aKFrS@d/3">
                       <field name="VAR" id="TWx.F5)_#a0_W/gb6CbH" variabletype="">Kinderzimmer</field>
                       <value name="VALUE">
                         <block type="text" id="RAjw@mt+(M}NB9%q[2M#">
                           <field name="TEXT">[26124,26337,30324,27787,1],</field>
                         </block>
                       </value>
                       <next>
                         <block type="variables_set" id="F33[^H/7@s[mB!qvTc6">
                           <field name="VAR" id="%D}S:Ibzy1[a1-6)Yk}K" variabletype="">Schlafzimmer</field>
                           <value name="VALUE">
                             <block type="text" id="5X#Jsw{5.KC;X@cxTBXB">
                               <field name="TEXT">[26433,29138,29983,30638,1],</field>
                             </block>
                           </value>
                           <next>
                             <block type="variables_set" id="RImUWh7f5JSa?aZjNtAr">
                               <field name="VAR" id="![*U^yoiQy}#OpB-KNZZ" variabletype="">Badezimmer1</field>
                               <value name="VALUE">
                                 <block type="text" id="z=Ek=|Z+De!+k?r^j9!">
                                   <field name="TEXT">[23887,31211,25037,32411,1],</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="variables_set" id="7qBj+3{HkC,O5~:5%{y!">
                                   <field name="VAR" id="W5^D4IEYa#}p]qmSx3tw" variabletype="">Badezimmer2</field>
                                   <value name="VALUE">
                                     <block type="text" id="tWwo;1^rj?{#6RhMN:3N">
                                       <field name="TEXT">[22872,29403,25222,31153,1],</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="variables_set" id="ZP1(0{)xe77z-e/:5+oA">
                                       <field name="VAR" id="pS)E,EGzvESC,L}rBk/X" variabletype="">Eingang</field>
                                       <value name="VALUE">
                                         <block type="text" id="G2jNrNEQ~^71RKWaEMkw">
                                           <field name="TEXT">[25295,26623,26545,33023,1],</field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="on_ext" id="9%cGN%K[S:G}-wS$A|Bu">
                                           <mutation items="3"></mutation>
                                           <field name="CONDITION">ne</field>
                                           <field name="ACK_CONDITION"></field>
                                           <value name="OID0">
                                             <shadow type="field_oid" id="W%LzaIj?%a$/0/Dhe*$1">
                                               <field name="oid">Eigene_Datenpunkte.0.Staubsauger.Start.Wohnung</field>
                                             </shadow>
                                           </value>
                                           <value name="OID1">
                                             <shadow type="field_oid" id="l:SF_dE*=N4XW]ArE*sD">
                                               <field name="oid">Eigene_Datenpunkte.0.Staubsauger.Start.Zonenreinigung</field>
                                             </shadow>
                                           </value>
                                           <value name="OID2">
                                             <shadow type="field_oid" id=",T6#Bq}B]^R)8WFz:Yv,">
                                               <field name="oid">mihome-vacuum.0.info.state</field>
                                             </shadow>
                                           </value>
                                           <statement name="STATEMENT">
                                             <block type="comment" id="5kjL#rX*Rl[8}t#.${!/">
                                               <field name="COMMENT">Ganze Wohnung</field>
                                               <next>
                                                 <block type="controls_if" id="jb:KM_s)2j8xp?Z%^TRP">
                                                   <value name="IF0">
                                                     <block type="logic_compare" id="p6A^J)j13Wt9GwjxUOjM">
                                                       <field name="OP">EQ</field>
                                                       <value name="A">
                                                         <block type="get_value" id=")1gV4BAawM[{:Oj]a8?L">
                                                           <field name="ATTR">val</field>
                                                           <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Start.Wohnung</field>
                                                         </block>
                                                       </value>
                                                       <value name="B">
                                                         <block type="logic_boolean" id="hpYz!0H`tW*Lrg;tS,[T">
                                                           <field name="BOOL">TRUE</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <statement name="DO0">
                                                     <block type="variables_set" id="Ym|AFVzY#e3R-}f`R}4;">
                                                       <field name="VAR" id="?338$LOCRmXqk%RE}N95" variabletype="">Zone</field>
                                                       <value name="VALUE">
                                                         <block type="text_join" id="kQZt^uCb=9XRDFy|L.fy">
                                                           <mutation items="5"></mutation>
                                                           <value name="ADD0">
                                                             <block type="variables_get" id=".8^[-Dsd#=qP]4c3uIK@">
                                                               <field name="VAR" id="H5jM!d-6fer30oMoMTOL" variabletype="">Wohnzimmer</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD1">
                                                             <block type="variables_get" id="US8G{za9xEH5nZg8X]PO">
                                                               <field name="VAR" id="-M/PPIWr7NY[r%Jw1vXb" variabletype="">Arbeitszimmer</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD2">
                                                             <block type="variables_get" id="L0rr%p~Ol]~=TXM;E|]l">
                                                               <field name="VAR" id=":%U|iH-0aK@J*xqmm2$s" variabletype="">Kueche</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD3">
                                                             <block type="variables_get" id=";EBlY#-lyW,BPV^%SZ)S">
                                                               <field name="VAR" id="TWx.F5)_#a0_W/gb6CbH" variabletype="">Kinderzimmer</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD4">
                                                             <block type="variables_get" id="YkPmb)#c+xo^S5Tt*YQ$">
                                                               <field name="VAR" id="%D}S:Ibzy1[a1-6)Yk}K" variabletype="">Schlafzimmer</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <next>
                                                         <block type="timeouts_cleartimeout" id="zh@}ABz[+;/}gvI/Kw`b">
                                                           <field name="NAME">timeout4</field>
                                                           <next>
                                                             <block type="timeouts_settimeout" id="#tsJk0`/]~#g#-3yq:rs">
                                                               <field name="NAME">timeout4</field>
                                                               <field name="DELAY">60</field>
                                                               <field name="UNIT">min</field>
                                                               <statement name="STATEMENT">
                                                                 <block type="controls_if" id="CSBz`9fg*lsZcF_GXg7+">
                                                                   <value name="IF0">
                                                                     <block type="logic_compare" id="fEG7Z^p!wP8K7tj7/sr8">
                                                                       <field name="OP">NEQ</field>
                                                                       <value name="A">
                                                                         <block type="get_value" id="lGSHj@5Q*}e=`En.t.lj">
                                                                           <field name="ATTR">val</field>
                                                                           <field name="OID">mihome-vacuum.0.info.state</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="B">
                                                                         <block type="math_number" id="PW]6-]JoIOVB,DLj8#bx">
                                                                           <field name="NUM">8</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <statement name="DO0">
                                                                     <block type="control" id="~nB:rxVzUvX8QpmlO]5t">
                                                                       <mutation delay_input="false"></mutation>
                                                                       <field name="OID">mihome-vacuum.0.control.pause</field>
                                                                       <field name="WITH_DELAY">FALSE</field>
                                                                       <value name="VALUE">
                                                                         <block type="logic_boolean" id="G(7d!Xng8#aMV]OHanzb">
                                                                           <field name="BOOL">TRUE</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </statement>
                                                                 </block>
                                                               </statement>
                                                               <next>
                                                                 <block type="control" id="-ZB_LlS~QC-q{c^:}e$H">
                                                                   <mutation delay_input="true"></mutation>
                                                                   <field name="OID">mihome-vacuum.0.control.zoneClean</field>
                                                                   <field name="WITH_DELAY">TRUE</field>
                                                                   <field name="DELAY_MS">2000</field>
                                                                   <field name="UNIT">ms</field>
                                                                   <field name="CLEAR_RUNNING">FALSE</field>
                                                                   <value name="VALUE">
                                                                     <block type="text_getSubstring" id="SoSk(7CqUhz`ZyLGzQqq">
                                                                       <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="3n4R/lu:muWx+8H!/CBL">
                                                                           <field name="VAR" id="?338$LOCRmXqk%RE}N95" variabletype="">Zone</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="AT2">
                                                                         <block type="math_number" id="cW%h]Kj1]K5|wsAeyxUJ">
                                                                           <field name="NUM">2</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </next>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </statement>
                                                   <next>
                                                     <block type="controls_if" id="_![^=ag,PI?f4M`f4]%L">
                                                       <value name="IF0">
                                                         <block type="logic_operation" id=")Mse50nCFm}LN+ACgs(D">
                                                           <field name="OP">AND</field>
                                                           <value name="A">
                                                             <block type="logic_compare" id="IB?J{(4i[MyXizL3?1-V">
                                                               <field name="OP">EQ</field>
                                                               <value name="A">
                                                                 <block type="get_value" id="y5#Y:xO.720)ZouQJ__0">
                                                                   <field name="ATTR">val</field>
                                                                   <field name="OID">mihome-vacuum.0.info.state</field>
                                                                 </block>
                                                               </value>
                                                               <value name="B">
                                                                 <block type="math_number" id="B}X[*vc9qqa:|~nk8[k)">
                                                                   <field name="NUM">6</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <value name="B">
                                                             <block type="logic_compare" id="|Aqyn-?`=Qc)t+mRa,4{">
                                                               <field name="OP">EQ</field>
                                                               <value name="A">
                                                                 <block type="get_value" id="o/C;twO{!UnuU?1Z1Euj">
                                                                   <field name="ATTR">val</field>
                                                                   <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Start.Wohnung</field>
                                                                 </block>
                                                               </value>
                                                               <value name="B">
                                                                 <block type="logic_boolean" id="#t*pyH.@+xDow#IveEUa">
                                                                   <field name="BOOL">TRUE</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <statement name="DO0">
                                                         <block type="control" id="N%]!(6:oYcTcGN;fx3]!">
                                                           <mutation delay_input="false"></mutation>
                                                           <field name="OID">mihome-vacuum.0.control.pause</field>
                                                           <field name="WITH_DELAY">FALSE</field>
                                                           <value name="VALUE">
                                                             <block type="logic_boolean" id="VNVr.jFS#Z|R@!FtAzEA">
                                                               <field name="BOOL">TRUE</field>
                                                             </block>
                                                           </value>
                                                           <next>
                                                             <block type="variables_set" id="oo%SmC!8sb7OaZZ[,GbZ">
                                                               <field name="VAR" id="?338$LOCRmXqk%RE}N95" variabletype="">Zone</field>
                                                               <value name="VALUE">
                                                                 <block type="text_join" id="A.fG#U%z@Q}i|p%a=6;U">
                                                                   <mutation items="3"></mutation>
                                                                   <value name="ADD0">
                                                                     <block type="variables_get" id="sBA9mE0d:a+0k(`SM-).">
                                                                       <field name="VAR" id="![*U^yoiQy}#OpB-KNZZ" variabletype="">Badezimmer1</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="ADD1">
                                                                     <block type="variables_get" id="b%WHc33pnf+e=w|dnPY?">
                                                                       <field name="VAR" id="W5^D4IEYa#}p]qmSx3tw" variabletype="">Badezimmer2</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="ADD2">
                                                                     <block type="variables_get" id="S|{E4[92t3T(p(Tba(lQ">
                                                                       <field name="VAR" id="pS)E,EGzvESC,L}rBk/X" variabletype="">Eingang</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <next>
                                                                 <block type="control" id="X5=x+qn*E$l2f6b55unk">
                                                                   <mutation delay_input="true"></mutation>
                                                                   <field name="OID">mihome-vacuum.0.control.zoneClean</field>
                                                                   <field name="WITH_DELAY">TRUE</field>
                                                                   <field name="DELAY_MS">2000</field>
                                                                   <field name="UNIT">ms</field>
                                                                   <field name="CLEAR_RUNNING">FALSE</field>
                                                                   <value name="VALUE">
                                                                     <block type="text_getSubstring" id="VT%v(ZET.r5+Rt`f69%3">
                                                                       <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="#^Ve?i?l1KOM!k#ay@`o">
                                                                           <field name="VAR" id="?338$LOCRmXqk%RE}N95" variabletype="">Zone</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="AT2">
                                                                         <block type="math_number" id="OG(yUHq4kg_FW4Rhxla%">
                                                                           <field name="NUM">2</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <next>
                                                                     <block type="timeouts_settimeout" id="96x:qn{s)q!Q@*BY#Cbd">
                                                                       <field name="NAME">timeout2</field>
                                                                       <field name="DELAY">2000</field>
                                                                       <field name="UNIT">ms</field>
                                                                       <statement name="STATEMENT">
                                                                         <block type="control" id="!F:nw$HUz,5W,s)7wpe?">
                                                                           <mutation delay_input="false"></mutation>
                                                                           <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Start.Wohnung</field>
                                                                           <field name="WITH_DELAY">FALSE</field>
                                                                           <value name="VALUE">
                                                                             <block type="logic_boolean" id="?stB%E^p^TktGM(2/iT5">
                                                                               <field name="BOOL">FALSE</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </statement>
                                                                     </block>
                                                                   </next>
                                                                 </block>
                                                               </next>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </statement>
                                                       <next>
                                                         <block type="comment" id="GIls=|^jng,VyA|G`v5@">
                                                           <field name="COMMENT">Zonenreinigung</field>
                                                           <next>
                                                             <block type="controls_if" id="v,w,lxZA{`U5jH%sZ9_+">
                                                               <value name="IF0">
                                                                 <block type="logic_compare" id="6!u-k;8g{}iZ@]7a:q},">
                                                                   <field name="OP">EQ</field>
                                                                   <value name="A">
                                                                     <block type="get_value" id="fXTWVtjZ~Mu.=MBRia!V">
                                                                       <field name="ATTR">val</field>
                                                                       <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Start.Zonenreinigung</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="B">
                                                                     <block type="logic_boolean" id="BnMgWHPrSq]gels9RJCi">
                                                                       <field name="BOOL">TRUE</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <statement name="DO0">
                                                                 <block type="variables_set" id="e/X`JuuUzE-2Q2WGR@3%">
                                                                   <field name="VAR" id="?338$LOCRmXqk%RE}N95" variabletype="">Zone</field>
                                                                   <value name="VALUE">
                                                                     <block type="text_join" id="v)Ty`_}=vh}T)lohOva8">
                                                                       <mutation items="9"></mutation>
                                                                       <value name="ADD0">
                                                                         <block type="logic_ternary" id="y33mza~;IB5bwI+BdTx0">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="i/xE_.D~T[.VN|R7h2*9">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Wohnzimmer</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="*_@O}iU(+E%5DLs!FhAh">
                                                                               <field name="VAR" id="H5jM!d-6fer30oMoMTOL" variabletype="">Wohnzimmer</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD1">
                                                                         <block type="logic_ternary" id="^lQ617?`OzvT~,R3I3A-">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="]40PB|y@ymL)yDb%~wK4">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Arbeitszimmer</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="M8yASo)b*]Ni!m*m:t|(">
                                                                               <field name="VAR" id="-M/PPIWr7NY[r%Jw1vXb" variabletype="">Arbeitszimmer</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD2">
                                                                         <block type="logic_ternary" id="c~jGl7ubHD*hHe7eB:cE">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="Tc(%d+khX_!ggfH]=ZHY">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Kueche</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="_+~P}9ZEK6EHUO9m`//6">
                                                                               <field name="VAR" id=":%U|iH-0aK@J*xqmm2$s" variabletype="">Kueche</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD3">
                                                                         <block type="logic_ternary" id="8!H8{A]F9/7{C:a5p@+d">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="fWW.d.#7^CWllQ(Wj)qo">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Kuechenblock</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="ExT1my.vc6/i[f!or8nc">
                                                                               <field name="VAR" id="qlPh|Kcns,Le0OjrSr~Q" variabletype="">Kuechenblock</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD4">
                                                                         <block type="logic_ternary" id="::uCup#-8NBu=T8?NS[a">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="4zavc5=]*D)hyugS6%Mv">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Kinderzimmer</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="Mn1JBI8WIpTj+?E{qy;N">
                                                                               <field name="VAR" id="TWx.F5)_#a0_W/gb6CbH" variabletype="">Kinderzimmer</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD5">
                                                                         <block type="logic_ternary" id="!+nVJSywWsdz(M.xXPK!">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="9a_^QM$y]nmI%rtC,m=5">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Schlafzimmer</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="PC*FG7mqGLSw)n2Ht@_}">
                                                                               <field name="VAR" id="%D}S:Ibzy1[a1-6)Yk}K" variabletype="">Schlafzimmer</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD6">
                                                                         <block type="logic_ternary" id="PBGf*kP_JHi7SiKSEn;Q">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="4Nu}@=#]R#svmapS]Chi">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Badezimmer1</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="NeLB6-52iOmm@{eO,h2n">
                                                                               <field name="VAR" id="![*U^yoiQy}#OpB-KNZZ" variabletype="">Badezimmer1</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD7">
                                                                         <block type="logic_ternary" id="Irqm{s-P:3nzxa0wC+!(">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="?*1pGQy-YhGI(k8~oqHo">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Badezimmer2</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="BE]6ZGB705-gz3Oh)br4">
                                                                               <field name="VAR" id="W5^D4IEYa#}p]qmSx3tw" variabletype="">Badezimmer2</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD8">
                                                                         <block type="logic_ternary" id="]_|$2G.(sXz]K=Q4?-W%">
                                                                           <value name="IF">
                                                                             <block type="get_value" id="hIU0QPCNqz)Rc5CJOTq~">
                                                                               <field name="ATTR">val</field>
                                                                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Eingang</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="THEN">
                                                                             <block type="variables_get" id="72qhPGm2_V$ug~O::8`s">
                                                                               <field name="VAR" id="pS)E,EGzvESC,L}rBk/X" variabletype="">Eingang</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <next>
                                                                     <block type="control" id="-TH|!h,pr~qYQRQ1z^+B">
                                                                       <mutation delay_input="true"></mutation>
                                                                       <field name="OID">mihome-vacuum.0.control.zoneClean</field>
                                                                       <field name="WITH_DELAY">TRUE</field>
                                                                       <field name="DELAY_MS">2000</field>
                                                                       <field name="UNIT">ms</field>
                                                                       <field name="CLEAR_RUNNING">FALSE</field>
                                                                       <value name="VALUE">
                                                                         <block type="text_getSubstring" id="4?4~VI.8}ICa=S+3_/cp">
                                                                           <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="+J6J)VMD)*SLgSS|mA[L">
                                                                               <field name="VAR" id="?338$LOCRmXqk%RE}N95" variabletype="">Zone</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="AT2">
                                                                             <block type="math_number" id="lMW#3.1_0w^EeJ:nH-,}">
                                                                               <field name="NUM">2</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <next>
                                                                         <block type="timeouts_settimeout" id="g3ANAKnHZhK%{lywco;G">
                                                                           <field name="NAME">timeout3</field>
                                                                           <field name="DELAY">2000</field>
                                                                           <field name="UNIT">ms</field>
                                                                           <statement name="STATEMENT">
                                                                             <block type="procedures_callnoreturn" id="bl|_D]BU;m;![b|CE=tD">
                                                                               <mutation name="State_reset"></mutation>
                                                                               <next>
                                                                                 <block type="control" id="5Ffm~QQzNj[*LR~3vW/C">
                                                                                   <mutation delay_input="false"></mutation>
                                                                                   <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Start.Zonenreinigung</field>
                                                                                   <field name="WITH_DELAY">FALSE</field>
                                                                                   <value name="VALUE">
                                                                                     <block type="logic_boolean" id="oBUibo;ny}etEM(qw4f,">
                                                                                       <field name="BOOL">FALSE</field>
                                                                                     </block>
                                                                                   </value>
                                                                                 </block>
                                                                               </next>
                                                                             </block>
                                                                           </statement>
                                                                         </block>
                                                                       </next>
                                                                     </block>
                                                                   </next>
                                                                 </block>
                                                               </statement>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                           <next>
                                             <block type="comment" id="4SL7A$BJWd8aSJIV4NC_">
                                               <field name="COMMENT">Mülleimer</field>
                                               <next>
                                                 <block type="on_ext" id="k/RM8fOgR]I|]*u+2[zC">
                                                   <mutation items="1"></mutation>
                                                   <field name="CONDITION">ne</field>
                                                   <field name="ACK_CONDITION"></field>
                                                   <value name="OID0">
                                                     <shadow type="field_oid" id="XUr@Yx.}}pK`gCj5PAn*">
                                                       <field name="oid">default</field>
                                                     </shadow>
                                                     <block type="field_oid" id="_ytw!lj%eq}{yz}=6lYS">
                                                       <field name="oid">mihome-vacuum.0.info.state</field>
                                                     </block>
                                                   </value>
                                                   <statement name="STATEMENT">
                                                     <block type="controls_if" id="GV=@:(rB=!y~MV:**O2l">
                                                       <value name="IF0">
                                                         <block type="logic_operation" id="FUH]1anMDJ,/Y-M@AE8G" inline="false">
                                                           <field name="OP">AND</field>
                                                           <value name="A">
                                                             <block type="logic_compare" id="enK-TSGXHSaF9ZcuSnBK">
                                                               <field name="OP">EQ</field>
                                                               <value name="A">
                                                                 <block type="on_source" id="1EA|hPYjL~GgA~@9|a,+">
                                                                   <field name="ATTR">state.val</field>
                                                                 </block>
                                                               </value>
                                                               <value name="B">
                                                                 <block type="math_number" id="9q[rY?t!I0+pMR=){A;]">
                                                                   <field name="NUM">6</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <value name="B">
                                                             <block type="logic_operation" id="47Xd]5yDkd{9X$x^wZuQ" inline="false">
                                                               <field name="OP">AND</field>
                                                               <value name="A">
                                                                 <block type="logic_compare" id="??/L@.%:q0VmNU?r^25h">
                                                                   <field name="OP">EQ</field>
                                                                   <value name="A">
                                                                     <block type="get_value" id="r!0tYv3LA]OJ^d[[tV7b">
                                                                       <field name="ATTR">val</field>
                                                                       <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Start.Wohnung</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="B">
                                                                     <block type="logic_boolean" id="WYmV2|@--*C=YimRx]$-">
                                                                       <field name="BOOL">FALSE</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <value name="B">
                                                                 <block type="logic_compare" id="pxxy7cXZ*yD+YRjDv8_4">
                                                                   <field name="OP">GTE</field>
                                                                   <value name="A">
                                                                     <block type="get_value" id=":;tIfb,z6,%TYs!F7g)W">
                                                                       <field name="ATTR">val</field>
                                                                       <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Info.Staubbehaelter</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="B">
                                                                     <block type="math_number" id="iycLg1#2$5dof4VrE9Z_">
                                                                       <field name="NUM">90</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <statement name="DO0">
                                                         <block type="control" id="ytm=n77c~p?jRQwZ1G9f">
                                                           <mutation delay_input="false"></mutation>
                                                           <field name="OID">mihome-vacuum.0.control.pause</field>
                                                           <field name="WITH_DELAY">FALSE</field>
                                                           <value name="VALUE">
                                                             <block type="logic_boolean" id="zVlQ?7+A@Ws5L%4DWqFW">
                                                               <field name="BOOL">TRUE</field>
                                                             </block>
                                                           </value>
                                                           <next>
                                                             <block type="control" id="h/aiY0=nVAS@MZZ]9JvT">
                                                               <mutation delay_input="false"></mutation>
                                                               <field name="OID">mihome-vacuum.0.control.goTo</field>
                                                               <field name="WITH_DELAY">FALSE</field>
                                                               <value name="VALUE">
                                                                 <block type="text" id="^=$;?Ee4zo[e%E-jT[=S">
                                                                   <field name="TEXT">24900,25500</field>
                                                                 </block>
                                                               </value>
                                                               <next>
                                                                 <block type="timeouts_settimeout" id="~Z[.EjoHlP@Cuzckh[:E">
                                                                   <field name="NAME">timeout</field>
                                                                   <field name="DELAY">2000</field>
                                                                   <field name="UNIT">ms</field>
                                                                   <statement name="STATEMENT">
                                                                     <block type="control" id="}._cRm]pDhpi5xKA/mW`">
                                                                       <mutation delay_input="false"></mutation>
                                                                       <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Info.Staubbehaelter</field>
                                                                       <field name="WITH_DELAY">FALSE</field>
                                                                       <value name="VALUE">
                                                                         <block type="math_number" id="KGx$@%M46^%`OSzs0+Mt">
                                                                           <field name="NUM">0</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </statement>
                                                                 </block>
                                                               </next>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </statement>
                                                     </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>
     <block type="procedures_defnoreturn" id="/=xI^u`R$@J)r[w+txx*" collapsed="true" x="-262" y="-1362">
       <field name="NAME">State_reset</field>
       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
       <statement name="STACK">
         <block type="control" id="0xyak8u^:zS{FR`B$$oP">
           <mutation delay_input="false"></mutation>
           <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Wohnzimmer</field>
           <field name="WITH_DELAY">FALSE</field>
           <value name="VALUE">
             <block type="logic_boolean" id="_,@$OI_U[Nw*dhZv0I!#">
               <field name="BOOL">FALSE</field>
             </block>
           </value>
           <next>
             <block type="control" id="kCx9Z*57e-O_3jOOSmxl">
               <mutation delay_input="false"></mutation>
               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Arbeitszimmer</field>
               <field name="WITH_DELAY">FALSE</field>
               <value name="VALUE">
                 <block type="logic_boolean" id="|O5B+nNx{@)k:R%#,Xuj">
                   <field name="BOOL">FALSE</field>
                 </block>
               </value>
               <next>
                 <block type="control" id="tcMzai^]4V!=_)jZ2hT*">
                   <mutation delay_input="false"></mutation>
                   <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Kueche</field>
                   <field name="WITH_DELAY">FALSE</field>
                   <value name="VALUE">
                     <block type="logic_boolean" id="*UWSlp(#oDuvYe+V5Xix">
                       <field name="BOOL">FALSE</field>
                     </block>
                   </value>
                   <next>
                     <block type="control" id="2aR:H_YSn?LdN68`gai6">
                       <mutation delay_input="false"></mutation>
                       <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Kuechenblock</field>
                       <field name="WITH_DELAY">FALSE</field>
                       <value name="VALUE">
                         <block type="logic_boolean" id="5tXVFxwCEX+;^:G/-avO">
                           <field name="BOOL">FALSE</field>
                         </block>
                       </value>
                       <next>
                         <block type="control" id="1M96,p=+T9/cLKxy*wv~">
                           <mutation delay_input="false"></mutation>
                           <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Kinderzimmer</field>
                           <field name="WITH_DELAY">FALSE</field>
                           <value name="VALUE">
                             <block type="logic_boolean" id="ea7-A:UM::aoN7548ug)">
                               <field name="BOOL">FALSE</field>
                             </block>
                           </value>
                           <next>
                             <block type="control" id="1dw,h.nRHH4a[0xNhV(t">
                               <mutation delay_input="false"></mutation>
                               <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Schlafzimmer</field>
                               <field name="WITH_DELAY">FALSE</field>
                               <value name="VALUE">
                                 <block type="logic_boolean" id="Sxe;ZrEH8oU^m*7bu/V5">
                                   <field name="BOOL">FALSE</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="control" id="o-DfI7uJ.!xhKE0M2L/L">
                                   <mutation delay_input="false"></mutation>
                                   <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Badezimmer1</field>
                                   <field name="WITH_DELAY">FALSE</field>
                                   <value name="VALUE">
                                     <block type="logic_boolean" id="~6eAjO7%G-n8}z#JKey%">
                                       <field name="BOOL">FALSE</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="control" id="}8a_(a_ipwmY:!1XbMZb">
                                       <mutation delay_input="false"></mutation>
                                       <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Badezimmer2</field>
                                       <field name="WITH_DELAY">FALSE</field>
                                       <value name="VALUE">
                                         <block type="logic_boolean" id="FZ}yKw*JQYpMv/?aJ?2{">
                                           <field name="BOOL">FALSE</field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="control" id="-@bExkz=rlBa-A+y|TV4">
                                           <mutation delay_input="false"></mutation>
                                           <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Eingang</field>
                                           <field name="WITH_DELAY">FALSE</field>
                                           <value name="VALUE">
                                             <block type="logic_boolean" id="{6H!0LpXcuI2)J9*,Qf)">
                                               <field name="BOOL">FALSE</field>
                                             </block>
                                           </value>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                       </next>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
           </next>
         </block>
       </statement>
     </block>
     <block type="comment" id="Gw2WBZOOt_*1`l7pbMxd" x="-262" y="-1337">
       <field name="COMMENT">Bad zweigeteilt</field>
       <next>
         <block type="on_ext" id="+dL/1oJfy}3$%agDgy,/" collapsed="true">
           <mutation items="1"></mutation>
           <field name="CONDITION">ne</field>
           <field name="ACK_CONDITION"></field>
           <value name="OID0">
             <shadow type="field_oid" id="=mXzU`}Iv4(VG-(c`~C]">
               <field name="oid">Eigene_Datenpunkte.0.Staubsauger.Zonen.Badezimmer1</field>
             </shadow>
           </value>
           <statement name="STATEMENT">
             <block type="controls_if" id="j}@-/3tA?Ux_4);`5;Y)">
               <mutation else="1"></mutation>
               <value name="IF0">
                 <block type="logic_compare" id="phRG-|uQ###cZU5f-ZAu">
                   <field name="OP">EQ</field>
                   <value name="A">
                     <block type="on_source" id="dGunY:ecMVCrNExqbUUk">
                       <field name="ATTR">state.val</field>
                     </block>
                   </value>
                   <value name="B">
                     <block type="logic_boolean" id="28d=DevcP(q8!P.+8)DC">
                       <field name="BOOL">TRUE</field>
                     </block>
                   </value>
                 </block>
               </value>
               <statement name="DO0">
                 <block type="control" id="7FT?iiFQp)RhmJU)bK]z">
                   <mutation delay_input="false"></mutation>
                   <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Badezimmer2</field>
                   <field name="WITH_DELAY">FALSE</field>
                   <value name="VALUE">
                     <block type="logic_boolean" id="LadKXJjTc:!*x%PV58+H">
                       <field name="BOOL">TRUE</field>
                     </block>
                   </value>
                 </block>
               </statement>
               <statement name="ELSE">
                 <block type="control" id="DJWA+Ty0xX|gZE[55o5]">
                   <mutation delay_input="false"></mutation>
                   <field name="OID">Eigene_Datenpunkte.0.Staubsauger.Zonen.Badezimmer2</field>
                   <field name="WITH_DELAY">FALSE</field>
                   <value name="VALUE">
                     <block type="logic_boolean" id="MtNAtd-fN_rC.P:+-n4K">
                       <field name="BOOL">FALSE</field>
                     </block>
                   </value>
                 </block>
               </statement>
             </block>
           </statement>
         </block>
       </next>
     </block>
    </xml>
    

    S Offline
    S Offline
    seppel786
    wrote on last edited by
    #2167

    @der-eine

    Kurze Frage zum Verständnis - Warum machst du diese Abfrage?

    27ca7bee-2818-49af-a5ef-08be63536208-grafik.png

    D 2 Replies Last reply
    0
    • S seppel786

      @der-eine

      Kurze Frage zum Verständnis - Warum machst du diese Abfrage?

      27ca7bee-2818-49af-a5ef-08be63536208-grafik.png

      D Offline
      D Offline
      der-eine
      wrote on last edited by
      #2168

      @seppel786 da wird geprüft, ob der Roboter nach 60 min immer noch läuft. Wenn ja hängt er irgendwo und soll stehen bleiben. Das hab ich hin und wieder wenn er am Eck vom Teppich hängen bleibt. Leider ist mit der Zonenreinigung die Intelligenz beim Teufel...

      1 Reply Last reply
      0
      • KnallochseK Offline
        KnallochseK Offline
        Knallochse
        wrote on last edited by Knallochse
        #2169

        Edit: Beitrag im neuen Vacuum Adapter 2.0 gepostet (verschoben)
        https://forum.iobroker.net/post/445731

        HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

        1 Reply Last reply
        0
        • S seppel786

          @der-eine

          Kurze Frage zum Verständnis - Warum machst du diese Abfrage?

          27ca7bee-2818-49af-a5ef-08be63536208-grafik.png

          D Offline
          D Offline
          der-eine
          wrote on last edited by
          #2170

          @seppel786 der Richtigkeit halber sollte der timeout4 gestoppt werden wenn der Status 8 ist.

          Bildschirmfoto 2020-06-07 um 20.35.07.png

          1 Reply Last reply
          0
          • E Offline
            E Offline
            elisonbold
            wrote on last edited by elisonbold
            #2171

            All vacuum cleaners operate based on air flowing from the opening at the cleaning head or tool, through the best and most powerful canister vacuum and the bag and/or filter system and then out the exhaust port.

            1 Reply Last reply
            0
            • J Offline
              J Offline
              JohnnyBahama
              wrote on last edited by
              #2172

              Wie habt ihr das gelöst, dass es eine Rückmeldung gibt, dass der Roboter fertig ist mit der Reinigung? Ich sehe keinen Datenpunkt dazu

              D M 2 Replies Last reply
              0
              • J JohnnyBahama

                Wie habt ihr das gelöst, dass es eine Rückmeldung gibt, dass der Roboter fertig ist mit der Reinigung? Ich sehe keinen Datenpunkt dazu

                D Offline
                D Offline
                der-eine
                wrote on last edited by
                #2173

                @JohnnyBahama mit was willst Du darauf reagieren? Willst wissen wann er fertig ist und das in der Vis anzeigen oder andere Aktion starten?

                J 1 Reply Last reply
                0
                • J JohnnyBahama

                  Wie habt ihr das gelöst, dass es eine Rückmeldung gibt, dass der Roboter fertig ist mit der Reinigung? Ich sehe keinen Datenpunkt dazu

                  M Offline
                  M Offline
                  Marty56
                  wrote on last edited by
                  #2174

                  @JohnnyBahama

                  //-------- Klasse zur wiederholten Ausgabe von Warnungen auf den Lautsprechern -----
                  function sleep(ms) {
                    return new Promise(resolve => setTimeout(resolve, ms));
                  }
                  
                  class Repeat_Warning {
                    constructor() {
                      this.text = "";
                      this.duration = 0;
                      this.repeat = true;
                      this.first_duration = 0;
                    }
                    start(text,duration,first_duration) {
                      this.text = text;
                      this.duration = duration * 60000;  
                      this.repeat = true;
                      if (first_duration != undefined) this.first_duration = first_duration* 60000;
                      (async () => {
                          if (this.first_duration != 0) await sleep(this.first_duration);
                          while (this.repeat) {
                              setState("speechout",JSON.stringify({text:this.text,device:"ALL",vol:70}));
                              await sleep(this.duration);
                          }
                      })();
                    }
                  
                    stop() {
                      this.repeat = false;
                    }
                  }
                  /*
                  ---------------------------- Status Meldungen ----------------------------------
                  Ausgabe von Telegram und Sprachnachricht, wenn Staubsauger Reinigung abge-
                  schlossen hat.
                  
                    "states": {
                        "0": "Unknown",
                        "1": "Initiating",
                        "2": "Sleeping",
                        "3": "Waiting",
                        "4": "?",
                        "5": "Cleaning",
                        "6": "Back to home",
                        "7": "Manuell mode",
                        "8": "Charging",
                        "9": "Charging Error",
                        "10": "Pause",
                        "11": "Spot Cleaning",
                        "12": "In Error",
                        "13": "Shutting down",
                        "14": "Updating",
                        "15": "Docking",
                        "16": "Going to Spot",
                        "17": "Zone cleaning",
                        "18": "Room cleaning"
                      }
                  */
                  
                  var vacuum_states =   {
                        "0": "hat einen unbekannten Status",
                        "1": "wird initialisiert",
                        "2": "schäft",
                        "3": "wartet",
                        "4": "?",
                        "5": "reinigt",
                        "6": "geht zur Docking Station",
                        "7": "ist im manuellen Modus",
                        "8": "wird geladen",
                        "9": "hat einen Ladefehler",
                        "10": "hat Pause",
                        "11": "führt Punkt Reinigung durch",
                        "12": "hat einen Fehlerzustand",
                        "13": "wird heruntergefahren",
                        "14": "wird upgedatet",
                        "15": "verbindet sich mit der Docking Station",
                        "16": "geht zum Zielpunkt",
                        "17": "reinigt den ausgewählten Bereich",
                        "18": "reinigt den Raum"
                      };
                  
                  var sauger_path = "javascript.0.sauger.";
                  var sauger_status = sauger_path + "status";
                  createState(sauger_status,'');
                  
                  on({id:"mihome-vacuum.0.info.state", change: 'ne'}, function(obj) {
                      var state = getState("mihome-vacuum.0.info.state").val; 
                      if ((state >= 0) && (state <= 18)) {
                          setState(sauger_status,vacuum_states[state]);
                          setState("speechout",JSON.stringify({text:"Staubsauger " + vacuum_states[state] + '!',device:"HausohneKZ",vol:70}));
                      }
                  });
                  
                  //------------------------- Fehler beim Reinigen ----------------------------------
                  //Einmalige Benachrichtung per Telegram und wiederholte Ausgabe von Sprach-
                  //nachricht, dass Staubsauger einen Fehler hat
                  /*
                     "states": {
                        "0": "No error",
                        "1": "Laser distance sensor error",
                        "2": "Collision sensor error",
                        "3": "Wheels on top of void, move robot",
                        "4": "Clean hovering sensors, move robot",
                        "5": "Clean main brush",
                        "6": "Clean side brush",
                        "7": "Main wheel stuck?",
                        "8": "Device stuck, clean area",
                        "9": "Dust collector missing",
                        "10": "Clean filter",
                        "11": "Stuck in magnetic barrier",
                        "12": "Low battery",
                        "13": "Charging fault",
                        "14": "Battery fault",
                        "15": "Wall sensors dirty, wipe them",
                        "16": "Place me on flat surface",
                        "17": "Side brushes problem, reboot me",
                        "18": "Suction fan problem",
                        "19": "Unpowered charging station"
                      }
                  */
                  
                  var vacuum_error_states = {
                        "0": "Es liegt kein Fehler vor.",
                        "1": "Laserabstandsmessung hat einen Fehler.",
                        "2": "Der Kollisionssensor hat einen Fehler.",
                        "3": "Die Räder sind auf der Spitze eines Hindernisses.",
                        "4": "Die Sensoren zur Stufenerkennung sind unsauber.",
                        "5": "Die Hauptbürste muss gereinigt werden.",
                        "6": "Die Seitenbürste muss gereinigt werden.",
                        "7": "Das Hauptantriebsrad ist verklemmt.",
                        "8": "Der Staubsauger ist verklemmt.",
                        "9": "Der Staubbehälter fehlt.",
                        "10": "Der Filter muss gereinigt werden.",
                        "11": "Ein magnetisches Hindernis hat blockiert.",
                        "12": "Der Akku hat keine Ladung.",
                        "13": "Das Laden ist fehlerhaft.",
                        "14": "Der Akku hat einen Fehler.",
                        "15": "Die Wandsensoren sind schmutzig und müssen gereinigt werden.",
                        "16": "Der Untergrund ist zu steil.",
                        "17": "Die Seitebürste hat ein Problem. Staubsauger neustarten!",
                        "18": "Der Saugventilator hat ein Problem.",
                        "19": "Die Ladestation hat keinen Strom."
                      };
                      
                  
                  var sauger_error = sauger_path + "error";
                  createState(sauger_error,'');
                  var Saugerladen_Fehler = new Repeat_Warning();
                  
                  on({id:"mihome-vacuum.0.info.error", change: 'ne'}, function(obj) {
                      var state = getState("mihome-vacuum.0.info.error").val; 
                      if ((state >= 1) && (state <= 19)) {
                          setState(sauger_error,vacuum_error_states[state]);
                          Saugerladen_Fehler.start("Staubsaugerfehler: " + vacuum_error_states[state] + '!',15);
                      } else if (state == 0) {
                          Saugerladen_Fehler.stop();
                          setState(sauger_error,vacuum_error_states[state]);
                      }
                  });
                  
                  //------------------------- Verschleißteile melden ----------------------------------
                  //Einmalige Benachrichtung per Telegram bei verschleiß
                  var sauger_wearout = "javascript.0.sauger.wearout";
                  createState(sauger_wearout,'');
                  
                  function wearout(id,text) {
                      if (getState(id).val < 5) {
                          setState("speechout",JSON.stringify({text:text,device:"HausohneKZ",vol:70}));
                          setState('Botschaft', text);
                          setState(sauger_wearout, text);
                      } else 
                          setState(sauger_wearout, "OK");
                  }
                  
                  on({id:"mihome-vacuum.0.consumable.filter", change: 'ne'}, function(obj) {
                      wearout("mihome-vacuum.0.consumable.filter","Der Filter ist verschlissen!");
                  });
                  
                  on({id:"mihome-vacuum.0.consumable.main_brush", change: 'ne'}, function(obj) {
                      wearout("mihome-vacuum.0.consumable.main_brush","Die Hauptbürste ist verschlissen!");
                  });
                  
                  on({id:"mihome-vacuum.0.consumable.sensors", change: 'ne'}, function(obj) {
                       wearout("mihome-vacuum.0.consumable.sensors","Die Sensoren müssen gereinigt werden!");
                  });
                  
                  on({id:"mihome-vacuum.0.consumable.side_brush", change: 'ne'}, function(obj) {
                      wearout("mihome-vacuum.0.consumable.side_brush","Die Seitenbürste ist verschlissen!");
                  });
                  
                  //----------------------- Warnung Saubsauger zu lange online  -----------------------
                  
                  var Sauger_lange_an = new Repeat_Warning();
                  
                  on({ id: "mihome-vacuum.0.info.connection", change: 'gt' }, function (obj) {
                      Sauger_lange_an.start("Der Staubsauger sollte abgeschaltet werden!",30,5*60)
                      setState(sauger_status,'online');
                  });
                  
                  on({ id: "mihome-vacuum.0.info.connection", change: 'lt' }, function (obj) {
                      Sauger_lange_an.stop();
                      Saugerladen_zu_ende_warning.stop();
                      setState(sauger_path + "Putzdatum",new Date().toISOString().slice(0,10));
                      past();
                      setState(sauger_status,'offline');
                  });
                  
                  //------------------------- Laden abgeschlossen ----------------------------------
                  
                  var Saugerladen_zu_ende_warning = new Repeat_Warning();
                  on({id:"mihome-vacuum.0.info.battery", change: 'ne'}, function(obj) {
                      if (getState("mihome-vacuum.0.info.battery").val === 100)
                          Saugerladen_zu_ende_warning.start("Der Staubsauger ist aufgeladen und kann abgeschaltet werden!",30);
                  });
                  
                  //------------------------- Putzdatum und vergangene Zeit aktualisieren ----------
                  
                  createState(sauger_path + "Putzdatum",'2020-05-01');
                  createState(sauger_path + "Putzdatum_formatiert",'am 01.05.2020 (vor 1 Tagen)');
                  
                  function past() {
                      var last_date        = getState(sauger_path + "Putzdatum").val;
                      var last_date_format = last_date.slice(0,10).split("-");
                      var last_date_german = last_date_format[2] + "." + last_date_format[1] + "." + last_date_format[0];
                      var vergangen        = Math.floor((new Date().getTime() - new Date(last_date).getTime())/(24*60*60*1000));
                      setState(sauger_path + "Putzdatum_formatiert",last_date_german + " vor " + vergangen + " Tagen");
                  }
                  past();
                  on({time: {hour: 10, minute: 0}}, function(obj){past()});
                  

                  HW:NUC (16 GB Ram)
                  OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                  J 1 Reply Last reply
                  0
                  • D der-eine

                    @JohnnyBahama mit was willst Du darauf reagieren? Willst wissen wann er fertig ist und das in der Vis anzeigen oder andere Aktion starten?

                    J Offline
                    J Offline
                    JohnnyBahama
                    wrote on last edited by JohnnyBahama
                    #2175

                    @der-eine Ich habe mir ein zyklisches blockly gebaut, indem der Sauger nur läuft wenn keiner zu Hause ist und mehr als 48Std nach der letzten komplett Reinigung vergangen sind. Jetzt kann es vorkommen, dass jemand während der Reinigung nach Hause kommt und dadurch der Sauger seinen Dienst unterbricht, indem er wieder zur Station geschickt wird mit GoHome Datenpunkt. Nachteil, er kann nicht mehr losgeschickt werden, um dort weiter zu machen, wo er aufgehört hat.
                    Leider hat sich der selbsterstellte Datenpunkt ´Wohnung gereinigt` wegen dem Startskript schon auf true gesetzt, also fährt er kein zweites Mal raus bis wieder alle Bedingungen erfüllt sind. Was dazu führt, das er erst wieder in zwei tagen fährt. Daher würde ich den Datenpunkt Wohnung gereingt vom Roboter haben wollen, um eine Prüfsumme zu haben.

                    Momentan probiere ich rum und glaube ich könnte es umgehen, wenn ich ihn erst an eine Koordinate schicke und dann auf Pause setze. Aber auch hier müsste ich dann wissen, wann er fertig ist, um die nächste Startzeit zu bekommen.

                    D 1 Reply Last reply
                    0
                    • M Marty56

                      @JohnnyBahama

                      //-------- Klasse zur wiederholten Ausgabe von Warnungen auf den Lautsprechern -----
                      function sleep(ms) {
                        return new Promise(resolve => setTimeout(resolve, ms));
                      }
                      
                      class Repeat_Warning {
                        constructor() {
                          this.text = "";
                          this.duration = 0;
                          this.repeat = true;
                          this.first_duration = 0;
                        }
                        start(text,duration,first_duration) {
                          this.text = text;
                          this.duration = duration * 60000;  
                          this.repeat = true;
                          if (first_duration != undefined) this.first_duration = first_duration* 60000;
                          (async () => {
                              if (this.first_duration != 0) await sleep(this.first_duration);
                              while (this.repeat) {
                                  setState("speechout",JSON.stringify({text:this.text,device:"ALL",vol:70}));
                                  await sleep(this.duration);
                              }
                          })();
                        }
                      
                        stop() {
                          this.repeat = false;
                        }
                      }
                      /*
                      ---------------------------- Status Meldungen ----------------------------------
                      Ausgabe von Telegram und Sprachnachricht, wenn Staubsauger Reinigung abge-
                      schlossen hat.
                      
                        "states": {
                            "0": "Unknown",
                            "1": "Initiating",
                            "2": "Sleeping",
                            "3": "Waiting",
                            "4": "?",
                            "5": "Cleaning",
                            "6": "Back to home",
                            "7": "Manuell mode",
                            "8": "Charging",
                            "9": "Charging Error",
                            "10": "Pause",
                            "11": "Spot Cleaning",
                            "12": "In Error",
                            "13": "Shutting down",
                            "14": "Updating",
                            "15": "Docking",
                            "16": "Going to Spot",
                            "17": "Zone cleaning",
                            "18": "Room cleaning"
                          }
                      */
                      
                      var vacuum_states =   {
                            "0": "hat einen unbekannten Status",
                            "1": "wird initialisiert",
                            "2": "schäft",
                            "3": "wartet",
                            "4": "?",
                            "5": "reinigt",
                            "6": "geht zur Docking Station",
                            "7": "ist im manuellen Modus",
                            "8": "wird geladen",
                            "9": "hat einen Ladefehler",
                            "10": "hat Pause",
                            "11": "führt Punkt Reinigung durch",
                            "12": "hat einen Fehlerzustand",
                            "13": "wird heruntergefahren",
                            "14": "wird upgedatet",
                            "15": "verbindet sich mit der Docking Station",
                            "16": "geht zum Zielpunkt",
                            "17": "reinigt den ausgewählten Bereich",
                            "18": "reinigt den Raum"
                          };
                      
                      var sauger_path = "javascript.0.sauger.";
                      var sauger_status = sauger_path + "status";
                      createState(sauger_status,'');
                      
                      on({id:"mihome-vacuum.0.info.state", change: 'ne'}, function(obj) {
                          var state = getState("mihome-vacuum.0.info.state").val; 
                          if ((state >= 0) && (state <= 18)) {
                              setState(sauger_status,vacuum_states[state]);
                              setState("speechout",JSON.stringify({text:"Staubsauger " + vacuum_states[state] + '!',device:"HausohneKZ",vol:70}));
                          }
                      });
                      
                      //------------------------- Fehler beim Reinigen ----------------------------------
                      //Einmalige Benachrichtung per Telegram und wiederholte Ausgabe von Sprach-
                      //nachricht, dass Staubsauger einen Fehler hat
                      /*
                         "states": {
                            "0": "No error",
                            "1": "Laser distance sensor error",
                            "2": "Collision sensor error",
                            "3": "Wheels on top of void, move robot",
                            "4": "Clean hovering sensors, move robot",
                            "5": "Clean main brush",
                            "6": "Clean side brush",
                            "7": "Main wheel stuck?",
                            "8": "Device stuck, clean area",
                            "9": "Dust collector missing",
                            "10": "Clean filter",
                            "11": "Stuck in magnetic barrier",
                            "12": "Low battery",
                            "13": "Charging fault",
                            "14": "Battery fault",
                            "15": "Wall sensors dirty, wipe them",
                            "16": "Place me on flat surface",
                            "17": "Side brushes problem, reboot me",
                            "18": "Suction fan problem",
                            "19": "Unpowered charging station"
                          }
                      */
                      
                      var vacuum_error_states = {
                            "0": "Es liegt kein Fehler vor.",
                            "1": "Laserabstandsmessung hat einen Fehler.",
                            "2": "Der Kollisionssensor hat einen Fehler.",
                            "3": "Die Räder sind auf der Spitze eines Hindernisses.",
                            "4": "Die Sensoren zur Stufenerkennung sind unsauber.",
                            "5": "Die Hauptbürste muss gereinigt werden.",
                            "6": "Die Seitenbürste muss gereinigt werden.",
                            "7": "Das Hauptantriebsrad ist verklemmt.",
                            "8": "Der Staubsauger ist verklemmt.",
                            "9": "Der Staubbehälter fehlt.",
                            "10": "Der Filter muss gereinigt werden.",
                            "11": "Ein magnetisches Hindernis hat blockiert.",
                            "12": "Der Akku hat keine Ladung.",
                            "13": "Das Laden ist fehlerhaft.",
                            "14": "Der Akku hat einen Fehler.",
                            "15": "Die Wandsensoren sind schmutzig und müssen gereinigt werden.",
                            "16": "Der Untergrund ist zu steil.",
                            "17": "Die Seitebürste hat ein Problem. Staubsauger neustarten!",
                            "18": "Der Saugventilator hat ein Problem.",
                            "19": "Die Ladestation hat keinen Strom."
                          };
                          
                      
                      var sauger_error = sauger_path + "error";
                      createState(sauger_error,'');
                      var Saugerladen_Fehler = new Repeat_Warning();
                      
                      on({id:"mihome-vacuum.0.info.error", change: 'ne'}, function(obj) {
                          var state = getState("mihome-vacuum.0.info.error").val; 
                          if ((state >= 1) && (state <= 19)) {
                              setState(sauger_error,vacuum_error_states[state]);
                              Saugerladen_Fehler.start("Staubsaugerfehler: " + vacuum_error_states[state] + '!',15);
                          } else if (state == 0) {
                              Saugerladen_Fehler.stop();
                              setState(sauger_error,vacuum_error_states[state]);
                          }
                      });
                      
                      //------------------------- Verschleißteile melden ----------------------------------
                      //Einmalige Benachrichtung per Telegram bei verschleiß
                      var sauger_wearout = "javascript.0.sauger.wearout";
                      createState(sauger_wearout,'');
                      
                      function wearout(id,text) {
                          if (getState(id).val < 5) {
                              setState("speechout",JSON.stringify({text:text,device:"HausohneKZ",vol:70}));
                              setState('Botschaft', text);
                              setState(sauger_wearout, text);
                          } else 
                              setState(sauger_wearout, "OK");
                      }
                      
                      on({id:"mihome-vacuum.0.consumable.filter", change: 'ne'}, function(obj) {
                          wearout("mihome-vacuum.0.consumable.filter","Der Filter ist verschlissen!");
                      });
                      
                      on({id:"mihome-vacuum.0.consumable.main_brush", change: 'ne'}, function(obj) {
                          wearout("mihome-vacuum.0.consumable.main_brush","Die Hauptbürste ist verschlissen!");
                      });
                      
                      on({id:"mihome-vacuum.0.consumable.sensors", change: 'ne'}, function(obj) {
                           wearout("mihome-vacuum.0.consumable.sensors","Die Sensoren müssen gereinigt werden!");
                      });
                      
                      on({id:"mihome-vacuum.0.consumable.side_brush", change: 'ne'}, function(obj) {
                          wearout("mihome-vacuum.0.consumable.side_brush","Die Seitenbürste ist verschlissen!");
                      });
                      
                      //----------------------- Warnung Saubsauger zu lange online  -----------------------
                      
                      var Sauger_lange_an = new Repeat_Warning();
                      
                      on({ id: "mihome-vacuum.0.info.connection", change: 'gt' }, function (obj) {
                          Sauger_lange_an.start("Der Staubsauger sollte abgeschaltet werden!",30,5*60)
                          setState(sauger_status,'online');
                      });
                      
                      on({ id: "mihome-vacuum.0.info.connection", change: 'lt' }, function (obj) {
                          Sauger_lange_an.stop();
                          Saugerladen_zu_ende_warning.stop();
                          setState(sauger_path + "Putzdatum",new Date().toISOString().slice(0,10));
                          past();
                          setState(sauger_status,'offline');
                      });
                      
                      //------------------------- Laden abgeschlossen ----------------------------------
                      
                      var Saugerladen_zu_ende_warning = new Repeat_Warning();
                      on({id:"mihome-vacuum.0.info.battery", change: 'ne'}, function(obj) {
                          if (getState("mihome-vacuum.0.info.battery").val === 100)
                              Saugerladen_zu_ende_warning.start("Der Staubsauger ist aufgeladen und kann abgeschaltet werden!",30);
                      });
                      
                      //------------------------- Putzdatum und vergangene Zeit aktualisieren ----------
                      
                      createState(sauger_path + "Putzdatum",'2020-05-01');
                      createState(sauger_path + "Putzdatum_formatiert",'am 01.05.2020 (vor 1 Tagen)');
                      
                      function past() {
                          var last_date        = getState(sauger_path + "Putzdatum").val;
                          var last_date_format = last_date.slice(0,10).split("-");
                          var last_date_german = last_date_format[2] + "." + last_date_format[1] + "." + last_date_format[0];
                          var vergangen        = Math.floor((new Date().getTime() - new Date(last_date).getTime())/(24*60*60*1000));
                          setState(sauger_path + "Putzdatum_formatiert",last_date_german + " vor " + vergangen + " Tagen");
                      }
                      past();
                      on({time: {hour: 10, minute: 0}}, function(obj){past()});
                      
                      J Offline
                      J Offline
                      JohnnyBahama
                      wrote on last edited by JohnnyBahama
                      #2176

                      @Marty56 Bin in Java nicht so fit, aber ich versuch mich mal reinzufuchsen. Danke dir.

                      Edit: Ich habe mir das mal angeschaut, sehe aber auch dort keinen Punkt indem der Roboter die Meldung sendet: Reinigung abgeschlossen.

                      M 1 Reply Last reply
                      0
                      • J JohnnyBahama

                        @Marty56 Bin in Java nicht so fit, aber ich versuch mich mal reinzufuchsen. Danke dir.

                        Edit: Ich habe mir das mal angeschaut, sehe aber auch dort keinen Punkt indem der Roboter die Meldung sendet: Reinigung abgeschlossen.

                        M Offline
                        M Offline
                        Marty56
                        wrote on last edited by Marty56
                        #2177

                        @JohnnyBahama Stimmt!
                        Der Staubsauger sagt nur, dass er wieder im Standby oder auch an der Dockingstation ist, wenn er mit der Reinigung fertig ist.

                        Man müsste sich also eine kleine Statemachine programmieren, die erst bemerkt, dass der Staubsauger reinigt (das wird ja auch signalisiert) und wenn dann die Meldung kommt, dass Staubsauger in Standby oder an der Dockingstation ist, könnte "Wohnung gereinigt" ausgeben.

                        HW:NUC (16 GB Ram)
                        OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                        1 Reply Last reply
                        0
                        • J JohnnyBahama

                          @der-eine Ich habe mir ein zyklisches blockly gebaut, indem der Sauger nur läuft wenn keiner zu Hause ist und mehr als 48Std nach der letzten komplett Reinigung vergangen sind. Jetzt kann es vorkommen, dass jemand während der Reinigung nach Hause kommt und dadurch der Sauger seinen Dienst unterbricht, indem er wieder zur Station geschickt wird mit GoHome Datenpunkt. Nachteil, er kann nicht mehr losgeschickt werden, um dort weiter zu machen, wo er aufgehört hat.
                          Leider hat sich der selbsterstellte Datenpunkt ´Wohnung gereinigt` wegen dem Startskript schon auf true gesetzt, also fährt er kein zweites Mal raus bis wieder alle Bedingungen erfüllt sind. Was dazu führt, das er erst wieder in zwei tagen fährt. Daher würde ich den Datenpunkt Wohnung gereingt vom Roboter haben wollen, um eine Prüfsumme zu haben.

                          Momentan probiere ich rum und glaube ich könnte es umgehen, wenn ich ihn erst an eine Koordinate schicke und dann auf Pause setze. Aber auch hier müsste ich dann wissen, wann er fertig ist, um die nächste Startzeit zu bekommen.

                          D Offline
                          D Offline
                          der-eine
                          wrote on last edited by der-eine
                          #2178

                          @JohnnyBahama um festzustellen ob die ganze Wohnung gereinigt wurde, habe ich die gereinigten qm2 angeschaut. Wenn die über wert x waren, dann wurde die ganze Wohnung gereinigt wenn nicht dann war es nur eine Zonenreinigung. Dieser Wert wird ja pro fahrt generiert.

                          Edit: Unter dem Punkt Info -> Cleaned Area
                          dieser wird vor der nächsten Reinigung auf 0 gesetzt.

                          J 1 Reply Last reply
                          0
                          • DiginixD Offline
                            DiginixD Offline
                            Diginix
                            wrote on last edited by
                            #2179

                            Ich trigger auf Wertänderung des Status Objektes und in Abhängigkeit vom vorherigen Wert weiß ich was der Staubsauger gemacht hat.

                            ba715105-22d9-483e-a313-cbbe5b40acfc-image.png

                            ..:: So long! Tom ::..

                            NUC7i3 (Ubuntu Proxmox VM) | Echo Dots 2+3. Gen | Xiaomi Sensoren | Mi Robot 1S | Yeelight | Sonoff | Shelly | H801 RGB | Gosund SP1 | NodeMCU+ESP32 | Kostal Plenticore PV+BYD | openWB

                            J 1 Reply Last reply
                            0
                            • DiginixD Diginix

                              Ich trigger auf Wertänderung des Status Objektes und in Abhängigkeit vom vorherigen Wert weiß ich was der Staubsauger gemacht hat.

                              ba715105-22d9-483e-a313-cbbe5b40acfc-image.png

                              J Offline
                              J Offline
                              JohnnyBahama
                              wrote on last edited by JohnnyBahama
                              #2180

                              @Diginix Das ist auch nicht schlecht, ich könnte so den Start registrieren und wenn er zurück in die Station fährt das laden und somit Schlussfolgern das er fertig ist so wie @Marty56 das auch beschrieben hat.
                              Danke für den Hinweis.

                              Es wäre natürlich komfortabler wenn man den Trigger hat, den auch der Roboter von sich gibt, aber so sollte es auch gehen.

                              1 Reply Last reply
                              0
                              • D der-eine

                                @JohnnyBahama um festzustellen ob die ganze Wohnung gereinigt wurde, habe ich die gereinigten qm2 angeschaut. Wenn die über wert x waren, dann wurde die ganze Wohnung gereinigt wenn nicht dann war es nur eine Zonenreinigung. Dieser Wert wird ja pro fahrt generiert.

                                Edit: Unter dem Punkt Info -> Cleaned Area
                                dieser wird vor der nächsten Reinigung auf 0 gesetzt.

                                J Offline
                                J Offline
                                JohnnyBahama
                                wrote on last edited by JohnnyBahama
                                #2181

                                @der-eine Nicht das was ich mir erhoffte, weil auch Türen ab und zu geschlossen sind und somit ich die kleinstmögliche qm Zahl nehmen müsste. Aber jetzt hast du mich auf die Idee gebracht mir eine Meldung schicken zu lassen, dass die Reinigung zwar abgeschlossen ist, aber Räume fehlen und ich manuel nach reinigen kann.

                                By the way, kann man irgendwo feststellen, welche Räume ausgelassen worden sind oder welche gereinigt wurden bei einer Komplettreinigung? Als Datenpunkt natürlich.

                                1 Reply Last reply
                                0
                                • J Offline
                                  J Offline
                                  JohnnyBahama
                                  wrote on last edited by
                                  #2182

                                  Für jemanden den es interessiert. Es ist nicht möglich den roboter während einer komplett Reinigung zu pausieren und ihn an eine andere Position zu schicken. Dadurch verliert er den Reinigungszustand, sobald er einen anderen Befehl bekommt. GoHome und goTo löscht den Reinigungsvorgang.
                                  Also müssen Umwege her, indem ich eine Routine schreibe, die qm pro Raum abgleicht und somit die restlichen Räume reinigt nach einer unterbrechung. Hat den Vorteil, dass er zwischen laden kann.

                                  C 1 Reply Last reply
                                  0
                                  • J JohnnyBahama

                                    Für jemanden den es interessiert. Es ist nicht möglich den roboter während einer komplett Reinigung zu pausieren und ihn an eine andere Position zu schicken. Dadurch verliert er den Reinigungszustand, sobald er einen anderen Befehl bekommt. GoHome und goTo löscht den Reinigungsvorgang.
                                    Also müssen Umwege her, indem ich eine Routine schreibe, die qm pro Raum abgleicht und somit die restlichen Räume reinigt nach einer unterbrechung. Hat den Vorteil, dass er zwischen laden kann.

                                    C Offline
                                    C Offline
                                    ChrisXY
                                    wrote on last edited by
                                    #2183

                                    Wie kann ich den den Standort bzw den Raum erkennen wo er ist ? Es gibt zwar Rooms das geht aber nur wenn ich es dort über rooms Objekte auch starte. Bei einer Auto Reinigung oder Manuellen Renigung kann ich nicht sehen wo der Staubsauger gerade ist.
                                    Hab ich etwas übersehen?

                                    DiginixD 1 Reply Last reply
                                    0
                                    • C ChrisXY

                                      Wie kann ich den den Standort bzw den Raum erkennen wo er ist ? Es gibt zwar Rooms das geht aber nur wenn ich es dort über rooms Objekte auch starte. Bei einer Auto Reinigung oder Manuellen Renigung kann ich nicht sehen wo der Staubsauger gerade ist.
                                      Hab ich etwas übersehen?

                                      DiginixD Offline
                                      DiginixD Offline
                                      Diginix
                                      wrote on last edited by
                                      #2184

                                      @ChrisXY Wenn du ihn nicht über den Adapter gezielt in einem Raum schickst, z.B. eben bei einer Komplettreinigung oder über die App, bekommst du das nicht raus.
                                      Richtig kreativ, aber auch aufwändig, wäre es das Bild der Karte zu analysieren um die Pixelkoordinaten des Saugericons zu ermitteln und darüber die Position innerhalb der Wohnung.
                                      Schöner wäre es wenn die API die Koordinaten jederzeit mit senden würde. Wäre das so, wäre es sicher auch im Adapter.

                                      ..:: So long! Tom ::..

                                      NUC7i3 (Ubuntu Proxmox VM) | Echo Dots 2+3. Gen | Xiaomi Sensoren | Mi Robot 1S | Yeelight | Sonoff | Shelly | H801 RGB | Gosund SP1 | NodeMCU+ESP32 | Kostal Plenticore PV+BYD | openWB

                                      C 1 Reply Last reply
                                      0
                                      • DiginixD Diginix

                                        @ChrisXY Wenn du ihn nicht über den Adapter gezielt in einem Raum schickst, z.B. eben bei einer Komplettreinigung oder über die App, bekommst du das nicht raus.
                                        Richtig kreativ, aber auch aufwändig, wäre es das Bild der Karte zu analysieren um die Pixelkoordinaten des Saugericons zu ermitteln und darüber die Position innerhalb der Wohnung.
                                        Schöner wäre es wenn die API die Koordinaten jederzeit mit senden würde. Wäre das so, wäre es sicher auch im Adapter.

                                        C Offline
                                        C Offline
                                        ChrisXY
                                        wrote on last edited by
                                        #2185

                                        @Diginix Okay danke für die Info.

                                        Hat da schon jemand was mit blockly gemacht ? Da starten ist ja nicht das Problem ich klick die Objekte von Rooms per Blockly. Aber in zusammenhang mit Alexa ? Die rooms haben ja keinen "Brauchbaren" Namen

                                        DiginixD 1 Reply Last reply
                                        0
                                        • C ChrisXY

                                          @Diginix Okay danke für die Info.

                                          Hat da schon jemand was mit blockly gemacht ? Da starten ist ja nicht das Problem ich klick die Objekte von Rooms per Blockly. Aber in zusammenhang mit Alexa ? Die rooms haben ja keinen "Brauchbaren" Namen

                                          DiginixD Offline
                                          DiginixD Offline
                                          Diginix
                                          wrote on last edited by
                                          #2186

                                          @ChrisXY Du holst dir alle Raum-Start-Buttons als virtuelle Geräte zu Alexa, z.B. über iot und legst jeweils eine Routine mit einem stimmigen Sprachbefehl an, die dann diesen Button auf true setzt.
                                          Das ganze dann noch für Pause, GoHome usw.
                                          So kann ich den Sauger komplett über Alexa steuern.
                                          Ich sage nacheinander z.B. "Alexa, Wohnzimmer saugen", dann "Alexa, Küche saugen" und so werden die Räume in die Warteliste geschrieben und abgearbeitet. Am Ende wurde auch die ganze Wohnung gesaugt aber in meiner Wunsch Reihenfolge und ioBroker wusste wo der Sauger ist. Nach Fertigstellung jedes Raumes bekomme ich die Karte mit Angabe zur Fläche und Zeit als Email und Telegram.

                                          ..:: So long! Tom ::..

                                          NUC7i3 (Ubuntu Proxmox VM) | Echo Dots 2+3. Gen | Xiaomi Sensoren | Mi Robot 1S | Yeelight | Sonoff | Shelly | H801 RGB | Gosund SP1 | NodeMCU+ESP32 | Kostal Plenticore PV+BYD | openWB

                                          1 Reply Last reply
                                          1

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          209

                                          Online

                                          32.8k

                                          Users

                                          82.7k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe