Deebot Slim 2 - Integration möglich!

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

Vorheriges Thema - Nächstes Thema

schwatter

#60
Hier ist der betreffende Bereich in Bumper.

[2020-06-08 22:00:06,362] :: DEBUG :: hbmqtt.broker.plugins.packet_logger_plugin :: logging :: on_mqtt_packet_received :: 34 :: bb5d3df7-0ec5-4f38-b930-b6e0ed03b963@yna5xi/GMth <-in-- PublishPacket(ts=2020-06-08 22:00:06.354968, fixed=MQTTFixedHeader(length=180, flags=0x0), variable=PublishVariableHeader(topic=iot/p2p/getBattery/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/qYEk/j {"header": {"ts": "1591632289765", "ver": "0.0.22", "pri": 2, "tzm": 120}}, packet_id=None), payload=PublishPayload(data="bytearray(b'')"))
[2020-06-08 22:00:06,365] :: DEBUG :: hbmqtt.mqtt.protocol.handler :: handler :: handle_publish :: 566 :: Message queue size: 1
[2020-06-08 22:00:06,368] :: DEBUG :: hbmqtt.mqtt.protocol.handler :: handler :: mqtt_deliver_next_message :: 465 :: Delivering message <hbmqtt.session.IncomingApplicationMessage object at 0x0000026B898DA840>
[2020-06-08 22:00:06,373] :: DEBUG :: hbmqtt.broker :: broker :: client_connected :: 484 :: bb5d3df7-0ec5-4f38-b930-b6e0ed03b963@yna5xi/GMth handling message delivery
[2020-06-08 22:00:06,378] :: DEBUG :: hbmqtt.broker :: broker :: _broadcast_loop :: 697 :: broadcasting {'session': Session(clientId=bb5d3df7-0ec5-4f38-b930-b6e0ed03b963@yna5xi/GMth, state=connected), 'topic': 'iot/p2p/getBattery/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/qYEk/j {"header": {"ts": "1591632289765", "ver": "0.0.22", "pri": 2, "tzm": 120}}', 'data': bytearray(b'')}
[2020-06-08 22:00:06,379] :: DEBUG :: hbmqtt.broker :: broker :: _broadcast_loop :: 707 :: broadcasting application message from (client id=bb5d3df7-0ec5-4f38-b930-b6e0ed03b963@yna5xi/GMth) on topic 'iot/p2p/getBattery/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/qYEk/j {"header": {"ts": "1591632289765", "ver": "0.0.22", "pri": 2, "tzm": 120}}' to (client id=helperbot@bumper/helperbot)
[2020-06-08 22:00:06,387] :: DEBUG :: hbmqtt.mqtt.protocol.handler :: handler :: mqtt_deliver_next_message :: 459 :: 0 message(s) available for delivery
[2020-06-08 22:00:06,395] :: DEBUG :: hbmqtt.broker.plugins.packet_logger_plugin :: logging :: on_mqtt_packet_sent :: 44 :: helperbot@bumper/helperbot -out-> PublishPacket(ts=2020-06-08 22:00:06.391153, fixed=MQTTFixedHeader(length=180, flags=0x0), variable=PublishVariableHeader(topic=iot/p2p/getBattery/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/qYEk/j {"header": {"ts": "1591632289765", "ver": "0.0.22", "pri": 2, "tzm": 120}}, packet_id=None), payload=PublishPayload(data="bytearray(b'')"))
[2020-06-08 22:00:06,404] :: DEBUG :: hbmqtt.client.plugins.packet_logger_plugin :: logging :: on_mqtt_packet_received :: 34 :: helperbot@bumper/helperbot <-in-- PublishPacket(ts=2020-06-08 22:00:06.400145, fixed=MQTTFixedHeader(length=180, flags=0x0), variable=PublishVariableHeader(topic=iot/p2p/getBattery/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/qYEk/j {"header": {"ts": "1591632289765", "ver": "0.0.22", "pri": 2, "tzm": 120}}, packet_id=None), payload=PublishPayload(data="bytearray(b'')"))
[2020-06-08 22:00:06,406] :: DEBUG :: hbmqtt.mqtt.protocol.handler :: handler :: handle_publish :: 566 :: Message queue size: 1
[2020-06-08 22:00:07,596] :: DEBUG :: hbmqtt.mqtt.protocol.handler :: client_handler :: handle_write_timeout :: 91 :: Scheduling Ping


Habe schon länger das Gefühl, das der Bot an der Ladestation im DeepSleep ist. Keine Ahnung, er reagiert nicht.
Erst wenn ich den Knopf drücke, ihn wegnehme oder per App. Ich denke, die App sendet per XMPP -->los arbeite. Dann
läuft der Rest per MQTT und XMPP simultan...Oder der MQTT Interval ist sehr lang. MHhh...

edit:
In Fhem Timeout. Folgendes Reading wird angelegt

bb5d3df7_0ec5_4f38_b930_b6e0ed03b963_yna5xi_GMth:iot/p2p/GetBattery/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/1121/j:.* { json2nameValue($EVENT) }

edit2:

Jetzt wurde folgendes Reading angelegt

bb5d3df7_0ec5_4f38_b930_b6e0ed03b963_yna5xi_GMth:iot/atr/onSleep/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }

Jetzt schläft er wohl. Kommt auch nix in Bumper rein. Kurz anheben ist wie wecken.

edit3:

So, ich hoffe der DNS-Konflikt ist nun intern gelöst. Habe alles nochmal sauber abgearbeitet. Und restart der Netzwerkgeräte
durchgeführt. Danach konnte ich auch wieder bumper.ecovacs.com auf allen Geräten aufrufen und anpingen.
Dann habe ich die App gestartet und ich konnte wieder zu Bumper connecten. Bot war wieder offline. Dann wieder
myEcovacsClient gelöscht, Bumper neugestartet und zack ist der Bot in der App Online. Das beißt sich.

schwatter

#61
So, Mensch...also wenn die Basics von Mqtt.fx bekannt sind....na dann klappt das auch  ::)

Beispiel:

Bumper ist connected. Fhem nicht.

In Mqtt.fx im Publish den Pfad

iot/p2p/charge/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/aOdY/j

Und dann muss der Payload unten in das große Feld  :P

{"body": {"data": {"act": "go"}}, "header": {"ts": "1591652941379", "ver": "0.0.22", "pri": 2, "tzm": 120}}

Und mein Bot spricht zu mir: "Ich werde gerade aufgeladen"

Juhu  :) jetzt mal Start sniffen

edit:

Reinigung wird gestartet, juhu.

iot/p2p/clean/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/AlLo/j
{"body": {"data": {"act": "start", "type": "auto"}}, "header": {"ts": "1591655850268", "ver": "0.0.22", "pri": 2, "tzm": 120}}

Und Stop

{"body": {"data": {"act": "stop", "type": "auto"}}, "header": {"ts": "1591655850268", "ver": "0.0.22", "pri": 2, "tzm": 120}}

KölnSolar

So nachdem meine Antwort durch einen IE-Absturz verloren ging, nochmal. >:(

Schön, dass es nun klappt. Ich war nach Deinem vorletzten Post mit Kopfschmerzen ins Bett gegangen wie ich Dir weiterhelfen kann, woran es liegt, dass App u. FHEM nicht gleichzeitig zu bumper connecten können. Ich hatte schon in Erwägung gezogen meinen Ersatz-Rpi mit der aktuellsten bumper-Version zu bestücken, um en detail nachvollziehen zu können, was da bei Dir vorgeht....

Zitatalso wenn die Basics von Mqtt.fx bekannt sind
Ja so ist das. Auch für mich war der bot der erste richtige Berührungspunkt mit MQTT. Ich hab den selben dummen Fehler in MQTT.fx gemacht. Aber man lernt schon ne ganze Menge.... ;)

