Deebot Slim 2 - Integration möglich!

Begonnen von retikulum, 02 August 2018, 12:05:11

Vorheriges Thema - Nächstes Thema

KölnSolar

wie gesagt, timeout ist unwichtig. Entscheidend ist die response, die am reading zu erkennen ist.

ZitatSpeed1:noArg iot/p2p/setSpeed/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/TUfV/j {}
Speed:noArg iot/p2p/getSpeed/$DEVICETOPIC/helperbot/bumper/helperbot/g/2004/j {}
Speed1 gehört in die Setlist.noch $DEVICETOPIC ggfs. eine Zahl anstatt TUfV einsetzen.
Bei Speed steht ein g anstatt dem q für query.

Dann könntest Du noch die jsonMap erweitern:body_data_1_left:LifetimeSidebrush body_data_1_total:LifetimeSidebrush_total body_data_1_type:0 body_data_2_left:LifetimeBrush body_data_2_total:LifetimeBrush_total body_data_2_type:0 body_data_3_left:LifetimeHeap body_data_3_total:LifetimeHeap_total body_data_3_type:0Den noch in die readingList iot/atr/reportMapSubSet/$DEVICETOPIC/j:.* reportMapSubSet}

RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

schwatter

Ja sorry, nicht das du denkst das ich beratungsresistent bin...
das letze Post ging in die Hose. Hatte viel geschrieben. Dann
was vergessen und am Handy geändert...und nicht gemerkt das ich
was gelöscht habe. Dann wieder Infos vergessen...  ;D und so weiter

Zitatdie gets hast Du aber jetzt noch gar nicht ausprobiert, oder ? Mich wundern die body-,header-readings. Z.B. ist body_data_cid über die Jsonmap ausgeschlossen u.  body_data_type müsste in einem reading CleaningMode erscheinen. War attr Jsonmap um 12:40/12:41 nicht gesetzt ?

attr Jsonmap war um 12:40/12:41 gesetzt.

ZitatSpeed1 gehört in die Setlist.noch $DEVICETOPIC ggfs. eine Zahl anstatt TUfV einsetzen.
Bei Speed steht ein g anstatt dem q für query.

Danke, das habe ich übersehen...das "g" wurde durch die Browserkorrektur als unleserlich markiert. Geändert!
Speed1 hatte ich auch nur angelegt, da nach einem get "Speed = Timeout reading answer for HASH(0x4828788)" kam.
Auch keine Aktualisierung der Readings. Das fliegt auch wieder komplett raus. Leider besteht das Problem nach der
Änderung zu "q" immer noch.

Zitatwie gesagt, timeout ist unwichtig. Entscheidend ist die response, die am reading zu erkennen ist.

Ja stimmt, hatte ich auch so verstanden. Aber da alles in die Hose ging, wieder vergessen beim schreiben...
Hatte extra eine Tabelle angelegt und dann...naja.

jsonMap und readingsList werde ich erweitern wie von dir vorgeschlagen.

schwatter

So, alle set/gets nochmal durchgebumpert