ZitatBumper ist connected. Fhem nicht.
Du meinst die App ? Was in FHEM angekommen ist, muss ich dann ja nicht mehr fragen. >:(

Ich denke, dass wir nun mit 2 Dingen weitermachen sollten. Das Problem des gleichzeitigen Zugriffs auf bumper und die Zertifikat-Geschichte.

Ich komme mal zurück auf Post#17. Dort schrieb ich ja zur "User-Definition"
define myEcovacsClient MQTT2_CLIENT bumperIP:bumperMQTT-Port
attr myEcovacsClient clientId irgendwas@bumper/GLB19396e86
attr myEcovacsClient username hierhabichdenecovacsaccount

define OZMO MQTT2_DEVICE irgendwas_bumper_GLB19396e86
mit dem Hinweis
ZitatOb clientId u. username genauso aufgebaut sein MÜSSEN, kann ich nicht sagen. Der beschriebene Aufbau funktioniert jedenfalls. Das GLB19396e86 wird bei Euch vermutlich anders sein. Das findet Ihr über die bumper-Logs heraus.
In Deinem xmpp-Log findet sich(vermutlich aus der Anmeldung der App)
Zitat[2020-06-08 18:04:45,877] :: DEBUG :: xmppserver :: xmppserver :: _parse_data :: 706 :: from (192.168.178.35:45602 | fuid_tmpuser@ecouser.net/GLBbe7d18eG9) - <iq xmlns:ns0="com:sf" id="vkq2i-3" to="rl.ecorobot.net" type="set"><query><sf td="bind" dt="Android" token="" app="STQ" /></query></iq>
Damit man nun in den Logs eine Anmeldung aus FHEM einfacher finden kann, solltest Du so definieren define myEcovacsClient MQTT2_CLIENT 192.168.178.40:8883
attr myEcovacsClient clientId fhemuser@bumper/GLBbe7d18eG9
attr myEcovacsClient username meine@geheimemail.de

define Ozmo950 MQTT2_DEVICE fhemuser_bumper_GLBbe7d18eG9
Vielleicht hilft das schon für die gleichzeitige Nutzung. Zumindest sieht man die Anmeldeversuche im xmpp-log besser u. möglicherweise warum sich die App dann ausklinkt.

Wie sieht es bei Dir mit Know-how zu Zertifikate-Installation auf dem Rpi aus ?
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

#63
Ja, nachdem ich viel hin und her probiert habe, gebe ich dir recht.
Ich denke mein Fehler war eindeutig kein DNS-Fehler. Problem kommt einfach daher, das ich immer per Fhem
die clientID bb5d3df7-0ec5-4f38-b930-b6e0ed03b963@yna5xi/GMth vom Robo genommen habe.
Daher konnte ich auch ohne ca.crt die Statusmeldungen mitlesen. Insgesamt hat sich aber alles gebissen.

Jetzt kommt ihn Fhem nichts mehr rein. myEcovacsClient ist aber connected. Sowie auch mqtt.fx und die AndroidApp.
Daher gehe ich jetzt davon aus, Fhem braucht ca.crt. Toll wäre wenn man MQTT2_DEVICE oder MQTT2_CLIENT einen Pfad
vom ca.crt mitgeben könnte. Wie gehts da weiter? Muss ca.crt an lokaler Stelle von Fhem abgelegt werden. So kenne ich es
von den SSH-Certs.

Die Devices habe ich in Fhem nach deinem Vorschlag angelegt.

edit:

Nochmal zusammenfassend 3 Basiccommands mit mqtt.fx getestet. Gekürzt ohne header funktioniert.

Start

iot/p2p/clean/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/AlLo/j
{"body": {"data": {"act": "start", "type": "auto"}}}


Stop

iot/p2p/clean/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/AlLo/j
{"body": {"data": {"act": "stop", "type": "auto"}}}


Zurück zur Station

iot/p2p/charge/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/aOdY/j
{"body": {"data": {"act": "go"}}}

KölnSolar

Hab jetzt nicht so viel Zeit. Daher nur kurz für Dich die Optionen:

ZitatToll wäre wenn man MQTT2_DEVICE oder MQTT2_CLIENT einen Pfad
vom ca.crt mitgeben könnte.
Das geht eben leider meines Wissens nicht, sondern wir müssen es "allgemein" im Rpi verfügbar machen. Hat den Vorteil, dass Du alle Befehle(set/get) später aus den readingslist ableiten kannst.

Das geht aber auch aus dem bumper-mqtt-Log. Ist halt nur unübersichtlicher. Wenn Du den etwas beschwerlicheren Weg(Befehlsanalyse) gehen willst könnten wir direkt auf die FHEM-mqtt2-Server-Variante umsteigen. Dafür ist nur(bin nicht ganz sicher)
ZitatMuss ca.crt an lokaler Stelle von Fhem abgelegt werden
die einfachere Vorgehensweise. Dann ist bumper useless u. alles läuft in FHEM. :)
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

Ok,

in Bezug auf deine Antwort und deinem Post hier https://forum.fhem.de/index.php/topic,103717.0.html
betreibe ich mal etwas Brainstorming  ;D

schwatter

#66
Nabend,

so Bumper läuft nu eigentlich rock-solid auf Windows10. Nu kam ich nach Hause, zack Desktop an und alles läuft außer mal wieder die App  ;D
Da haben die doch am 8ten eine neue App (V1.5.0) rausgebracht. Die ist wohl nicht mehr kompatibel... Downgrade auf 1.4.5 und alles wieder gut.

So, wie gesagt. Habe MQTT2_CLIENT und die MQTT2_DEVICE wie von dir empfohlen angelegt. Plus autocreate bei MQTT2_Client erweitert.
Nun legt MQTT2_DEVICE readingList satt an und man kann picken.

edit:
Die "subscribes" sind zwar immer mit helperbot zugepflastert. Aber man sieht schon ganz gut, wie es aussehen soll.

schwatter

#67
Hier nochmal ein list vom Ozmo950. Start,Stop und goCharging funktioniert so aus Fhem. Bumper läuft sauber. Handyapp auch. Sowie auch
MQTT.fx.