Internals:
   CFGFN     
   CID        fhemuser_bumper_GLBbe7d18eG9
   DEF        fhemuser_bumper_GLBbe7d18eG9
   DEVICETOPIC bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth
   FUUID      5edff09c-f33f-86cf-6be4-109fdc00d79bf438
   IODev      myEcovacsClient
   LASTInputDev myEcovacsClient
   MSGCNT     15074
   NAME       Ozmo950
   NR         430
   STATE      ActualStatus: {}
   TYPE       MQTT2_DEVICE
   myEcovacsClient_MSGCNT 15074
   myEcovacsClient_TIME 2020-06-12 22:42:05
   JSONMAP:
     body_data_1_left LifetimeSidebrush
     body_data_1_total LifetimeSidebrush_total
     body_data_1_type 0
     body_data_2_left LifetimeBrush
     body_data_2_total LifetimeBrush_total
     body_data_2_type 0
     body_data_3_left LifetimeHeap
     body_data_3_total LifetimeHeap_total
     body_data_3_type 0
     body_data_amount Water
     body_data_area CleaningArea
     body_data_cid 0
     body_data_code Systemcode
     body_data_enable SleepState
     body_data_isCharging Charging
     body_data_isLow 0
     body_data_left Lifetime_total
     body_data_mode 0
     body_data_speed Speed
     body_data_start LastStart
     body_data_state 0
     body_data_time 0
     body_data_trigger Trigger
     body_data_type CleaningMode
     body_data_value BatteryState
     header_fwVer Firmware
     header_hwVer Hardware
     header_pri 0
     header_ts  0
     header_tzm 0
     header_ver Version
   OLDREADINGS:
   READINGS:
     2020-06-12 22:41:45   BatteryState    100
     2020-06-12 22:41:49   Charging        1
     2020-06-12 22:37:46   CleaningArea    0
     2020-06-12 22:37:46   CleaningMode    spotArea
     2020-06-12 22:42:05   Firmware        1.7.9
     2020-06-12 22:42:05   Hardware        0.1.1
     2020-06-12 22:42:05   LastRequest     {}
     2020-06-12 22:42:05   LastResponse    {"header":{"pri":1,"tzm":480,"ts":"1591994521888","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"trigger":"app","state":"idle"},"code":0,"msg":"ok"}}
     2020-06-12 22:37:46   LastStart       1591994256
     2020-06-12 22:41:43   Speed           0
     2020-06-12 22:42:05   Trigger         app
     2020-06-12 22:42:05   Version         0.0.1
     2020-06-12 22:42:05   body_code       0
     2020-06-12 22:37:46   body_data_cleanState_content 2
     2020-06-12 22:37:46   body_data_cleanState_id 122
     2020-06-12 22:37:46   body_data_cleanState_motionState working
     2020-06-12 22:37:46   body_data_cleanState_router plan
     2020-06-12 22:37:46   body_data_cleanState_type spotArea
     2020-06-12 22:37:46   body_data_content 2
     2020-06-12 22:36:45   body_data_enable 0
     2020-06-12 22:42:05   body_msg        ok
     2020-06-12 22:36:45   header_fwVer    1.7.9
     2020-06-12 22:36:45   header_hwVer    0.1.1
     2020-06-12 22:36:45   header_pri      1
     2020-06-12 22:36:45   header_ts       1591994202235
     2020-06-12 22:36:45   header_tzm      480
     2020-06-12 22:36:45   header_ver      0.0.1
     2020-06-12 22:41:46   onMajorMap      {"header":{"pri":1,"tzm":480,"ts":"1591994502792","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","pieceWidth":100,"pieceHeight":100,"cellWidth":8,"cellHeight":8,"pixel":50,"value":"1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1859939931,1034759041,1295764014,1295764014,1295764014,1295764014,1295764014,1775326077,2435646723,678291419,1295764014,1295764014,1295764014,1295764014,1295764014,596305144,2813688968,2523234380,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014","type":"ol"}}}
     2020-06-12 22:38:13   onMapTrace      {"header":{"pri":1,"tzm":480,"ts":"1591994289797","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"tid":"276318","totalCount":63,"traceStart":62,"pointCount":1,"traceValue":"XQAABAAFAAAAAD8ARVgXhAAAAA=="}}}
     2020-06-12 22:41:46   onMinorMap      {"header":{"pri":1,"tzm":480,"ts":"1591994502801","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","pieceIndex":36,"pieceValue":"XQAABAAQJwAAAADr/JAPiKYid/UhxbsNr0+4I5Awja7FsNc1CVsu5hDM5pBqiz2XxVRQHIr39d5Vnk56J/DIkIsNM1C9Qch9Updunt6iundBIecZgCtityQ1QsZ7qI2eyFYcKQy76PdK8VdQwCclmMeh2995XybjGoelvGLMftSJef2DnhXiwQNsqr5Gkd76P+p8x5L3gEvwSWmCyWaEkZG6mzLyf5lfuMjFRG8oN4bmrdtyScQ5jslQhcrAkrusa9m5Z5ix933+BVUiGlFy3SU+r8wBonnzYJ0KBBbvkOXkduzBseM8ZHQxaJ3fD/fAZ44GZWFb4XKAU1S9jVdDD/FXgXdGpudqtAL8ZzFOB1x8yIKr3vJuk+Q6GXDbrRB3qov2MBsrKLAflBV2L8th5/zJX0QHL4p3Iw/vy+wDoq2CnNAtlqQwxqjkibj1GxMvf8CXawguPgBedUIadYTYEQEOC88rAA=="}}}
     2020-06-12 22:41:41   onPos           {"header":{"pri":1,"tzm":480,"ts":"1591994497789","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"deebotPos":{"x":218,"y":289,"a":85,"invalid":0}}}}
     2020-06-12 22:38:13   reportMajorMap  {"header":{"pri":1,"tzm":480,"ts":"1591994289564","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","cid":"1326511408","value":"1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,607935604,1861593313,1295764014,1295764014,1295764014,1295764014,1295764014,4285911634,1918895027,3843414565,1295764014,1295764014,1295764014,1295764014,1295764014,596305144,1146047133,2523234380,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014","pieceWidth":100,"pieceHeight":100,"cellWidth":8,"cellHeight":8,"pixel":50}}}
     2020-06-12 22:38:13   reportMapSubSet {"header":{"pri":1,"tzm":480,"ts":"1591994289594","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"1326511408","mssid":"2","type":"ar","value":"5400,-2000;5450,-100;5600,150;5750,200;6550,150;6400,0;6300,-300;6300,-3050;6100,-3150;5950,-3000;5650,-2900;5450,-2050;5400,-2000","subType":"0","saOrder":""}}}
     2020-06-12 22:38:13   reportMapTrace  {"header":{"pri":1,"tzm":480,"ts":"1591994289593","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"1326511408","tid":"276318","totalCount":63,"traceStart":0,"pointCount":63,"traceValue":"XQAABAA7AQAAAH8/v2QD5BisJUOVaCNUwV1OCDL3AKP0JsJULQRopfTfLoLyw7YYcRm5Hnaywwh6mxAETuWFrFbBYuvUfi17FL64ilKT9e4dh8kvmtrPGT5FPlokk7go0jNzJ6FGUrYU2L+0csheyZ5BYyf5Yul2/oaDwipG1/p3ppVXWfy5NepaqZBBLrLKlmotKKvzixXe6rvIxUl5NCsQ1BhfHAu33HxJpg+94Ih1qvNdQjcgWH7dvWWWrd1BGgO1bfOQ92yl5lBROnIdSG2HWQ70jZjwszA="}}}
     2020-06-12 22:38:13   reportMinorMap  {"header":{"pri":1,"tzm":480,"ts":"1591994289576","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","cid":"1326511408","pieceIndex":44,"pieceValue":"XQAABAAQJwAAAADn/IIPLMU8VPh/ykiO9Xcz6ugDJueDrVOUyauBofqGxDw3yVnrXvSgyqA+TrGI01ksnKuZeOWTsdI0VIn0UNkL/5o21AiJ+LF9PJPRtXsr5TqPblch0F3DCI6YcHT/ZBaLt+zFK1WAFTz5mV5Hzv4aVuaCHb2HSJJFKYl3mrIpQojeJ/4A"}}}
     2020-06-12 22:38:13   reportPos       {"header":{"pri":1,"tzm":480,"ts":"1591994289560","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"1326511408","chargePos":[{"x":225,"y":310,"a":-99}],"deebotPos":{"x":3830,"y":-1835,"a":-17}}}}
     2020-06-12 22:38:13   reportStats     {"header":{"pri":1,"tzm":480,"ts":"1591994289559","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"1326511408","type":"spotArea","stop":1,"mapCount":8,"area":0,"time":33,"start":"1591994256","content":"2","stopReason":2}}}
     2020-06-12 22:45:41   state           11_PlaySound
     2020-06-12 22:36:39   version         HBMQTT version 0.9.5
Attributes:
   IODev      myEcovacsClient
   autocreate 1
   devicetopic bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth
   getList    Battery:noArg BatteryState iot/p2p/getBattery/helperbot/bumper/helperbot/$DEVICETOPIC/q/2001/j {}
Charging:noArg Charging iot/p2p/getChargeState/helperbot/bumper/helperbot/$DEVICETOPIC/q/2002/j {}
Cleaning:noArg CleaningState iot/p2p/getCleanInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/2003/j {}
Speed:noArg iot/p2p/getSpeed/helperbot/bumper/helperbot/$DEVICETOPIC/q/2004/j {}
Error:noArg Error iot/p2p/getError/helperbot/bumper/helperbot/$DEVICETOPIC/q/2005/j {}
LifeSpan:noArg LifeSpan iot/p2p/getLifeSpan/helperbot/bumper/helperbot/$DEVICETOPIC/q/2006/j {"body": {"data": ["brush", "sideBrush", "heap"]}
Schedule:noArg getSched_p iot/p2p/getSched/helperbot/bumper/helperbot/$DEVICETOPIC/q/2007/j {}
Sleep:noArg SleepState iot/p2p/getSleep/helperbot/bumper/helperbot/$DEVICETOPIC/q/2008/j {}
Statistic:noArg getStats_p iot/p2p/getStats/helperbot/bumper/helperbot/$DEVICETOPIC/q/2009+/j {}
Water:noArg Water iot/p2p/getWaterInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/2010/j {}


   icon       Botvac_VR200
   jsonMap    header_pri:0 header_tzm:0 header_ts:0 header_ver:Version header_fwVer:Firmware header_hwVer:Hardware body_data_value:BatteryState body_data_isLow:0 body_data_isCharging:Charging body_data_mode:0 body_data_trigger:Trigger body_data_state:0 body_data_speed:Speed body_data_area:CleaningArea body_data_time:0 body_data_cid:0 body_data_start:LastStart body_data_type:CleaningMode body_data_code:Systemcode body_data_left:Lifetime body_data_left:Lifetime_total body_data_enable:SleepState body_data_amount:Water body_data_1_left:LifetimeSidebrush body_data_1_total:LifetimeSidebrush_total body_data_1_type:0 body_data_2_left:LifetimeBrush body_data_2_total:LifetimeBrush_total body_data_2_type:0 body_data_3_left:LifetimeHeap body_data_3_total:LifetimeHeap_total body_data_3_type:0
   readingList \$SYS/broker/version:.* version
\$SYS/#:.* BrokerMessage
\x5c\x24SYS/broker/version:.* version
iot/atr/onPos/$DEVICETOPIC/j:.* onPos
iot/atr/onMapTrace/$DEVICETOPIC/j:.* onMapTrace
iot/atr/onMajorMap/$DEVICETOPIC/j:.* onMajorMap
iot/atr/onMinorMap/$DEVICETOPIC/j:.* onMinorMap
iot/atr/onStats/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/atr/onBattery/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/atr/onCachedMapInfo/$DEVICETOPIC/j:.* onCachedMapInfo
iot/atr/onSched/$DEVICETOPIC/j:.* onSched
iot/atr/onMapState/$DEVICETOPIC/j:.* onMapState
iot/atr/reportStats/$DEVICETOPIC/j:.* reportStats
iot/atr/reportPos/$DEVICETOPIC/j:.* reportPos
iot/atr/reportMajorMap/$DEVICETOPIC/j:.* reportMajorMap
iot/atr/reportMinorMap/$DEVICETOPIC/j:.* reportMinorMap
iot/atr/reportMapTrace/$DEVICETOPIC/j:.* reportMapTrace
iot/atr/onSpeed/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/atr/onCleanInfo/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/atr/onChargeState/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/atr/onRelocationState/$DEVICETOPIC/j:.* onRelocationState
iot/atr/onEvt/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/p2p/[^/]+/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* LastRequest
iot/p2p/[^/]+/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* LastResponse
iot/p2p/getAdvancedMode/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getAdvancedMode_p
iot/p2p/getBattery/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/p2p/getBlock/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBlock_p
iot/p2p/getBreakPoint/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBreakPoint_p
iot/p2p/getCachedMapInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getCachedMapInfo_p
iot/p2p/getChargeState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/p2p/getCleanInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/p2p/getError/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/p2p/getLifeSpan/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/p2p/getMajorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMajorMap_p
iot/p2p/getMapSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapSet_p
iot/p2p/getMapState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapState_p
iot/p2p/getMapSubSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapSubSet_p
iot/p2p/getMapTrace/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapTrace_p
iot/p2p/getMinorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMinorMap_p
iot/p2p/getPos/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getPos_p
iot/p2p/getRelocationState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getRelocationState_p
iot/p2p/getSched/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getSched_p
iot/p2p/getSleep/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/p2p/getStats/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getStats_p
iot/p2p/getWaterInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/p2p/getSpeed/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }
iot/atr/reportMapSubSet/$DEVICETOPIC/j:.* reportMapSubSet
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onSleep/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }

   room       Saugroboter
   setList    01_CleaningAuto:start,stop iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/1001/j {"body": {"data": {"act": "$EVTPART1", "type": "auto"}}}
02_CleaningSpot:0,1,2 iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/1002/j {"body": {"data": {"act": "start", "content": "$EVTPART1", "type": "spotArea"}}}
03_Charging:noArg iot/p2p/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/1003/j {"body": {"data": {"act": "go"}}}
04_BackToWorkOnOff:0,1 iot/p2p/setBreakPoint/helperbot/bumper/helperbot/$DEVICETOPIC/q/1004/j {"body": {"data": {"enable": $EVTPART1}}}
05_Speed:1000,0,1,2 iot/p2p/setSpeed/helperbot/bumper/helperbot/$DEVICETOPIC/q/1005/j {"body": {"data": {"speed": $EVTPART1}}}
06_AutoSpeedOnOff:0,1 iot/p2p/setCarpertPressure/helperbot/bumper/helperbot/$DEVICETOPIC/q/1006/j {"body": {"data": {"enable": $EVTPART1}}}
07_SetWater:1,2,3,4 iot/p2p/setWaterInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/1007/j {"body": {"data": {"amount": $EVTPART1, "enable": 0}}}
08_RestTimeOnOff:0,1 iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1008/j {"body": {"data": {"enable": $EVTPART1}}, "header": {"tzm": 120}}
09_RestTime:noArg iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1009/j {"body": {"data": {"end": "7:0", "start": "21:0"}}, "header": {"tzm": 120}}
10_SetVolume:0,1,2,3,4,5,6,7,8,9,10 iot/p2p/setVolume/helperbot/bumper/helperbot/$DEVICETOPIC/q/1010/j {"body": {"data": {"total": 10, "volume": $EVTPART1}}, "header": {"tzm": 120}}
11_PlaySound:noArg iot/p2p/playSound/helperbot/bumper/helperbot/$DEVICETOPIC/q/1011/j {"body": {"data": {"count": 1, "sid": 30}}}
   stateFormat ActualStatus: LastRequest

KölnSolar

#93
Hatten wir den noch nicht ? :-\
Zitatiot/atr/onSleep/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
auch in die redingList iot/atr/onSleep/$DEVICETOPIC/j:.* onSleepzum gucken, was für Daten kommen.

Ich guck mal was bei Cleanstateinfo zurückkommt
Zitat":{"data":{"trigger":"app","state":"clean","cleanState":{"id":"122","router":"plan","type":"auto","motionState":"working"}},"code":0,"msg":"ok"}}
     2020-06-10 21:55:09   CleanInfo_q     {"header": {"ts": "1591818909265", "ver": "0.0.22", "pri": 2, "tzm": 120}}
Ich würd sagen ändern:
body_data_state:CleanInfo
neu: body_msg:0 body_data_cleanState_content:0 body_data_cleanState_id:0 body_data_cleanState_motionState:MotionState body_data_cleanState_router:0 body_data_cleanState_type:CleanType body_data_content:0 body_code:0

Was ist denn
ZitatsetCarpertPressure
ein r zu viel ? :-\

ZitatJa sorry, nicht das du denkst das ich beratungsresistent bin...
Och...  ;) Du bist halt im Spielfieber  ;D
Die Grundlagen hast Du ja jetzt. Mach mal in Ruhe weiter. Ich kann zum 950er ja nix sagen. Die readings müssen beobachtet werden. Da schießen bestimmt payloads durcheinander. Da werden wir mit Perl arbeiten müssen.

Bei Fragen bin ich da.  ;)
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

schwatter

#94
body_msg:0 body_data_cleanState_content:0 body_data_cleanState_id:0 body_data_cleanState_motionState:MotionState body_data_cleanState_router:0 body_data_cleanState_type:CleanType body_data_content:0 body_code:0

Damit komplett jsonMap ersetzen? Oder hinzufügen?

Zitatein r zu viel ? :-\

setCarpertPressure, bin mir sicher, das das richtig ist :D Der Bot hat Teppicherkennung. Der erhöht dann die Saugkraft. Joa, hat ein Chinese wohl gepennt  ;D
beobachte ich nochmal.

Ja, Spieltrieb  ::) das ist die letzen Tage etwas ausgeartet (Bumper,Bot, Install hier und da, Pihole, Fehlersuche...)

edit:

Und mal wieder ein edit. Hast du einen Tip, wie man in der setList, 2 set vereinigen könnte?

09_RestTimeStart:1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,0 iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1009/j {"body": {"data": {"end": "7:0", "start": "$EVTPART1:0"}}, "header": {"tzm": 120}}
10_RestTimeEnd:1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,0 iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1010/j {"body": {"data": {"end": "$EVTPART1:0", "start": "21:0"}}, "header": {"tzm": 120}}


z.B ein Textfield, welches schon Dummytext enthält. Oder 2 Dropdown hintereinander.


edit2:

Ok, eine Möglichkeit wäre
13_RestTimeEndStart:textField iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1010/j {"body": {"data": {"end": "$EVTPART1:0", "start": "$EVTPART2:0"}}, "header": {"tzm": 120}}

Geht, nur nicht sehr elegant für den Leihen. Ein leeres Textfeld is doof.

KölnSolar

Morjen,
ZitatDamit komplett jsonMap ersetzen? Oder hinzufügen?
Nur hinzufügen. Du hast jetzt den master.  ;)
ZitatJa, Spieltrieb  ::) das ist die letzen Tage etwas ausgeartet (Bumper,Bot, Install hier und da, Pihole, Fehlersuche...)
Ich schrieb doch schonmal: Ich glaub wir ticken sehr ähnlich: Im konkreten Fall: Erst ist man mit wenig zufrieden, wenn man dann aber die Möglichkeiten sieht und auch noch erfolgreich ist, ist man nicht mehr aufzuhalten.  ;D ;D ;D
Zitatwie man in der setList, 2 set vereinigen könnte?
Leider auch nichts besseres.  :-[ Wenn Du den select der h machen willst, ist 09_RestTimeStart:selectnumbers,0,1,23,0,lin chiquer.

Grundsätzlich würd ich mich nicht zu sehr an einzelnen Befehlen festbeißen. Erst einmal gucken, dass alle eintreffenden topics verarbeitet werden u. entweder konkrete readings erzeugen oder, sofern weniger wichtig, readings mit dem kompletten Inhalt. Keine Erweiterung der readingList durch autocreate und keine "generischen"(header_...-/body_...-readings) mehr erzeugt werden. Dann die get-topics, da in der Regel einfach, weil meist kein weiterer Parameter erforderlich. Zu guter Letzt dann die Setlist.
Wenn das dann vollständig steht, kann man sich an die Optimierungen machen. Das wird dann vermutlich auf Perlcode rauslaufen.

Ich glaub ich wage es mal, meinen Bot wg. neuer Firmware nach Hause telefonieren zu lassen....
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt


KölnSolar

ZitatIch glaub ich wage es mal, meinen Bot wg. neuer Firmware nach Hause telefonieren zu lassen....
Das war relativ schmerzfrei.
pihole-Umleitungen kommentieren->pihole DNS resolver neu starten->bot aus/ein->app gestartet u. lief
zurück auf FHEM-mqtt2-Server: pihole-Umleitungen auskommentieren->pihole DNS resolver neu starten->bot aus/ein

firmware gabe es scheinbar keine Neue. Ich hatte gedacht, dass man für meinen mittlerweile auch evtl. auf json umgestellt hätte.  :'(
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

schwatter

Ich hab mich schon seit gestern Abend mit Bumper auf einem Pi beschäftigt.

Hänge immer noch bei dem Fehler
[2020-06-14 14:31:40,098] :: WARNING :: hbmqtt.client :: MQTT connection failed: ConnectionRefusedError(111, "Connect call failed ('192.168.178.42', 8883)")
[2020-06-14 14:31:40,099] :: WARNING :: hbmqtt.client :: Connection failed: ConnectException(ConnectionRefusedError(111, "Connect call failed ('192.168.178.42', 8883)"))


komischerweise funktioniert alles  ;D Handy, Fhem, Bumper.... Hab mal ein "issue" eröffnet

https://github.com/bmartin5692/bumper/issues/98

Wie würdest du Bumper mit pipenv beim Systemstart laden? Script welches Bumper startet oder systemd?
Würde gerne einen Service erstellen, is wohl aber etwas kompliziert. Das funktioniert leider nicht

[Unit]
Description=Bumper
After=network.target

[Service]
User=user
Restart=always
Type=simple
WorkingDirectory=/opt/bumper-master
ExecStart=/usr/local/bin/pipenv run python3 -m /opt/bumper-master/bumper/plugins.py --listen 192.168.178.42 --announce 192.168.178.42 --timeout 60

[Install]
WantedBy=multi-user.target








KölnSolar

ZitatWie würdest du Bumper mit pipenv beim Systemstart laden? Script welches Bumper startet oder systemd?
Würde gerne einen Service erstellen, is wohl aber etwas kompliziert. Das funktioniert leider nicht
Hatte ich so ähnlich. Ich hatte den user root genommen. Alles andere hatte mir immer Probleme bereitet. Der Start von der Konsole funktioniert bei Dir mit welchem User ?

Das war der Programmstart, wie ich ihn für systemd benutzt hatte
pipenv run python3 -m bumper --listen 192.168.xyz.ab
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

schwatter

ooohooo, das geht endlich....und, der ConnectionRefusedError(111) is damit weg  :)

Jun 14 17:09:18 raspberrypi systemd[1]: Started Bumper.
root@raspberrypi:/opt/bumper-master# systemctl status bumper
● bumper.service - Bumper
   Loaded: loaded (/etc/systemd/system/bumper.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2020-06-14 17:09:18 BST; 1min 30s ago
Main PID: 3289 (python3)
    Tasks: 1 (limit: 2200)
   Memory: 19.4M
   CGroup: /system.slice/bumper.service
           └─3289 /root/.local/share/virtualenvs/bumper-master-vG6qCsde/bin/python3 -m bumper --listen 192.168.178.42 --announce 192.168.178.42

Jun 14 17:09:26 raspberrypi pipenv[3289]: [2020-06-14 17:09:26,194] :: INFO :: hbmqtt.broker :: Listener 'tls1': 1 connections acquired
Jun 14 17:09:26 raspberrypi pipenv[3289]: [2020-06-14 17:09:26,196] :: INFO :: hbmqtt.broker :: Connection from 192.168.178.42:58202 on listener 'tls1'
Jun 14 17:09:26 raspberrypi pipenv[3289]: [2020-06-14 17:09:26,204] :: INFO :: mqttserver :: Bumper Authentication Success - Helperbot: helperbot@bumper/helperbot
Jun 14 17:09:29 raspberrypi pipenv[3289]: [2020-06-14 17:09:29,539] :: INFO :: hbmqtt.broker :: Listener 'tls1': 2 connections acquired
Jun 14 17:09:29 raspberrypi pipenv[3289]: [2020-06-14 17:09:29,541] :: INFO :: hbmqtt.broker :: Connection from 192.168.178.24:55244 on listener 'tls1'
Jun 14 17:09:29 raspberrypi pipenv[3289]: [2020-06-14 17:09:29,566] :: INFO :: mqttserver :: Bumper Authentication Success - Bot - SN: E03312796B09HCBJ0091 - DID: bb5d3df7-0ec5-4f38-b930-b6e0ed03b963 - Class: yn
Jun 14 17:09:30 raspberrypi pipenv[3289]: [2020-06-14 17:09:30,450] :: INFO :: hbmqtt.broker :: Listener 'tls1': 3 connections acquired
Jun 14 17:09:30 raspberrypi pipenv[3289]: [2020-06-14 17:09:30,451] :: INFO :: hbmqtt.broker :: Connection from 192.168.178.66:39908 on listener 'tls1'
Jun 14 17:09:30 raspberrypi pipenv[3289]: [2020-06-14 17:09:30,541] :: INFO :: mqttserver :: Bumper Authentication Success - Client - Username: meine@geheimemail.de - ClientID: fhemuser@bumper/GLBbe7d18eG9
Jun 14 17:09:34 raspberrypi pipenv[3289]: [2020-06-14 17:09:34,490] :: INFO :: xmppserver :: client authenticated fuid_tmpuser



[Unit]
Description=Bumper
After=network.target
Wants=network.target

[Service]
User=root
Restart=always
Group=dialout
Type=simple

WorkingDirectory=/opt/bumper-master
ExecStart=pipenv run python3 -m bumper --listen 192.168.178.42 --announce 192.168.178.42

[Install]
WantedBy=multi-user.target

KölnSolar

RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

schwatter

#102
Finally, Bumper ist  nun umgezogen auf mein Pihole. Ein Pi weniger...

Nochmal zusammengefasst, wie ich es gemacht habe. Fhem mit Bumper und Pihole

Setup für Bumper auf einem Pi mit Pihole (als User root)

01. raspianOs headless einrichten
02. apt-get update && apt-get upgrade
03. Pihole für DNS umleiten installieren. Dafür gibt es viele Tuts.
04. Fritzbox einrichten wie in diesem Tut -> https://heikorichter.name/post/129/fritzbox-mit-pi-hole-und-dns-over-htttps/
05. nano /etc/dnsmasq.d/02-custom.conf
address=/ecouser.net/192.168.178.6 # ändern in euere Pihole IP
address=/ecovacs.com/192.168.178.6 # ändern in euere Pihole IP
address=/ecovacs.net/192.168.178.6 # ändern in euere Pihole IP

05. service pihole-FTL reload
06. DNS-Umleitung checken
ping ecouser.net
ping ecovacs.com
ping ecovacs.net

07. cd /opt
08. wget https://github.com/bmartin5692/bumper/archive/master.zip
09. unzip master.zip
10. cd bumper-master
11. apt-get install python3-pip
12. apt-get install pipenv
13. pip3 install -r requirements.txt
14. pipenv --three #nur zur Sicherheit
15. pipenv install
16. pipenv run python -m bumper --listen 192.168.178.6 --announce 192.168.178.6 # Zur Kontrolle, ob die Zertifikate erstellt werden.
17. bumper wieder beenden
18. nano /etc/systemd/system/bumper.service

[Unit]
Description=Bumper
After=network.target
Wants=network.target

[Service]
User=root
Restart=always
Group=dialout   #ist wohl nicht notwendig, probiert es aus
Type=simple
WorkingDirectory=/opt/bumper-master
ExecStart=pipenv run python3 -m bumper --listen 192.168.178.6 --announce 192.168.178.6

[Install]
WantedBy=multi-user.target

19. systemctl enable bumper
20. systemctl start bumper
21. shutdown -r now
22. systemctl status bumper # nach Neustart nochmal Kontrolle. Bei mir lief bumper mit ConnectionRefusedError(111).
Wahrscheinlich weil Pihole einen Moment braucht, bis die Umleitung gesetzt ist. Bumper wird zu schnell sein.
23. systemctl restart bumper
24. Klappt nix, mal den ganzen Fuhrpark neustarten. Fritzbox, Pihole, Bot,...


Jetzt der Rest in Fhem.

25. Verbindung zu Bumper wird mit MQTT2_CLIENT erstellt.

defmod myEcovacsClient MQTT2_CLIENT 192.168.178.6:8883
attr myEcovacsClient SSL 1
attr myEcovacsClient autocreate simple
attr myEcovacsClient clientId fhemuser@bumper/GLBbe7d18eG9 # die clientId muss so aufgebaut sein. Anpassen ist erlaubt.
attr myEcovacsClient mqttVersion 3.1.1
attr myEcovacsClient room Saugroboter
attr myEcovacsClient username meine@geheimemail.de # der username muss so aufgebaut sein. Anpassen ist erlaubt.

setstate myEcovacsClient opened
setstate myEcovacsClient 2020-06-14 20:13:51 state opened


26. Dann "set myEcovacsClient password 123456" # Passwort ist egal, Hauptsache es gibt ein Passwort  ;D

27. Jetzt noch der Bot. Bei mir ein Ozmo950.
Dieser wird per MQTT2_DEVICE angelegt. Das Template ist noch nicht fertig.
Grundfunktionen und ein bisschen mehr sind aber gegeben.

defmod Ozmo950 MQTT2_DEVICE fhemuser_bumper_GLBbe7d18eG9
attr Ozmo950 IODev myEcovacsClient
attr Ozmo950 autocreate 1
attr Ozmo950 devicetopic bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth
attr Ozmo950 getList Battery:noArg BatteryState iot/p2p/getBattery/helperbot/bumper/helperbot/$DEVICETOPIC/q/2001/j {}\
Charging:noArg Charging iot/p2p/getChargeState/helperbot/bumper/helperbot/$DEVICETOPIC/q/2002/j {}\
Cleaning:noArg CleaningState iot/p2p/getCleanInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/2003/j {}\
Speed:noArg iot/p2p/getSpeed/helperbot/bumper/helperbot/$DEVICETOPIC/q/2004/j {}\
Error:noArg Error iot/p2p/getError/helperbot/bumper/helperbot/$DEVICETOPIC/q/2005/j {}\
LifeSpan:noArg LifeSpan iot/p2p/getLifeSpan/helperbot/bumper/helperbot/$DEVICETOPIC/q/2006/j {"body": {"data": ["brush", "sideBrush", "heap"]}\
Schedule:noArg getSched_p iot/p2p/getSched/helperbot/bumper/helperbot/$DEVICETOPIC/q/2007/j {}\
Sleep:noArg SleepState iot/p2p/getSleep/helperbot/bumper/helperbot/$DEVICETOPIC/q/2008/j {}\
Statistic:noArg getStats_p iot/p2p/getStats/helperbot/bumper/helperbot/$DEVICETOPIC/q/2009+/j {}\
Water:noArg Water iot/p2p/getWaterInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/2010/j {}\
\

attr Ozmo950 icon Botvac_VR200
attr Ozmo950 jsonMap header_pri:0 header_tzm:0 header_ts:0 header_ver:Version header_fwVer:Firmware header_hwVer:Hardware body_data_value:BatteryState body_data_isLow:0 body_data_isCharging:Charging body_data_mode:0 body_data_trigger:Trigger body_data_state:0 body_data_speed:Speed body_data_area:CleaningArea body_data_time:0 body_data_cid:0 body_data_start:LastStart body_data_type:CleaningMode body_data_code:Systemcode body_data_left:Lifetime body_data_left:Lifetime_total body_data_enable:SleepState body_data_amount:Water body_data_1_left:LifetimeSidebrush body_data_1_total:LifetimeSidebrush_total body_data_1_type:0 body_data_2_left:LifetimeBrush body_data_2_total:LifetimeBrush_total body_data_2_type:0 body_data_3_left:LifetimeHeap body_data_3_total:LifetimeHeap_total body_data_3_type:0
attr Ozmo950 readingList \$SYS/broker/version:.* version\
\$SYS/#:.* BrokerMessage\
\x5c\x24SYS/broker/version:.* version\
iot/atr/onPos/$DEVICETOPIC/j:.* onPos\
iot/atr/onMapTrace/$DEVICETOPIC/j:.* onMapTrace\
iot/atr/onMajorMap/$DEVICETOPIC/j:.* onMajorMap\
iot/atr/onMinorMap/$DEVICETOPIC/j:.* onMinorMap\
iot/atr/onStats/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/atr/onBattery/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/atr/onCachedMapInfo/$DEVICETOPIC/j:.* onCachedMapInfo\
iot/atr/onSched/$DEVICETOPIC/j:.* onSched\
iot/atr/onMapState/$DEVICETOPIC/j:.* onMapState\
iot/atr/reportStats/$DEVICETOPIC/j:.* reportStats\
iot/atr/reportPos/$DEVICETOPIC/j:.* reportPos\
iot/atr/reportMajorMap/$DEVICETOPIC/j:.* reportMajorMap\
iot/atr/reportMinorMap/$DEVICETOPIC/j:.* reportMinorMap\
iot/atr/reportMapTrace/$DEVICETOPIC/j:.* reportMapTrace\
iot/atr/onSpeed/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/atr/onCleanInfo/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/atr/onChargeState/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/atr/onRelocationState/$DEVICETOPIC/j:.* onRelocationState\
iot/atr/onEvt/$DEVICETOPIC/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/p2p/[^/]+/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* LastRequest\
iot/p2p/[^/]+/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* LastResponse\
iot/p2p/getAdvancedMode/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getAdvancedMode_p\
iot/p2p/getBattery/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/p2p/getBlock/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBlock_p\
iot/p2p/getBreakPoint/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBreakPoint_p\
iot/p2p/getCachedMapInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getCachedMapInfo_p\
iot/p2p/getChargeState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/p2p/getCleanInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/p2p/getError/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/p2p/getLifeSpan/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/p2p/getMajorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMajorMap_p\
iot/p2p/getMapSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapSet_p\
iot/p2p/getMapState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapState_p\
iot/p2p/getMapSubSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapSubSet_p\
iot/p2p/getMapTrace/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapTrace_p\
iot/p2p/getMinorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMinorMap_p\
iot/p2p/getPos/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getPos_p\
iot/p2p/getRelocationState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getRelocationState_p\
iot/p2p/getSched/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getSched_p\
iot/p2p/getSleep/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/p2p/getStats/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getStats_p\
iot/p2p/getWaterInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/p2p/getSpeed/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT,"",$JSONMAP) }\
iot/atr/reportMapSubSet/$DEVICETOPIC/j:.* reportMapSubSet\
iot/atr/onSleep/$DEVICETOPIC/j:.* onSleep\

attr Ozmo950 room Saugroboter
attr Ozmo950 setList 01_CleaningAuto:start,stop iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/1001/j {"body": {"data": {"act": "$EVTPART1", "type": "auto"}}}\
02_CleaningSpot:0,1,2 iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/1002/j {"body": {"data": {"act": "start", "content": "$EVTPART1", "type": "spotArea"}}}\
03_Charging:noArg iot/p2p/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/1003/j {"body": {"data": {"act": "go"}}}\
04_BackToWorkOnOff:0,1 iot/p2p/setBreakPoint/helperbot/bumper/helperbot/$DEVICETOPIC/q/1004/j {"body": {"data": {"enable": $EVTPART1}}}\
05_Speed:1000,0,1,2 iot/p2p/setSpeed/helperbot/bumper/helperbot/$DEVICETOPIC/q/1005/j {"body": {"data": {"speed": $EVTPART1}}}\
06_AutoSpeedOnOff:0,1 iot/p2p/setCarpertPressure/helperbot/bumper/helperbot/$DEVICETOPIC/q/1006/j {"body": {"data": {"enable": $EVTPART1}}}\
07_SetWater:1,2,3,4 iot/p2p/setWaterInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/1007/j {"body": {"data": {"amount": $EVTPART1, "enable": 0}}}\
08_RestTimeOnOff:0,1 iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1008/j {"body": {"data": {"enable": $EVTPART1}}, "header": {"tzm": 120}}\
09_RestTimeStart:1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,0 iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1009/j {"body": {"data": {"end": "7:0", "start": "$EVTPART1:0"}}, "header": {"tzm": 120}}\
10_RestTimeEnd:1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,0 iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1010/j {"body": {"data": {"end": "$EVTPART1:0", "start": "21:0"}}, "header": {"tzm": 120}}\
11_SetVolume:0,1,2,3,4,5,6,7,8,9,10 iot/p2p/setVolume/helperbot/bumper/helperbot/$DEVICETOPIC/q/1011/j {"body": {"data": {"total": 10, "volume": $EVTPART1}}, "header": {"tzm": 120}}\
12_PlaySound:noArg iot/p2p/playSound/helperbot/bumper/helperbot/$DEVICETOPIC/q/1012/j {"body": {"data": {"count": 1, "sid": 30}}}\
13_RestTimeEndStart:textField iot/p2p/setBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/1010/j {"body": {"data": {"end": "$EVTPART1:0", "start": "$EVTPART2:0"}}, "header": {"tzm": 120}}
attr Ozmo950 stateFormat ActualStatus: LastRequest

setstate Ozmo950 ActualStatus: {"body": {"data": {"count": 1, "sid": 30}}}
setstate Ozmo950 2020-06-14 18:19:31 BatteryState 100
setstate Ozmo950 2020-06-14 18:19:32 Charging 1
setstate Ozmo950 2020-06-13 17:09:53 CleaningArea 37
setstate Ozmo950 2020-06-13 17:09:53 CleaningMode auto
setstate Ozmo950 2020-06-14 18:19:32 Firmware 1.7.9
setstate Ozmo950 2020-06-14 18:19:32 Hardware 0.1.1
setstate Ozmo950 2020-06-14 18:27:20 LastRequest {"body": {"data": {"count": 1, "sid": 30}}}
setstate Ozmo950 2020-06-14 18:27:20 LastResponse {"header":{"pri":1,"tzm":480,"ts":"1592152035551","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok"}}
setstate Ozmo950 2020-06-13 17:09:53 LastStart 1592058899
setstate Ozmo950 2020-06-14 18:19:32 LifetimeBrush 17520
setstate Ozmo950 2020-06-14 18:19:32 LifetimeBrush_total 18000
setstate Ozmo950 2020-06-14 18:19:32 LifetimeHeap 6720
setstate Ozmo950 2020-06-14 18:19:32 LifetimeHeap_total 7200
setstate Ozmo950 2020-06-14 18:19:32 LifetimeSidebrush 8475
setstate Ozmo950 2020-06-14 18:19:32 LifetimeSidebrush_total 9000
setstate Ozmo950 2020-06-14 18:19:32 SleepState 1
setstate Ozmo950 2020-06-13 18:44:39 Speed 0
setstate Ozmo950 2020-06-13 17:11:06 Systemcode 1065
setstate Ozmo950 2020-06-14 18:19:32 Trigger alert
setstate Ozmo950 2020-06-14 18:19:32 Version 0.0.1
setstate Ozmo950 2020-06-14 18:19:31 Water 1
setstate Ozmo950 2020-06-14 18:19:32 body_code 0
setstate Ozmo950 2020-06-12 22:37:46 body_data_cleanState_content 2
setstate Ozmo950 2020-06-13 16:35:09 body_data_cleanState_id 122
setstate Ozmo950 2020-06-13 16:35:09 body_data_cleanState_motionState working
setstate Ozmo950 2020-06-13 16:35:09 body_data_cleanState_router plan
setstate Ozmo950 2020-06-13 16:35:09 body_data_cleanState_type auto
setstate Ozmo950 2020-06-12 22:37:46 body_data_content 2
setstate Ozmo950 2020-06-12 22:55:38 body_data_enable 1
setstate Ozmo950 2020-06-14 18:19:32 body_msg ok
setstate Ozmo950 2020-06-14 18:19:31 getAdvancedMode_p {"header":{"pri":1,"tzm":480,"ts":"1592151566969","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"enable":1}}}
setstate Ozmo950 2020-06-14 18:19:32 getBlock_p {"header":{"pri":1,"tzm":480,"ts":"1592151567474","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"enable":0,"start":"23:0","end":"7:0"}}}
setstate Ozmo950 2020-06-14 18:19:32 getBreakPoint_p {"header":{"pri":1,"tzm":480,"ts":"1592151567479","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"enable":0},"code":0,"msg":"ok"}}
setstate Ozmo950 2020-06-14 18:19:32 getCachedMapInfo_p {"header":{"pri":1,"tzm":480,"ts":"1592151567681","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"enable":0,"info":[{"mid":"409307405","index":2,"status":0,"using":1,"built":1,"name":""}]}}}
setstate Ozmo950 2020-06-14 18:19:32 getMajorMap_p {"header":{"pri":1,"tzm":480,"ts":"1592151567689","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"mid":"409307405","pieceWidth":100,"pieceHeight":100,"cellWidth":8,"cellHeight":8,"pixel":50,"value":"1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1183747191,1703642311,1355739874,1295764014,1295764014,1295764014,1295764014,1295764014,2994777366,679929246,4193191154,1295764014,1295764014,1295764014,1295764014,1295764014,120121564,974362140,2990405093,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014"}}}
setstate Ozmo950 2020-06-14 18:19:32 getMapSet_p {"header":{"pri":1,"tzm":480,"ts":"1592151568251","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"type":"mw","count":0,"mid":"409307405","subsets":[]}}}
setstate Ozmo950 2020-06-14 18:19:31 getMapState_p {"header":{"pri":1,"tzm":480,"ts":"1592151567271","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"state":"built"}}}
setstate Ozmo950 2020-06-14 18:19:33 getMapSubSet_p {"header":{"pri":1,"tzm":480,"ts":"1592151568491","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"type":"ar","mssid":"3","value":"-500,-6350;;-500,-5900;;-400,-5800;;-200,-5700;;500,-5750;;700,-5650;;800,-5450;;800,-3550;;700,-3400;;700,-2900;;1000,-2650;;1550,-2650;;1700,-2800;;1650,-6500;;1550,-6600;;-250,-6550;;-450,-6350;;-500,-6350","subtype":"0","connections":"1","mid":"409307405"}}}
setstate Ozmo950 2020-06-14 18:19:34 getMapTrace_p {"header":{"pri":1,"tzm":480,"ts":"1592151570332","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"tid":"519052","totalCount":2489,"traceStart":2400,"pointCount":89,"traceValue":"XQAABAC9AQAAADKAGMpRgV0LOFX4AdqasXC8NY+4PDIum8BmaYgUF5DlFVQTF7emy3p8I5u/O5vvxxxpVO5Aaz0r41b0UFL8LJj0LTKST4IC47yl9FhVww/cTjDOjuHOIy3cqn9BpzFjKAZbHkN7Uow6YV5izqjSJpr6X5kK3CDikTVvIHm+DkQI8gr9Z5Qyl5MGoFch192M9HjSOwXubVq5I5eQu2seOBi3XC/kI07NvOXjVrOmGODcOsM4kiMAsKJ6y0tZQKLDJgHQmUHw1Ebv4V3tz8c5hJRCkaWi2+c7qcXeygNxiGRoFaoOrBSgtU5aLSB4STUZ1b5DVbD5TschAUpr02BpNw=="}}}
setstate Ozmo950 2020-06-14 18:19:32 getMinorMap_p {"header":{"pri":1,"tzm":480,"ts":"1592151567970","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"mid":"409307405","pieceIndex":44,"pieceValue":"XQAABAAQJwAAAADn/IIPLMU8VPh/ykiO9Xcz6uaP7LdQ4i9IBQytr6lgj/APmBGLaKJHzJkhgMX8Zq0SMtuOreFqeY2Q+FB2VB9XYRBUJ6lZNTkqp6y/DbXR/nwcyBIVhUchiSyp9UtkByStEQ/LtjUqfiJTTQ==","type":"ol"}}}
setstate Ozmo950 2020-06-14 18:19:32 getPos_p {"header":{"pri":1,"tzm":480,"ts":"1592151568325","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"chargePos":[{"x":242,"y":312,"a":-93}],"deebotPos":{"x":242,"y":312,"a":86,"invalid":0}}}}
setstate Ozmo950 2020-06-14 18:19:32 getRelocationState_p {"header":{"pri":1,"tzm":480,"ts":"1592151567487","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":20003,"msg":"device do not support get,temporarily"}}
setstate Ozmo950 2020-06-14 18:19:32 getSched_p {"header":{"pri":1,"tzm":480,"ts":"1592151567493","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":[]}}
setstate Ozmo950 2020-06-14 18:19:31 getStats_p {"header":{"pri":1,"tzm":480,"ts":"1592151567283","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"area":38,"time":2096,"cid":"111","start":"1592058899","type":"auto"},"code":0,"msg":"ok"}}
setstate Ozmo950 2020-06-12 22:55:38 header_fwVer 1.7.9
setstate Ozmo950 2020-06-12 22:55:38 header_hwVer 0.1.1
setstate Ozmo950 2020-06-12 22:55:38 header_pri 1
setstate Ozmo950 2020-06-12 22:55:38 header_ts 1591995334788
setstate Ozmo950 2020-06-12 22:55:38 header_tzm 480
setstate Ozmo950 2020-06-12 22:55:38 header_ver 0.0.1
setstate Ozmo950 2020-06-13 17:11:07 onCachedMapInfo {"header":{"pri":1,"tzm":480,"ts":"1592061063937","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"enable":0,"info":[{"mid":"409307405","status":0,"index":2,"using":1,"built":1,"name":""}]}}}
setstate Ozmo950 2020-06-13 17:11:09 onMajorMap {"header":{"pri":1,"tzm":480,"ts":"1592061065539","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","pieceWidth":100,"pieceHeight":100,"cellWidth":8,"cellHeight":8,"pixel":50,"value":"1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1183747191,1703642311,1355739874,1295764014,1295764014,1295764014,1295764014,1295764014,2994777366,679929246,4193191154,1295764014,1295764014,1295764014,1295764014,1295764014,120121564,974362140,2990405093,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014","type":"ol"}}}
setstate Ozmo950 2020-06-13 17:09:57 onMapTrace {"header":{"pri":1,"tzm":480,"ts":"1592060993435","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"tid":"519052","totalCount":2489,"traceStart":2488,"pointCount":1,"traceValue":"XQAABAAFAAAAAEUAC9dyjMAAAA=="}}}
setstate Ozmo950 2020-06-13 17:11:09 onMinorMap {"header":{"pri":1,"tzm":480,"ts":"1592061065543","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","pieceIndex":28,"pieceValue":"XQAABAAQJwAAAABv/f//o7f/Rz5IFXI5QaHRQQfksME+saP4l8kci1MrH4gv+iCgl7RCpPp4vUxSZ5y5faBBZ8c0SSMD0SrRUU/pRdwo0auCSWPmyRCIvZiPlv1ufNRdTsNR0XQIL2mHXnXsvKV7AgdT5Yb/44pnE+ge2UUcVOD9XDjZG+8xytdblXeTxoiVamrz5VlM8MvQk9d4JJQYYwTHZhOBQbscckP4Uq1iSwbyRsQbK4BTuTNuNy6KDQlIYL6z1D+eHwE5OOfKPSWd+Q/1iShbVBQzQXMLwl6sbLuJed0f+U6ODe3x4bfqYpn0ufvu5eAc9T3GmMGg1Wp6PpJR1XXyeC66sE/xY+5KvfmH09CyUZAwdKs+uKeTYLBDVxGpNxamZrPXW5SWFFqdsMdravmniaBRaDlcuetGKA0noKnqT3W0iGAlfzPQn9+yj4VqtzX3/jMP/0w12m6tFHqDfdYRU/YMeORiYwtTlVaj+vE/DPSAUaImVA/CIF2RYYQyUeiWCYMwccxCUqqLAYl+dFmSMiwHAwjlprXfUtPheaRB/Y9WDcAWGIQbk2JkhZ/5c0FRlhHmOv40irkd6uc2S5SDyiqQ5FHVnCHtUT/syvTW7VIcfLsuc0X1q0vcFJuSauTuA5Sp/sIgyLVSWpfZBfxNZ5VHDagAFVcxS/ndldyZpn1W3qinX8WkD2BbP155fQ=="}}}
setstate Ozmo950 2020-06-13 17:10:56 onPos {"header":{"pri":1,"tzm":480,"ts":"1592061052162","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"deebotPos":{"x":225,"y":231,"a":83,"invalid":0}}}}
setstate Ozmo950 2020-06-13 17:11:07 onSched {"header":{"pri":1,"tzm":480,"ts":"1592061063938","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":[]}}
setstate Ozmo950 2020-06-13 18:30:02 onSleep {"header":{"pri":1,"tzm":480,"ts":"1592065798538","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"enable":1}}}
setstate Ozmo950 2020-06-13 17:10:09 reportMajorMap {"header":{"pri":1,"tzm":480,"ts":"1592060998370","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","cid":"1887750729","value":"1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1004712689,3298657864,714912931,1295764014,1295764014,1295764014,1295764014,1295764014,524344138,4165917749,4031675645,1295764014,1295764014,1295764014,1295764014,1295764014,120121564,2378812396,2990405093,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014","pieceWidth":100,"pieceHeight":100,"cellWidth":8,"cellHeight":8,"pixel":50}}}
setstate Ozmo950 2020-06-12 22:38:13 reportMapSubSet {"header":{"pri":1,"tzm":480,"ts":"1591994289594","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"1326511408","mssid":"2","type":"ar","value":"5400,-2000;;5450,-100;;5600,150;;5750,200;;6550,150;;6400,0;;6300,-300;;6300,-3050;;6100,-3150;;5950,-3000;;5650,-2900;;5450,-2050;;5400,-2000","subType":"0","saOrder":""}}}
setstate Ozmo950 2020-06-13 17:10:09 reportMapTrace {"header":{"pri":1,"tzm":480,"ts":"1592060998393","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"1887750729","tid":"519052","totalCount":2489,"traceStart":2400,"pointCount":89,"traceValue":"XQAABAC9AQAAADKAGMpRgV0LOFX4AdqasXC8NY+4PDIum8BmaYgUF5DlFVQTF7emy3p8I5u/O5vvxxxpVO5Aaz0r41b0UFL8LJj0LTKST4IC47yl9FhVww/cTjDOjuHOIy3cqn9BpzFjKAZbHkN7Uow6YV5izqjSJpr6X5kK3CDikTVvIHm+DkQI8gr9Z5Qyl5MGoFch192M9HjSOwXubVq5I5eQu2seOBi3XC/kI07NvOXjVrOmGODcOsM4kiMAsKJ6y0tZQKLDJgHQmUHw1Ebv4V3tz8c5hJRCkaWi2+c7qcXeygNxiGRoFaoOrBSgtU5aLSB4STUZ1b5DVbD5TschAUpr02BpNw=="}}}
setstate Ozmo950 2020-06-13 17:10:09 reportMinorMap {"header":{"pri":1,"tzm":480,"ts":"1592060998375","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","cid":"1887750729","pieceIndex":44,"pieceValue":"XQAABAAQJwAAAADn/IIPLMU8VPh/ykiO9Xcz6uaP7LdQ4i9IBQytr6lgj/APmBGLaKJHzJkhgMX8Zq0SMtuOreFqeY2Q+FB2VB9XYRBUJ6lZNTkqp6y/DbXR/nwcyBIVhUchiSyp9UtkByStEQ/LtjUqfiJTTQ=="}}}
setstate Ozmo950 2020-06-13 17:10:09 reportPos {"header":{"pri":1,"tzm":480,"ts":"1592060998368","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"1887750729","chargePos":[{"x":228,"y":315,"a":-95}],"deebotPos":{"x":1410,"y":-6377,"a":0}}}}
setstate Ozmo950 2020-06-13 17:10:09 reportStats {"header":{"pri":1,"tzm":480,"ts":"1592060998368","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"1887750729","type":"auto","stop":1,"mapCount":9,"area":37,"time":2096,"start":"1592058899","content":"","stopReason":1}}}
setstate Ozmo950 2020-06-14 18:27:20 state 12_PlaySound
setstate Ozmo950 2020-06-14 20:13:51 version HBMQTT version 0.9.5


Wenn ich etwas vergessen habe, aktualisiere ich es hier.

KölnSolar

TOLL.
Was hältst Du davon das in einem neuen Thema Ecovacs Deebot 950 mit FHEM abzulegen ?

Und nicht vergessen: bumper wollen wir ja noch "wegschmeißen" u. durch FHEM ersetzen.  ;)
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

schwatter

Ja, kann ich anlegen. Welches Unterforum schlägst du vor? Weiter in "Sonstige Systeme", "MQTT",...
Thema würde ich allgemeiner halten, da ja mehr MQTT können. Oder noch allgemeiner, da dein
Bot nicht MQTT spricht.

Den Rest mit nur Fhem machen wir auch! Wollte nur erstmal die Grundversorgung herstellen.
Das das nur lief, wenn mein Pc läuft war echt nervig...