Internals:
   CFGFN     
   CID        fhemuser_bumper_GLBbe7d18eG9
   DEF        fhemuser_bumper_GLBbe7d18eG9
   DEVICETOPIC Ozmo950
   FUUID      5edff09c-f33f-86cf-6be4-109fdc00d79bf438
   IODev      myEcovacsClient
   LASTInputDev myEcovacsClient
   MSGCNT     855
   NAME       Ozmo950
   NR         430
   STATE      goCharging
   TYPE       MQTT2_DEVICE
   myEcovacsClient_MSGCNT 855
   myEcovacsClient_TIME 2020-06-09 23:48:35
   JSONMAP:
     body_data_area CleaningArea
     body_data_cid 0
     body_data_cleanState_id 0
     body_data_cleanState_motionState CleaningState
     body_data_cleanState_router 0
     body_data_cleanState_type 0
     body_data_code Systemcode
     body_data_isCharging Charging
     body_data_isLow 0
     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-09 23:48:10   body_code       0
     2020-06-09 23:47:22   body_data_1     chargePos
     2020-06-09 23:47:19   body_data_1_left 8558
     2020-06-09 23:47:19   body_data_1_total 9000
     2020-06-09 23:47:19   body_data_1_type sideBrush
     2020-06-09 23:47:22   body_data_2     deebotPos
     2020-06-09 23:47:19   body_data_2_left 17589
     2020-06-09 23:47:19   body_data_2_total 18000
     2020-06-09 23:47:19   body_data_2_type brush
     2020-06-09 23:47:19   body_data_3     heap
     2020-06-09 23:47:19   body_data_3_left 6789
     2020-06-09 23:47:19   body_data_3_total 7200
     2020-06-09 23:47:19   body_data_3_type heap
     2020-06-09 23:48:09   body_data_act   go
     2020-06-09 23:47:18   body_data_amount 2
     2020-06-09 23:47:58   body_data_area  0
     2020-06-09 23:48:35   body_data_cellHeight 8
     2020-06-09 23:48:35   body_data_cellWidth 8
     2020-06-09 23:47:58   body_data_chargePos_1_a -96
     2020-06-09 23:47:58   body_data_chargePos_1_x 108
     2020-06-09 23:47:58   body_data_chargePos_1_y 335
     2020-06-09 23:47:59   body_data_cid   194136254
     2020-06-09 23:47:41   body_data_cleanState_id 122
     2020-06-09 23:47:41   body_data_cleanState_motionState working
     2020-06-09 23:47:41   body_data_cleanState_router plan
     2020-06-09 23:47:41   body_data_cleanState_type auto
     2020-06-09 23:47:22   body_data_connections 1
     2020-06-09 23:47:58   body_data_content
     2020-06-09 23:47:21   body_data_count 0
     2020-06-09 23:48:27   body_data_deebotPos_a 79
     2020-06-09 23:48:27   body_data_deebotPos_invalid 0
     2020-06-09 23:48:27   body_data_deebotPos_x 93
     2020-06-09 23:48:27   body_data_deebotPos_y 209
     2020-06-09 23:47:22   body_data_enable 0
     2020-06-09 23:47:19   body_data_end   8:0
     2020-06-09 23:47:20   body_data_info_1_built 1
     2020-06-09 23:47:20   body_data_info_1_index 2
     2020-06-09 23:47:20   body_data_info_1_mid 409307405
     2020-06-09 23:47:20   body_data_info_1_name
     2020-06-09 23:47:20   body_data_info_1_status 0
     2020-06-09 23:47:20   body_data_info_1_using 1
     2020-06-09 23:48:29   body_data_isCharging 1
     2020-06-09 23:47:18   body_data_isLow 0
     2020-06-09 23:47:58   body_data_mapCount 8
     2020-06-09 23:48:35   body_data_mid   409307405
     2020-06-09 23:48:29   body_data_mode  slot
     2020-06-09 23:47:22   body_data_msid  12
     2020-06-09 23:47:22   body_data_mssid 2
     2020-06-09 23:48:35   body_data_pieceHeight 100
     2020-06-09 23:48:35   body_data_pieceIndex 36
     2020-06-09 23:48:35   body_data_pieceValue XQAABAAQJwAAAADr/JAmujyigNPJbSFEeQbKyFyrjitppePcZaXgADxVankXmL8cKu1pjNVYEqf5PZl3yd4m1GdyxDqeqYXjamWZwMijeMSN8XNRAf+5R86VwNWUbQxBq10VVFu6JBkCtsP3uDZJxq5SBPZfXm6hDfid1wbvk3c0/X9Ep6MAm3Aikl3dy/Il+kVS8LA4s0sVcd3UGMC+4Md1YAEq9f10SHmIvknteiQhlsVplwPbsMoygqP2eTr/HFurGD7BcRfkHLZRe6aK5wL1N/ns/e3sOxyhVLI1AGwDrR8uwKORkEVRLkqC64DEkoIQXlV5mNm4f4xZiMuVSrH8Fq6kvnDTqmLauO8hTjecpoZI3eM4VbVD5Ow0mapNP+xExsSrPE9gjxNZzdaghbdb1hSdJNBrOM38CnW1UcNa5j5t1+M5ELj0RDGqOKMLmhnvKbHNvky3ZusbYBw3yl0kvVSlgZgwnbaqOUCldZ27I+oUgnHWFFWa7Oui+89wijAaw6A=
     2020-06-09 23:48:35   body_data_pieceWidth 100
     2020-06-09 23:48:35   body_data_pixel 50
     2020-06-09 23:47:59   body_data_pointCount 26
     2020-06-09 23:48:31   body_data_speed 0
     2020-06-09 23:47:58   body_data_start 1591739251
     2020-06-09 23:48:31   body_data_state idle
     2020-06-09 23:47:58   body_data_stop  1
     2020-06-09 23:47:58   body_data_stopReason 2
     2020-06-09 23:47:21   body_data_subsets_1_mssid 0
     2020-06-09 23:47:21   body_data_subsets_2_mssid 1
     2020-06-09 23:47:21   body_data_subsets_3_mssid 2
     2020-06-09 23:47:22   body_data_subtype 0
     2020-06-09 23:47:59   body_data_tid   830914
     2020-06-09 23:47:58   body_data_time  24
     2020-06-09 23:47:59   body_data_totalCount 26
     2020-06-09 23:47:59   body_data_traceStart 0
     2020-06-09 23:47:59   body_data_traceValue XQAABACCAAAAAAOANtGGvcJezzwkLihiISA0VDwc4Jpoc6X0KgIUs7uFm99WPdqpMDhqZDlBlf/EPjTeA8QeL5YN/8jK7vpjTnzvbbfuWh8/FcXdfrMm8Q==
     2020-06-09 23:48:31   body_data_trigger app
     2020-06-09 23:48:35   body_data_type  ol
     2020-06-09 23:48:35   body_data_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,1230481819,312981242,1295764014,1295764014,1295764014,1295764014,1295764014,762056063,1190810510,3556018313,1295764014,1295764014,1295764014,1295764014,1295764014,1059354835,2987298699,3065753293,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014
     2020-06-09 23:48:10   body_msg        ok
     2020-06-09 23:48:35   header_fwVer    1.7.9
     2020-06-09 23:48:35   header_hwVer    0.1.1
     2020-06-09 23:48:35   header_pri      1
     2020-06-09 23:48:35   header_ts       1591739312221
     2020-06-09 23:48:35   header_tzm      480
     2020-06-09 23:48:35   header_ver      0.0.1
     2020-06-09 23:48:09   state           goCharging
Attributes:
   IODev      myEcovacsClient
   autocreate 0
   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_cleanState_id:0 body_data_cleanState_motionState:CleaningState body_data_cleanState_router:0 body_data_cleanState_type:0
   readingList fhemuser_bumper_GLBbe7d18eG9:iot/atr/onSleep/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onChargeState/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getAdvancedMode/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/akVf/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getAdvancedMode/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/akVf/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getCleanInfo/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/rMjD/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapState/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/pFeX/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getBattery/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/uzGw/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getCleanInfo/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/rMjD/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getChargeState/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/qLNp/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapState/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/pFeX/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getStats/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/uExm/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getWaterInfo/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/RKYT/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getBattery/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/uzGw/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getChargeState/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/qLNp/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getStats/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/uExm/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getBlock/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/idRq/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getWaterInfo/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/RKYT/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getBreakPoint/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/BoQN/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getError/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/KdlE/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getBlock/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/idRq/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getRelocationState/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/NkfP/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getBreakPoint/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/BoQN/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getSleep/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/Wsau/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getSched/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/aijG/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getError/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/KdlE/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getRelocationState/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/NkfP/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getSleep/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/Wsau/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getSched/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/aijG/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getLifeSpan/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/BiRV/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getCachedMapInfo/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/Asme/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMajorMap/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/GJZN/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getChargeState/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/Lqsb/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getLifeSpan/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/BiRV/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getPos/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/fQCz/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getCachedMapInfo/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/Asme/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMajorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/GJZN/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getChargeState/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/Lqsb/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getPos/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/fQCz/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMinorMap/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/VtgE/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMinorMap/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/rShL/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMinorMap/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/EZJC/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMinorMap/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/yUaq/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMinorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/VtgE/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMinorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/rShL/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMinorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/EZJC/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMinorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/yUaq/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getCleanInfo/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/mhqw/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getPos/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/iPmJ/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapTrace/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/rBJL/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getCleanInfo/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/mhqw/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSet/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/CVeG/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSet/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/RTHf/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getPos/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/iPmJ/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSet/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/cJIA/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapTrace/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/rBJL/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSet/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/CVeG/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSet/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/RTHf/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/clean/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/TUSV/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSet/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/cJIA/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getChargeState/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/WwIx/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onCleanInfo/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getPos/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/SEKb/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/clean/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/TUSV/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSubSet/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/pcha/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getChargeState/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/WwIx/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSubSet/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/JnLy/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSubSet/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/UWKb/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getPos/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/SEKb/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSubSet/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/pcha/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSubSet/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/JnLy/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onMapTrace/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/getMapSubSet/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/UWKb/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/reportStats/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onMajorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onMinorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onStats/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onPos/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/clean/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/AlLo/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/reportPos/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/reportMajorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/reportMinorMap/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/reportMapTrace/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/atr/onSpeed/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/clean/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/AlLo/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/charge/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/aOdY/j:.* { json2nameValue($EVENT) }
fhemuser_bumper_GLBbe7d18eG9:iot/p2p/charge/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/helperbot/bumper/helperbot/p/aOdY/j:.* { json2nameValue($EVENT) }
   setList    startCleaning:noArg iot/p2p/clean/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/AlLo/j {"body": {"data": {"act": "start", "type": "auto"}}}
pauseCleaning:noArg iot/p2p/clean/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/AlLo/j {"body": {"data": {"act": "stop", "type": "auto"}}}
goCharging:noArg iot/p2p/charge/helperbot/bumper/helperbot/bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth/q/aOdY/j {"body": {"data": {"act": "go"}}}


edit:

Ich würde jetzt vorschlagen, das erst die Readings gesäubert werden, bevor wir auf die "Standalone Version" switchen.
Es gibt einige (denk ich), die lieber Bumper(n) wegen App. Und der Rest steht auf Hardcore Minimalismus.

schwatter

Hier nochmal angepasster. Devicetopic gesetzt. Mit deiner readingsList passend zum Bot. Setlist von mir zum Helperbot.

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     981
   NAME       Ozmo950
   NR         430
   STATE      startCleaning
   TYPE       MQTT2_DEVICE
   myEcovacsClient_MSGCNT 981
   myEcovacsClient_TIME 2020-06-10 00:09:50
   JSONMAP:
     body_data_area CleaningArea
     body_data_cid 0
     body_data_cleanState_id 0
     body_data_cleanState_motionState CleaningState
     body_data_cleanState_router 0
     body_data_cleanState_type 0
     body_data_code Systemcode
     body_data_isCharging Charging
     body_data_isLow 0
     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-10 00:09:47   Charging        0
     2020-06-10 00:07:43   CleaningArea    0
     2020-06-10 00:07:43   CleaningMode    auto
     2020-06-10 00:09:41   CleaningState   working
     2020-06-10 00:09:47   Firmware        1.7.9
     2020-06-10 00:09:47   Hardware        0.1.1
     2020-06-10 00:07:43   LastStart       1591740454
     2020-06-10 00:08:27   Speed           0
     2020-06-10 00:09:41   Trigger         app
     2020-06-10 00:09:47   Version         0.0.1
     2020-06-10 00:09:50   onMajorMap      {"header":{"pri":1,"tzm":480,"ts":"1591740587571","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,3777462003,2581981798,1295764014,1295764014,1295764014,1295764014,1295764014,762056063,3233230117,4073597134,1295764014,1295764014,1295764014,1295764014,1295764014,1059354835,2987298699,3065753293,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014","type":"ol"}}}
     2020-06-10 00:09:41   onMapTrace      {"header":{"pri":1,"tzm":480,"ts":"1591740578572","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"tid":"60019","totalCount":0,"traceStart":0,"pointCount":0,"traceValue":""}}}
     2020-06-10 00:09:50   onMinorMap      {"header":{"pri":1,"tzm":480,"ts":"1591740587576","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","pieceIndex":36,"pieceValue":"XQAABAAQJwAAAADr/JAmujyigNPJbSFEeQbKyFyrjitppePcZaXgADxVankXmL8cKu1pjNVYEqg14C2p+yMLi5kNjOO9BAhZcjo2RpzmfcTd5kS5IRl0EevNfHlavj9cZmzSufqMfF0OzVVcoitRlOLq/2qWfLO9Q+PG1GN319b7l2+Px48Qm3Wily05Viufn2fjy3gDlTxZUjb8YHNLQ0g/miwHkN2tZhi17NDc06Bcb4aDWuMvf3MemAJo/VLwz3rxq48RucFlpGi3nPxcCtrRPOqf3MVyekIDSCPnRIUmJQcoQIGHDfNzuT2zQMOTmsIEcDHTDF/Nl7y7XkFsw2e1/A3wwBVlC2hYrLcQBm6PzToP7Mnj864F0UsSLjC2Etq32aGLaZ72Vi4BUt3K5MfaxGIq1UrMWtUqFA7yYU6i91uPqB9OAndCf6xVfQBYFrRWEHf2AgkCNHHDCESlolv8rHaStnkGS5gBcd72QY/lqh8LTGcRkwdELjnfd9vYiA=="}}}
     2020-06-10 00:08:23   onPos           {"header":{"pri":1,"tzm":480,"ts":"1591740500572","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"deebotPos":{"x":97,"y":205,"a":80,"invalid":0}}}}
     2020-06-10 00:08:05   reportMajorMap  {"header":{"pri":1,"tzm":480,"ts":"1591740482238","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","cid":"2104098715","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,3418474252,2037781630,1295764014,1295764014,1295764014,1295764014,1295764014,762056063,3414245836,3793518125,1295764014,1295764014,1295764014,1295764014,1295764014,1059354835,2987298699,3065753293,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-10 00:08:05   reportMapTrace  {"header":{"pri":1,"tzm":480,"ts":"1591740482254","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"2104098715","tid":"535552","totalCount":38,"traceStart":0,"pointCount":38,"traceValue":"XQAABAC+AAAAAAJ//DPpl9EmhKPjaHiJj+m7dRSRX6UyOsfBs3eAkUON90HNlNvzclsOCrKpNilFr2E/S6ql/2v8HiM8woWIaV6e9lUSvLva/p/yYmTGziqr2A0/dEoeOoGu0bOQbOMpvRCQ4cGJ3YxI0wrO"}}}
     2020-06-10 00:08:05   reportMinorMap  {"header":{"pri":1,"tzm":480,"ts":"1591740482244","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","cid":"2104098715","pieceIndex":44,"pieceValue":"XQAABAAQJwAAAADn/IIPLMU8VPh/ykiO9Xcz6ugDG5QqOp9a7yUlUsR8ZkSBLf/bUDgMzA9mPEhtKK5CjKGUzkOSrE8cU2ig8R3KMbNUHtBAMLeYijfVxjTk/duDPFBq8II4n3IEgjqYnVZlPvpZt0LZFxVx6JXJBdp/WX+0Axz2H3YjwVAesxABto+7V15Vryqx"}}}
     2020-06-10 00:08:05   reportPos       {"header":{"pri":1,"tzm":480,"ts":"1591740482236","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"2104098715","chargePos":[{"x":107,"y":337,"a":-98}],"deebotPos":{"x":-909,"y":426,"a":142}}}}
     2020-06-10 00:08:05   reportStats     {"header":{"pri":1,"tzm":480,"ts":"1591740482235","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"2104098715","type":"auto","stop":1,"mapCount":8,"area":0,"time":27,"start":"1591740454","content":"","stopReason":2}}}
     2020-06-10 00:09:40   state           startCleaning
Attributes:
   IODev      myEcovacsClient
   autocreate 0
   devicetopic bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth
   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_cleanState_id:0 body_data_cleanState_motionState:CleaningState body_data_cleanState_router:0 body_data_cleanState_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) }
   setList    startCleaning:noArg iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/AlLo/j {"body": {"data": {"act": "start", "type": "auto"}}}
pauseCleaning:noArg iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/AlLo/j {"body": {"data": {"act": "stop", "type": "auto"}}}
goCharging:noArg iot/p2p/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/aOdY/j {"body": {"data": {"act": "go"}}}

KölnSolar

funktioniert das jetzt ohne Zertifikat ?  :-\

dann die readinglist um das ergänzen:
iot/p2p/charge/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/clean/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getAdvancedMode/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getAdvancedMode/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBattery/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBattery/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBlock/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBreakPoint/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBreakPoint/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getCachedMapInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getCachedMapInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getChargeState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getChargeState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getCleanInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getCleanInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getError/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getError/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getLifeSpan/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getLifeSpan/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMajorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMajorMap/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapSet/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapSubSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapSubSet/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapTrace/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapTrace/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMinorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMinorMap/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getPos/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getPos/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getRelocationState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getRelocationState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getSched/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getSched/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getSleep/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getSleep/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getStats/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getStats/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getWaterInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getWaterInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
Damit werden wir Blinden sehender. Aus helperbot/bumper/helperbot/$DEVICETOPIC werden wir die getlist ableiten können. Die responses($DEVICETOPIC/helperbot/bumper/helperbot/) werden uns die Info liefern, um neue Readings bzw. Ausschlüsse festzulegen.
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, das funktioniert ohne Zertifikat. Wahrscheinlich benötigt Bumper die nur für den Bot und die App.

Internals:
   BUF       
   CFGFN     
   DEF        192.168.178.40:8883
   DeviceName 192.168.178.40:8883
   FD         35
   FUUID      5edfedcd-f33f-86cf-a4d2-880214e1fca31d1b
   NAME       myEcovacsClient
   NR         367
   PARTIAL   
   SSL        1
   STATE      opened
   TYPE       MQTT2_CLIENT
   WBCallback
   clientId   fhemuser@bumper/GLBbe7d18eG9
   lastMsgTime 1591810823.05998
   nextOpenDelay 5
   READINGS:
     2020-06-10 18:59:22   state           opened
Attributes:
   SSL        1
   autocreate simple
   clientId   fhemuser@bumper/GLBbe7d18eG9
   mqttVersion 3.1.1
   room       Saugroboter
   username   meine@geheimemail.de



So,
wenn ich den Deebot mit meinen 3 Kommandos (start,stop,zurück) bewege, kommt nix von deinen Subscribes rein.
Erst durchschalten in der App bewegt Bumper oder halt den Bot selber, etwas zu senden. Meine Subscribes und
dein jsonMap habe ich mal rausgenommen. Plus immer delete der alten Readings. Denke mal, es ist übersichtlicher.

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     1568
   NAME       Ozmo950
   NR         430
   STATE      pauseCleaning
   TYPE       MQTT2_DEVICE
   myEcovacsClient_MSGCNT 1568
   myEcovacsClient_TIME 2020-06-10 19:30:27
   OLDREADINGS:
   READINGS:
     2020-06-10 19:30:27   body_code       0
     2020-06-10 19:30:27   body_data_1     chargePos
     2020-06-10 19:30:26   body_data_1_left 8554
     2020-06-10 19:30:26   body_data_1_total 9000
     2020-06-10 19:30:26   body_data_1_type sideBrush
     2020-06-10 19:30:27   body_data_2     deebotPos
     2020-06-10 19:30:26   body_data_2_left 17586
     2020-06-10 19:30:26   body_data_2_total 18000
     2020-06-10 19:30:26   body_data_2_type brush
     2020-06-10 19:30:26   body_data_3     heap
     2020-06-10 19:30:26   body_data_3_left 6786
     2020-06-10 19:30:26   body_data_3_total 7200
     2020-06-10 19:30:26   body_data_3_type heap
     2020-06-10 19:27:40   body_data_act   go
     2020-06-10 19:30:26   body_data_amount 2
     2020-06-10 19:30:26   body_data_area  0
     2020-06-10 19:30:26   body_data_cellHeight 8
     2020-06-10 19:30:26   body_data_cellWidth 8
     2020-06-10 19:30:27   body_data_chargePos_1_a -97
     2020-06-10 19:30:27   body_data_chargePos_1_x 118
     2020-06-10 19:30:27   body_data_chargePos_1_y 333
     2020-06-10 19:30:26   body_data_cid   111
     2020-06-10 19:30:27   body_data_connections 1
     2020-06-10 19:30:27   body_data_count 0
     2020-06-10 19:30:27   body_data_deebotPos_a 82
     2020-06-10 19:30:27   body_data_deebotPos_invalid 0
     2020-06-10 19:30:27   body_data_deebotPos_x 118
     2020-06-10 19:30:27   body_data_deebotPos_y 333
     2020-06-10 19:30:26   body_data_enable 0
     2020-06-10 19:30:26   body_data_end   8:0
     2020-06-10 19:30:26   body_data_info_1_built 1
     2020-06-10 19:30:26   body_data_info_1_index 2
     2020-06-10 19:30:26   body_data_info_1_mid 409307405
     2020-06-10 19:30:26   body_data_info_1_name
     2020-06-10 19:30:26   body_data_info_1_status 0
     2020-06-10 19:30:26   body_data_info_1_using 1
     2020-06-10 19:30:27   body_data_isCharging 1
     2020-06-10 19:30:26   body_data_isLow 0
     2020-06-10 19:30:27   body_data_mid   409307405
     2020-06-10 19:30:27   body_data_mode  slot
     2020-06-10 19:30:27   body_data_msid  12
     2020-06-10 19:30:27   body_data_mssid 2
     2020-06-10 19:30:26   body_data_pieceHeight 100
     2020-06-10 19:30:26   body_data_pieceIndex 35
     2020-06-10 19:30:26   body_data_pieceValue XQAABAAQJwAAAABuPkkBG5Jj06mOnZ67EibiIAx6ND8Co/RNltdjJ20Ac7fJ/IrQHDkh5rw12y8Q0w05dwEnu9bmNGIJ4nUFCIrFTGFyvnGRycU2VEh/NH7ZD9zsaTFsKM2q0XpfqAFCGIdrE3Ee/MATAuacaPQJrhkJsxiqtZO4NtvqVJVyGiE9u9LSotRkUQB40DVRzWOPyPIkEuptTt7oeIY4jopNzONTSHhcOUKgg6rxxf4pGdPPGnxF9E+H+G4PMVt03cgN1xB4iRTuE38AyMFdWLjiwKOrD9a9bR80+9Iw6ADvilOzMKL+LCvaT7ncrFoHMTor80MkvC2QWlQePPXZDX3Ez3CacCVU1ER7tWi6L4VnsxXc87J8y+vUzn2ug0q7sQFQglsxRF7olnEblwCh7EWZEOHSk3ib16yJJOcQs9bY9cYhCc4Vx0x0afVZJZYyyTJecdzqMU4bVys7QAPS6iq8htoQJEDetNl1j2h9259OTcsWNZGB7IyzkseVgrkwHBSrRaz3BdQROC4pWB7h0ZGIYY6Q+C+1zkdqGCOAvrqN9xuJcHf2TWb1+PR6eZ8yOO8f9pdOeH8tWUP8MUMbrIOoTpPppWs7ZOLS2fSFqVKQehir1aHMEf1CFR9oUI0qjtoogg1HZsBd/+dsyd89xq9WwgA+uCPP3QVWtCoOMLJSph5NBkgsueNpJbrmLYLFj1ntc4SDPP5L9N1RIR1PzG3/+FdmzCNlflFdYWflTkyv3hx9zSJjB0Q2bwKFVHDhs4Uw9ltLfOgQHBhTx6g25q8Oi26HewwZj+5vqrWoxbU4xwM0zqYHaqHlXn1M80TgS1NioGrm6jBTUAW2mSEAlJ6hWbgaAihWdNFq/do/CfWNA9NGoz00nYtr5nkge7EWIMRacg9i+V5LxOIb0S6YJr/Q/VaXbPjSqymFAbg6
     2020-06-10 19:30:26   body_data_pieceWidth 100
     2020-06-10 19:30:26   body_data_pixel 50
     2020-06-10 19:30:27   body_data_pointCount 19
     2020-06-10 19:30:26   body_data_start 22:0
     2020-06-10 19:30:27   body_data_state idle
     2020-06-10 19:30:27   body_data_subsets_1_mssid 0
     2020-06-10 19:30:27   body_data_subsets_2_mssid 1
     2020-06-10 19:30:27   body_data_subsets_3_mssid 2
     2020-06-10 19:30:27   body_data_subtype 0
     2020-06-10 19:30:27   body_data_tid   540333
     2020-06-10 19:30:26   body_data_time  19
     2020-06-10 19:30:27   body_data_totalCount 19
     2020-06-10 19:30:27   body_data_traceStart 0
     2020-06-10 19:30:27   body_data_traceValue XQAABABfAAAAAAT//DDn+4nUJRpy103eBpGqGpNx+AysXzxosWaqlmhAFRUTUsYR374VcFDDrULVC3MXw7WWhtb7XCrnDZYKWNY/
     2020-06-10 19:30:27   body_data_trigger app
     2020-06-10 19:30:27   body_data_type  ar
     2020-06-10 19:30:27   body_data_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
     2020-06-10 19:30:27   body_msg        ok
     2020-06-10 19:30:27   header_fwVer    1.7.9
     2020-06-10 19:30:27   header_hwVer    0.1.1
     2020-06-10 19:30:27   header_pri      1
     2020-06-10 19:30:27   header_ts       1591810224203
     2020-06-10 19:30:27   header_tzm      480
     2020-06-10 19:30:27   header_ver      0.0.1
     2020-06-10 19:25:54   state           pauseCleaning
Attributes:
   IODev      myEcovacsClient
   autocreate 0
   devicetopic bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth
   readingList iot/p2p/charge/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/clean/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getAdvancedMode/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getAdvancedMode/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBattery/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBattery/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBlock/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBreakPoint/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getBreakPoint/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getCachedMapInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getCachedMapInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getChargeState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getChargeState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getCleanInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getCleanInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getError/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getError/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getLifeSpan/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getLifeSpan/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMajorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMajorMap/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapSet/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapSubSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapSubSet/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapTrace/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMapTrace/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMinorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getMinorMap/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getPos/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getPos/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getRelocationState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getRelocationState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getSched/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getSched/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getSleep/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getSleep/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getStats/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getStats/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getWaterInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* { json2nameValue($EVENT) }
iot/p2p/getWaterInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* { json2nameValue($EVENT) }
   room       Saugroboter
   setList    startCleaning:noArg iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/AlLo/j {"body": {"data": {"act": "start", "type": "auto"}}}
pauseCleaning:noArg iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/AlLo/j {"body": {"data": {"act": "stop", "type": "auto"}}}
goCharging:noArg iot/p2p/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/aOdY/j {"body": {"data": {"act": "go"}}}

KölnSolar

ZitatJa, das funktioniert ohne Zertifikat.
Genau sowas wollte ich für eine Schritt-für-Schritt-Anleitung herausfinden ;)
Zitatwenn ich den Deebot mit meinen 3 Kommandos (start,stop,zurück) bewege, kommt nix von deinen Subscribes rein.
Schon klar. Das sind alles "gets" aus der App u. die responses des bots. Ein set Befehl löst nicht mehr als ein ok aus.

Wo sind die iot/attr/... geblieben ?  ??? Das sind die topics, die der bot ohne Befehl, also nach Lust u. Laune raushaut.
Und das jsonMap ? Das brauchen wir doch auch.

Und natürlich(hatte ich vergessen  ::)) müssen wieder readingnamen reiniot/p2p/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* charge_p
iot/p2p/clean/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* clean_p
iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* clean_q
iot/p2p/getAdvancedMode/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getAdvancedMode_p
iot/p2p/getAdvancedMode/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getAdvancedMode_q
iot/p2p/getBattery/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBattery_p
iot/p2p/getBattery/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getBattery_q
iot/p2p/getBlock/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBlock_p
iot/p2p/getBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getBlock_q
iot/p2p/getBreakPoint/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBreakPoint_p
iot/p2p/getBreakPoint/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getBreakPoint_q
iot/p2p/getCachedMapInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getCachedMapInfo_p
iot/p2p/getCachedMapInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getCachedMapInfo_q
iot/p2p/getChargeState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getChargeState_p
iot/p2p/getChargeState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getChargeState_q
iot/p2p/getCleanInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* CleanInfo_p
iot/p2p/getCleanInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* CleanInfo_q
iot/p2p/getError/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getError_p
iot/p2p/getError/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getError_q
iot/p2p/getLifeSpan/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getLifeSpan_p
iot/p2p/getLifeSpan/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getLifeSpan_q
iot/p2p/getMajorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMajorMap_p
iot/p2p/getMajorMap/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMajorMap_q
iot/p2p/getMapSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapSet_p
iot/p2p/getMapSet/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMapSet_q
iot/p2p/getMapState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapState_p
iot/p2p/getMapState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMapState_q
iot/p2p/getMapSubSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapSubSet_q
iot/p2p/getMapSubSet/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMapSubSet_p
iot/p2p/getMapTrace/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapTrace_q
iot/p2p/getMapTrace/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMapTrace_p
iot/p2p/getMinorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMinorMap_p
iot/p2p/getMinorMap/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMinorMap_q
iot/p2p/getPos/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getPos_q
iot/p2p/getPos/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getPos_p
iot/p2p/getRelocationState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getRelocationState_p
iot/p2p/getRelocationState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getRelocationState_q
iot/p2p/getSched/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getSched_q
iot/p2p/getSched/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getSched_p
iot/p2p/getSleep/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getSleep_p
iot/p2p/getSleep/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getSleep_q
iot/p2p/getStats/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getStats_p
iot/p2p/getStats/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getStats_q
iot/p2p/getWaterInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getWaterInfo_p
iot/p2p/getWaterInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getWaterInfo_q

Damit müsstest Du nochmal in die App...
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

#72
So update

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     2296
   NAME       Ozmo950
   NR         430
   STATE      pauseCleaning
   TYPE       MQTT2_DEVICE
   myEcovacsClient_MSGCNT 2296
   myEcovacsClient_TIME 2020-06-10 21:57:50
   JSONMAP:
     body_data_area CleaningArea
     body_data_cid 0
     body_data_cleanState_id 0
     body_data_cleanState_motionState CleaningState
     body_data_cleanState_router 0
     body_data_cleanState_type 0
     body_data_code Systemcode
     body_data_isCharging Charging
     body_data_isLow 0
     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-10 21:55:23   BatteryState    99
     2020-06-10 21:57:15   Charging        1
     2020-06-10 21:55:09   CleanInfo_p     {"header":{"pri":1,"tzm":480,"ts":"1591818905979","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"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}}
     2020-06-10 21:55:25   CleaningArea    0
     2020-06-10 21:55:25   CleaningMode    auto
     2020-06-10 21:55:42   CleaningState   pause
     2020-06-10 21:57:47   Firmware        1.7.9
     2020-06-10 21:57:47   Hardware        0.1.1
     2020-06-10 21:55:25   LastStart       1591818921
     2020-06-10 21:57:17   Speed           0
     2020-06-10 21:57:47   Systemcode      1065
     2020-06-10 21:57:47   Trigger         app
     2020-06-10 21:57:47   Version         0.0.1
     2020-06-10 21:55:57   charge_p        {"body": {"data": {"act": "go"}}, "header": {"ts": "1591818957441", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:43   clean_p         {"header":{"pri":1,"tzm":480,"ts":"1591818939645","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok"}}
     2020-06-10 21:55:42   clean_q         {"body": {"data": {"act": "pause"}}, "header": {"ts": "1591818942949", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:06   getAdvancedMode_p {"header":{"pri":1,"tzm":480,"ts":"1591818903424","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"enable":1}}}
     2020-06-10 21:55:06   getAdvancedMode_q {"header": {"ts": "1591818906679", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:07   getBattery_p    {"header":{"pri":1,"tzm":480,"ts":"1591818903904","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"value":100,"isLow":0}}}
     2020-06-10 21:55:07   getBattery_q    {"header": {"ts": "1591818907095", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:07   getBlock_p      {"header":{"pri":1,"tzm":480,"ts":"1591818904501","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"enable":0,"start":"22:0","end":"8:0"}}}
     2020-06-10 21:55:07   getBlock_q      {"header": {"ts": "1591818907115", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:07   getBreakPoint_p {"header":{"pri":1,"tzm":480,"ts":"1591818904554","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"enable":0},"code":0,"msg":"ok"}}
     2020-06-10 21:55:07   getBreakPoint_q {"header": {"ts": "1591818907119", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:08   getCachedMapInfo_p {"header":{"pri":1,"tzm":480,"ts":"1591818905246","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":""}]}}}
     2020-06-10 21:55:08   getCachedMapInfo_q {"header": {"ts": "1591818907145", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:08   getChargeState_p {"header":{"pri":1,"tzm":480,"ts":"1591818905309","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"isCharging":0,"mode":"slot"}}}
     2020-06-10 21:55:08   getChargeState_q {"header": {"ts": "1591818907570", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:08   getError_p      {"header":{"pri":1,"tzm":480,"ts":"1591818904631","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"code":[0]}}}
     2020-06-10 21:55:07   getError_q      {"header": {"ts": "1591818907123", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:08   getLifeSpan_p   {"header":{"pri":1,"tzm":480,"ts":"1591818905126","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":[{"type":"sideBrush","left":8554,"total":9000},{"type":"brush","left":17586,"total":18000},{"type":"heap","left":6786,"total":7200}]}}
     2020-06-10 21:55:08   getLifeSpan_q   {"body": {"data": ["brush", "sideBrush", "heap"]}, "header": {"ts": "1591818907140", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:08   getMajorMap_p   {"header":{"pri":1,"tzm":480,"ts":"1591818905523","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,1295764014,3462536397,4027194052,1295764014,1295764014,1295764014,1295764014,1295764014,762056063,279370996,261404429,1295764014,1295764014,1295764014,1295764014,1295764014,1059354835,2987298699,3065753293,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014"}}}
     2020-06-10 21:55:08   getMajorMap_q   {"header": {"ts": "1591818907728", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:09   getMapSet_p     {"header":{"pri":1,"tzm":480,"ts":"1591818906377","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":[]}}}
     2020-06-10 21:55:09   getMapSet_q     {"body": {"data": {"mid": "409307405", "type": "mw"}}, "header": {"ts": "1591818909340", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:07   getMapState_p   {"header":{"pri":1,"tzm":480,"ts":"1591818903850","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"state":"built"}}}
     2020-06-10 21:55:07   getMapState_q   {"header": {"ts": "1591818907091", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:10   getMapSubSet_p  {"body": {"data": {"mid": "409307405", "msid": "18", "mssid": "2", "type": "ar"}}, "header": {"ts": "1591818910017", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:10   getMapSubSet_q  {"header":{"pri":1,"tzm":480,"ts":"1591818906806","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"type":"ar","mssid":"2","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","connections":"1","mid":"409307405"}}}
     2020-06-10 21:55:09   getMapTrace_p   {"body": {"data": {"pointCount": 200, "traceStart": 0}}, "header": {"ts": "1591818909279", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:09   getMapTrace_q   {"header":{"pri":1,"tzm":480,"ts":"1591818906119","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"tid":"382808","totalCount":0,"traceStart":0,"pointCount":200}}}
     2020-06-10 21:48:39   getMinorMap_p   {"header":{"pri":1,"tzm":480,"ts":"1591818516388","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"mid":"409307405","pieceIndex":36,"pieceValue":"XQAABAAQJwAAAADr/JAPmaQ//IYS31S5lfNMb6XZcrnBUqDinD3ai/A/b03hv6urQfvuC6cwxENjqDLorsNc/kYBZzp8b5gPHNyc4SdNR5noSVwqll1COBDbtFQswD4p+8qkKQOgfplkG1txj0fTPhIpn1VeLFy7my4oAeMChXyE9ukvIdn6quWm6bZDO66lu3EWYC3qKLusFI5oOSdGgqkSDJCSJ4w7HvxFK5bdlbaKByWatNwsejWpp4Udgic7Q3tnQde316JYJjekaGZKJwyvUT0JezpYVqZnx3mx+NIdMD/TJnt86MGk8eDqve+hIJigLdwrPlfnb+Eb9GWd7lRfsXgNLW6R4A==","type":"ol"}}}
     2020-06-10 21:48:39   getMinorMap_q   {"body": {"data": {"mid": "409307405", "pieceIndex": 36, "type": "ol"}}, "header": {"ts": "1591818518083", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:09   getPos_p        {"body": {"data": ["chargePos", "deebotPos"]}, "header": {"ts": "1591818909271", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:09   getPos_q        {"header":{"pri":1,"tzm":480,"ts":"1591818906033","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"chargePos":[{"x":108,"y":328,"a":-97}],"deebotPos":{"x":108,"y":328,"a":82,"invalid":1}}}}
     2020-06-10 21:55:08   getRelocationState_p {"header":{"pri":1,"tzm":480,"ts":"1591818904860","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":20003,"msg":"device do not support get,temporarily"}}
     2020-06-10 21:55:08   getRelocationState_q {"header": {"ts": "1591818907127", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:08   getSched_p      {"header": {"ts": "1591818907136", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:08   getSched_q      {"header":{"pri":1,"tzm":480,"ts":"1591818904924","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":[]}}
     2020-06-10 21:55:08   getSleep_p      {"header":{"pri":1,"tzm":480,"ts":"1591818904773","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"enable":0}}}
     2020-06-10 21:55:08   getSleep_q      {"header": {"ts": "1591818907131", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:07   getStats_p      {"header":{"pri":1,"tzm":480,"ts":"1591818904256","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"area":0,"time":30,"cid":"111","start":"1591818426","type":"auto"},"code":0,"msg":"ok"}}
     2020-06-10 21:55:07   getStats_q      {"header": {"ts": "1591818907105", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:55:07   getWaterInfo_p  {"header":{"pri":1,"tzm":480,"ts":"1591818904194","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"code":0,"msg":"ok","data":{"enable":0,"amount":1}}}
     2020-06-10 21:55:07   getWaterInfo_q  {"header": {"ts": "1591818907110", "ver": "0.0.22", "pri": 2, "tzm": 120}}
     2020-06-10 21:57:47   onCachedMapInfo {"header":{"pri":1,"tzm":480,"ts":"1591819064072","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":""}]}}}
     2020-06-10 21:57:50   onMajorMap      {"header":{"pri":1,"tzm":480,"ts":"1591819066913","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,3462536397,4027194052,1295764014,1295764014,1295764014,1295764014,1295764014,762056063,279370996,261404429,1295764014,1295764014,1295764014,1295764014,1295764014,1059354835,2987298699,3065753293,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014","type":"ol"}}}
     2020-06-10 21:57:47   onMapState      {"header":{"pri":1,"tzm":480,"ts":"1591819063464","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"state":"built"}}}
     2020-06-10 21:57:47   onMapTrace      {"header":{"pri":1,"tzm":480,"ts":"1591819064077","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"tid":"512776","totalCount":0,"traceStart":0,"pointCount":0,"traceValue":""}}}
     2020-06-10 21:57:50   onMinorMap      {"header":{"pri":1,"tzm":480,"ts":"1591819066927","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"409307405","pieceIndex":44,"pieceValue":"XQAABAAQJwAAAADn/IIPLMU8VPh/ykiO9Xcz6ugDG5QqOp9a7yUlUsR8ZkSBLf/bUDgMzA9mPEhtKK5CjKGUzkOSrE8cU2ig8R3KMbNUHtBAMLeYijfVxjTk/duDPFBq8II4n3IEgjqYnVZlPvpZt0LZFxVx6JXJBdp/WX+0Axz2H3YjwVAesxABto+7V15Vryqx"}}}
     2020-06-10 21:57:47   onPos           {"header":{"pri":1,"tzm":480,"ts":"1591819064077","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"chargePos":[{"x":108,"y":328,"a":-97}],"deebotPos":{"x":108,"y":328,"a":82,"invalid":1},"mid":"409307405"}}}
     2020-06-10 21:57:47   onRelocationState {"header":{"pri":1,"tzm":480,"ts":"1591819061742","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mode":"recover","state":"fail","isHasMap":1}}}
     2020-06-10 21:57:47   onSched         {"header":{"pri":1,"tzm":480,"ts":"1591819064073","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":[]}}
     2020-06-10 21:55:57   reportMajorMap  {"header":{"pri":1,"tzm":480,"ts":"1591818954081","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"1653121676","cid":"311590924","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,1937656772,592513296,1295764014,1295764014,1295764014,1295764014,1295764014,1295764014,2238319027,314248433,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","pieceWidth":100,"pieceHeight":100,"cellWidth":8,"cellHeight":8,"pixel":50}}}
     2020-06-10 21:55:57   reportMapTrace  {"header":{"pri":1,"tzm":480,"ts":"1591818954103","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"311590924","tid":"175540","totalCount":12,"traceStart":0,"pointCount":12,"traceValue":"XQAABAA8AAAAAABonl2aUfy97UzwpR8yvaF9dG9DXR+YUmhpISDN7dlOmkA="}}}
     2020-06-10 21:55:57   reportMinorMap  {"header":{"pri":1,"tzm":480,"ts":"1591818954089","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"mid":"1653121676","cid":"311590924","pieceIndex":36,"pieceValue":"XQAABAAQJwAAAAHpfHXOT3SPnzIzKOXFj78scxwISfySFXIyACX7z7cFWtKwc0Uyfk25oVMpj/dyIVTGHGsp3yvBb7aEWAA="}}}
     2020-06-10 21:55:57   reportPos       {"header":{"pri":1,"tzm":480,"ts":"1591818954076","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"311590924","deebotPos":{"x":-6,"y":451,"a":72}}}}
     2020-06-10 21:55:57   reportStats     {"header":{"pri":1,"tzm":480,"ts":"1591818954073","ver":"0.0.1","fwVer":"1.7.9","hwVer":"0.1.1"},"body":{"data":{"cid":"311590924","type":"auto","stop":1,"mapCount":4,"area":0,"time":19,"start":"1591818921","content":"","stopReason":2}}}
     2020-06-10 21:47:39   state           pauseCleaning
Attributes:
   IODev      myEcovacsClient
   autocreate 0
   devicetopic bb5d3df7-0ec5-4f38-b930-b6e0ed03b963/yna5xi/GMth
   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_cleanState_id:0 body_data_cleanState_motionState:CleaningState body_data_cleanState_router:0 body_data_cleanState_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/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* charge_p
iot/p2p/clean/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* clean_p
iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* clean_q
iot/p2p/getAdvancedMode/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getAdvancedMode_p
iot/p2p/getAdvancedMode/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getAdvancedMode_q
iot/p2p/getBattery/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBattery_p
iot/p2p/getBattery/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getBattery_q
iot/p2p/getBlock/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBlock_p
iot/p2p/getBlock/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getBlock_q
iot/p2p/getBreakPoint/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getBreakPoint_p
iot/p2p/getBreakPoint/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getBreakPoint_q
iot/p2p/getCachedMapInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getCachedMapInfo_p
iot/p2p/getCachedMapInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getCachedMapInfo_q
iot/p2p/getChargeState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getChargeState_p
iot/p2p/getChargeState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getChargeState_q
iot/p2p/getCleanInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* CleanInfo_p
iot/p2p/getCleanInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* CleanInfo_q
iot/p2p/getError/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getError_p
iot/p2p/getError/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getError_q
iot/p2p/getLifeSpan/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getLifeSpan_p
iot/p2p/getLifeSpan/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getLifeSpan_q
iot/p2p/getMajorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMajorMap_p
iot/p2p/getMajorMap/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMajorMap_q
iot/p2p/getMapSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapSet_p
iot/p2p/getMapSet/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMapSet_q
iot/p2p/getMapState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapState_p
iot/p2p/getMapState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMapState_q
iot/p2p/getMapSubSet/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapSubSet_q
iot/p2p/getMapSubSet/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMapSubSet_p
iot/p2p/getMapTrace/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMapTrace_q
iot/p2p/getMapTrace/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMapTrace_p
iot/p2p/getMinorMap/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getMinorMap_p
iot/p2p/getMinorMap/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getMinorMap_q
iot/p2p/getPos/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getPos_q
iot/p2p/getPos/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getPos_p
iot/p2p/getRelocationState/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getRelocationState_p
iot/p2p/getRelocationState/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getRelocationState_q
iot/p2p/getSched/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getSched_q
iot/p2p/getSched/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getSched_p
iot/p2p/getSleep/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getSleep_p
iot/p2p/getSleep/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getSleep_q
iot/p2p/getStats/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getStats_p
iot/p2p/getStats/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getStats_q
iot/p2p/getWaterInfo/$DEVICETOPIC/helperbot/bumper/helperbot/p/[^/]+/j:.* getWaterInfo_p
iot/p2p/getWaterInfo/helperbot/bumper/helperbot/$DEVICETOPIC/q/[^/]+/j:.* getWaterInfo_q
   room       Saugroboter
   setList    startCleaning:noArg iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/AlLo/j {"body": {"data": {"act": "start", "type": "auto"}}}
pauseCleaning:noArg iot/p2p/clean/helperbot/bumper/helperbot/$DEVICETOPIC/q/AlLo/j {"body": {"data": {"act": "stop", "type": "auto"}}}
goCharging:noArg iot/p2p/charge/helperbot/bumper/helperbot/$DEVICETOPIC/q/aOdY/j {"body": {"data": {"act": "go"}}}



edit:

Bumper auf Raspi is irgendwie....doof. Beispiel, nicht alle benötigten Packte oder alte Version per "apt-get install python3-{packetname}"
Pip ist da schon besser. Hab es aber immer noch nicht am laufen ....

KölnSolar

das sieht doch wieder aufgeräumter aus.

die queries(...._q) könnte man zusammenfassen. Ich seh da nix interessantes, zumal es zukünftig ja keine app gibt, sondern nur die FHEM-gets. Und da müsste man entscheiden, was man im 1. Schritt machen möchte: getBattery_q, getChargeState_q, getError_q, getLifeSpan_q, getSleep_q, getStats_q, getWaterInfo_q. Siehst Du mehr notwendige Info ?

Ich würd das dann wieder zusammenbasteln.
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, es kommen noch Infos dazu. Saugkraft ist ein Beispiel. Die muss ich noch raussuchen, plus ein paar andere.

Mal ein Beispiel für die Wasserdurchflussmenge für set

iot/p2p/getWaterInfo
"data":{"enable":0,"amount":2}}}
amount 1 = Niedrig
amount 2 = Mittel
amount 3 = Hoch
amount 4 = Sehr hoch