mrbungle64 / ioBroker.ecovacs-deebot

Control your Ecovacs Deebot and yeedi vacuum cleaner with ioBroker
MIT License
65 stars 11 forks source link

spotAreaName nicht mehr vorhanden #125

Closed bellerG closed 3 years ago

bellerG commented 3 years ago

Hallo, ich habe einen "DEEBOT OZMO 950 Series", die Steuerung funktionen ohne Probleme. Es wird seit ein paar Tagen allerdings die "spotAreaName" nicht mehr ausgefüllt bzw. wenn ich den Adapter lösche und neu installiere, die Datenpunkte überhaupt nicht mehr angelegt.

Dabei ist es egal welche Einstellungen ich verwenden (DE/EN) (kein Sync/neue/alle). Probiert mit der Stable und aktueller Alpha. In der App sind die Bereiche zugeordnet, ich habe es auch mal auf (A,B,C) geändert, dies hat keinen Unterschied gemacht.

Anbei ein Log, wenn er sich alle Daten zieht:

{Gekürzt, siehe Verlauf...}

mrbungle64 commented 3 years ago

Hallo @bellerG,

ich habe das bei mir gerade noch mal kurz getestet - noch kann ich das Problem nicht nachstellen. Bei mir werden die Datenpunkte vollständig neu erstellt.

Auf den ersten Blick ist mir aber folgendes aufgefallen: Du hast 2 Karten, richtig? Bei der zweiten gibt es scheinbar keine Areas. Evtl. ist auch eine davon schon wieder gelöscht. Kannst Du das mal bitte prüfen?

bellerG commented 3 years ago

@mrbungle64, danke für die schnelle Antwort.

In der App habe ich nur eine Karte. Ich habe dort jetzt auch mal den "Mehrgeschossmodus" aus gemacht (normal habe ich diesen An, damit er meine Karte nicht löscht, wenn das Kleinkind den Robi ärgert).

Dies macht aber leider auch keinen Unterschied:

{Gekürzt, siehe Verlauf...}

mrbungle64 commented 3 years ago

@bellerG

Die API scheint aber weiterhin Informationen zu 2 Karten rauszugeben:

2021-03-02 12:23:15.227 - debug: ecovacs-deebot.0 (3350626) state change map.currentMapName => Dettelbach 
2021-03-02 12:23:15.228 - debug: ecovacs-deebot.0 (3350626) state change map.currentMapMID => 792647719 
2021-03-02 12:23:15.228 - debug: ecovacs-deebot.0 (3350626) state change map.currentMapIndex => 0 
2021-03-02 12:23:15.273 - debug: ecovacs-deebot.0 (3350626) state change map.mapID => 792647719 
2021-03-02 12:23:15.273 - debug: ecovacs-deebot.0 (3350626) state change map.mapName => Dettelbach 
2021-03-02 12:23:15.273 - debug: ecovacs-deebot.0 (3350626) state change map.mapIsAvailable => true 
2021-03-02 12:23:15.273 - debug: ecovacs-deebot.0 (3350626) state change map.mapDeactivationTimestamp => null 
2021-03-02 12:23:15.274 - debug: ecovacs-deebot.0 (3350626) state change map.mapID => 1956874869 
2021-03-02 12:23:15.274 - debug: ecovacs-deebot.0 (3350626) state change map.mapName => 
2021-03-02 12:23:15.274 - debug: ecovacs-deebot.0 (3350626) state change map.mapIsAvailable => true 
2021-03-02 12:23:15.274 - debug: ecovacs-deebot.0 (3350626) state change map.mapDeactivationTimestamp => null 

Da könnte es sein, dass dann dabei etwas durcheinander kommt. Ich schaue mir das dann später mal in Ruhe an.

bellerG commented 3 years ago

@mrbungle64 Wenn es noch was gibt wie ich dich dabei unterstütze kann, lass es mich gerne wissen. Vielen Dank für deine Mühen.

mrbungle64 commented 3 years ago

@bellerG

Wenn es noch was gibt wie ich dich dabei unterstütze kann, lass es mich gerne wissen

Ja, Du könntest bitte das Formular noch ausfüllen (in Englisch oder Deutsch), welches schon bei den Bug Reports voreingetragen ist (Bitte beim nächsten mal direkt machen) Bei "Adapter version" und "Source/Repo" bitte alles aufführen wo Du das fehlerhafte Verhalten festgestellt hast.

Ich habe es bereits auf Deinen Fall angepasst bzw. gekürzt:

Software version and sources:

Please enter the following values:

Additional information

bellerG commented 3 years ago

Klar:

Software version and sources: Adapter version: 1.1.2-alpha.1 (0.6.0-alpha.6) (Sowie auch aktuelle Stable) Source/Repo: "ioBroker Stable" sowie "Latest von GitHub" Node.js version: v15.10.0 JS controller version: 3.1.6 Operating system: Linux "CentOS" Hardware: vServer (Netcup macht es mit KVM-Virtualisierung) Please enter the following values:

"info.canvasModuleIsInstalled": true Additional information

Were there any changes in the system environment recently? Kein Fehler, es lässt sich alles Steuern. Hat vorher funktioniert, ca. eine Woche. Ich probiere auch noch eine weitern Stockwerkarte zu erstellen, allerdings sollte es ja auch mit einer Karte (in der App) funktionieren. Ich kann die "Dummy"-Karte beim Hersteller nicht beeinflussen/löschen.

mrbungle64 commented 3 years ago

@bellerG

Node.js version: v15.10.0

Das ist eine Entwicklerversion von Node.js. Das ist weder für ioBroker noch für den Adapter empfohlen: https://github.com/ioBroker/ioBroker.js-controller#compatibility https://github.com/mrbungle64/ioBroker.ecovacs-deebot#installation Es macht wenig Sinn das Stable Repo von ioBroker zu benutzen und dann gleichzeitig eine Entwicklerversion von Node.js ...

Wann hast Du auf diese Version upgedatet?

bellerG commented 3 years ago

@mrbungle64 Verwende ich schon länger, dafür gab es keinen bestimmten Grund. Ich habe jetzt das Update des js-controller auf die Stable 3.2 gemacht und bin dabei auf die empfohlene Node.js 12 (v12.21.0).

Am verhalten ändert dies leider nichts, die Datenpunkte "spotAreaname" sind nicht vorhanden. Die Dummy-Karte noch vorhanden.

mrbungle64 commented 3 years ago

@mrbungle64 Verwende ich schon länger, dafür gab es keinen bestimmten Grund. Ich habe jetzt das Update des js-controller auf die Stable 3.2 gemacht und bin dabei auf die empfohlene Node.js 12 (v12.21.0).

@bellerG ok, super 👍🏻

Am verhalten ändert dies leider nichts, die Datenpunkte "spotAreaname" sind nicht vorhanden. Die Dummy-Karte noch vorhanden.

Ich hatte bereits angefangen den zugehörigen Code ein bisschen auszuräumen. Ich melde mich dann, wenn ich entweder das Problem gefunden habe oder noch Fragen bzw. Infos habe.

mrbungle64 commented 3 years ago

@bellerG Kannst Du mal die 1.1.2-alpha.2 probieren? Bitte mit folgender URL: https://github.com/mrbungle64/ioBroker.ecovacs-deebot/archive/1.1.2-alpha.2.zip Vor dem Neustart des Adapters mal den "map" Channel oder zumindest den "spotAreas" Channel der Maps löschen.

bellerG commented 3 years ago

@mrbungle64 Habe ich direkt so gemacht. Die Datenpunkt sind jetzt auf beiden Karten, allerdings leer.

{Gekürzt, siehe Verlauf...}

mrbungle64 commented 3 years ago

@bellerG

Das ist jetzt nur ein Ausschnitt über weniger als 20 Sekunden. Kannst Du bitte noch mal schauen, ob die Datenpunkte danach noch befüllt wurden?

bellerG commented 3 years ago

@mrbungle64 Ok sorry, es hat sich nichts geändert. Ich habe jetzt nochmal alles gelöscht und länger den Log gezogen: In der App sind alle Bereichen festgelegt, ich habe auch nur Standardwerte also Schlafzimmer, Wohnzimmer, Bad und Küche

{Gekürzt, siehe Verlauf...}

mrbungle64 commented 3 years ago

@bellerG Hattest Du den Namen der Map ("Dettelbach") vorher in der Mobile App entfernt?

bellerG commented 3 years ago

@mrbungle64 ich hatte wie oben beschrieben zu testen den "Mehrgeschossmodus" deaktiviert, dann gibt es ja eigentlich nur noch eine Karte, die Karten haben dann wohl keinen Namen mehr. Ich haben den Modus jetzt wieder aktiviert und die Karte umbenannt, in beiden Fällen hat sich nichts geändert. Der Namen wird korrekt in den Datenpunkt nachgetragen.

Unter https://github.com/bellerG/DummyForPrivateMessage habe ich dir mal die Daten geschickt.

mrbungle64 commented 3 years ago

@mrbungle64 ich hatte wie oben beschrieben zu testen den "Mehrgeschossmodus" deaktiviert, dann gibt es ja eigentlich nur noch eine Karte, die Karten haben dann wohl keinen Namen mehr. Ich haben den Modus jetzt wieder aktiviert und die Karte umbenannt, in beiden Fällen hat sich nichts geändert. Der Namen wird korrekt in den Datenpunkt nachgetragen.

Unter https://github.com/bellerG/DummyForPrivateMessage habe ich dir mal die Daten geschickt.

Welche Daten meinst Du?

bellerG commented 3 years ago

@mrbungle64 Ich habe dir dafür eine Einladung geschickt du müsstest damit die https://github.com/bellerG/DummyForPrivateMessage/blob/main/README.md lesen können.

mrbungle64 commented 3 years ago

@mrbungle64 Ich habe dir dafür eine Einladung geschickt du müsstest damit die https://github.com/bellerG/DummyForPrivateMessage/blob/main/README.md lesen können.

@bellerG Gute Idee 👍🏻

Also ich sehe die spotAreaName Datenpunkte mit Inhalt. Nr 3. ist z.B. die Küche ("Kitchen" ist der Wert).

Ich vermute mal, dass bei Deiner Netzwerk-Umgebung die Events in einer "suboptimalen" Reihenfolge oder sonstwie ungünstig rein kommen oder verarbeitet werden. Ein echter Fehler scheint ja nicht vorzuliegen - ansonsten würde es sich bei mir genauso seltsam bzw. fehlerhaft verhalten.

Ich muss da weiter optimieren, so dass das nicht mehr vorkommen kann oder es zumindest minimiert wird.

mrbungle64 commented 3 years ago

@bellerG Du kannst es aber natürlich unabhängig davon noch mal probieren, ob die Datenpunkte bei Dir nun auch befüllt werden.

bellerG commented 3 years ago

@mrbungle64 Das ist ja sehr spannend, ich habe jetzt mal alle Adapter (außer Admin.0) deaktiviert, den Deebot-Adapter gelöscht und neu Installiert (Alpha2). Und dann mit den Standardeinstellungen gestartet -> leider hat sich nichts geändert. Ich habe dann auch nochmal die Datenpunksprache auf Deutsch gestellt -> ebenso.

Kann das noch an anderen Softwareversion (Node, IoBroker) liegen?

{Gekürzt, siehe Verlauf...}

mrbungle64 commented 3 years ago

@bellerG Probier mal bitte die 1.1.2-alpha.3 https://github.com/mrbungle64/ioBroker.ecovacs-deebot/archive/1.1.2-alpha.3.zip

bellerG commented 3 years ago

@mrbungle64 Ich habe das Update gemach, alle Datenpunkte gelöscht und neu in DE/EN laufen lassen. Welchen Version verwendest du von Nodejs und iobroker, ich will es mal mit diesen testen.

{Gekürzt, siehe Verlauf...}

mrbungle64 commented 3 years ago

@bellerG Auf dem System womit ich Deine Daten drin habe: Node.js: v14.15.4 JS-Controller: 3.2.16

mrbungle64 commented 3 years ago

@bellerG Ich habe gerade noch mal ein Update von Node.js v14.16.0 gemacht. Die Datenpunkte werden auch damit befüllt. Aktuell scheint der Roboter im Schlafzimmer zu sein 😉

bellerG commented 3 years ago

@mrbungle64 Ich bin jetzt auch (node: v14.16.0, js-controller: 3.2.16, Version 1.1.2-alpha.3), ich habe dabei den Adapter vorher gelöscht und nochmal neu geladen und installiert.

Danach haben wir in einen anderen Stockwerk eine zweite Karte mit Bereichen erstellt. In der App habe ich jetzt also zwei (gespeicherte) Karten. Leider werden auch hier die Bereichen nicht "übertragen".

BTW. durch diese zweite Karte habe ich jetzt auch keine Dummy-Karte mehr sondern wirklich nur zwei in den Datenpunkten.

{Gekürzt, siehe Verlauf...}

mrbungle64 commented 3 years ago

@bellerG

Danach haben wir in einen anderen Stockwerk eine zweite Karte mit Bereichen erstellt. In der App habe ich jetzt also zwei (gespeicherte) Karten. Leider werden auch hier die Bereichen nicht "übertragen". BTW. durch diese zweite Karte habe ich jetzt auch keine Dummy-Karte mehr sondern wirklich nur zwei in den Datenpunkten.

Ich sehe jetzt 2 Karten mit den Namen "Oben" und "Unten". Bei der Karte "Oben" ist die Benennung "A" und "B". Bei der Karte "Unten" sind die Bereiche benannt nach "Bedroom" etc. Die Datenpunkte werden bei mir nach wie vor befüllt ... Wir werden wohl weiter nach der Ursache suchen müssen, warum ein und die selbe Quelle mit der gleichen Adapter Version (inkl. anderer relevanter Komponenten) zu unterschiedlichen Ergebnissen führt. Ich mache mir heute Abend noch mal Gedanken dazu.

bellerG commented 3 years ago

Wir werden wohl weiter nach der Ursache suchen müssen, warum ein und die selbe Quelle mit der gleichen Adapter Version (inkl. anderer relevanter Komponenten) zu unterschiedlichen Ergebnissen führt. Ich mache mir heute Abend noch mal Gedanken dazu.

Super danke für deine Mühen. Als Anmerkung, die Steuerung funktioniert komplett, also auch die "cleanSpotArea"-Buttons.

bellerG commented 3 years ago

Anbei noch meine anderen Softwarestände, vielleicht hilft das ja.

image

mrbungle64 commented 3 years ago

Anbei noch meine anderen Softwarestände, vielleicht hilft das ja.

@bellerG CentOS ist jetzt vielleicht nicht das gängigste Linux wo ioBroker drauf läuft mit den meisten Erfahrungswerten, aber das sollte ja trotzdem passen. Ansonsten sehe ich auch nichts, was mit der Problematik zun tun haben sollte...

bellerG commented 3 years ago

@mrbungle64 Hast du noch Ideen was ich noch testen kann? Das OS kann ich leider nicht ändern, ich habe auch anderweitig überhaupt keine Probleme mit ioBroker oder Adaptern.

mrbungle64 commented 3 years ago

@mrbungle64 Hast du noch Ideen was ich noch testen kann? Das OS kann ich leider nicht ändern, ich habe auch anderweitig überhaupt keine Probleme mit ioBroker oder Adaptern.

@bellerG Nein, leider noch nicht. Irgendwie bekommt der die entsprechenden Events ("MapSpotAreaInfo") nicht rein. Ich tippe eher auf irgendwas Richtung Netzwerk als dass es das OS ist. CentOS sollte schon passen.

Ich baue heute Abend mal ein paar weitere Logausgaben ein. Dann erfahren wir hoffentlich mehr 😉

Ich hatte übrigens Deinen Bot ohne irgendwelche Änderungen an der Adapter-Config eingebunden. Das hattest Du aber auch schon mit den Default-Werten probiert, oder?

bellerG commented 3 years ago

@mrbungle64 Ich habe so gut wie alle Konfigs durch, welche möglich sind ;) Natürlich auch schon öfters die Instanz und Adapter komplett gelöscht und dann mit Standardeinstellungen neu eingebunden.

Ja da es schon im Debug nicht enthalten ist, spricht für die Kommunikation, was aber auch komisch ist, da alle anderen Datenpunkte ja befüllt werden. Die Quelle der Date ist doch wahrscheinlich immer die selbe Ecovacs-Cloud/API?

Ich habe mal den ganzen Baum exportiert, vielleicht kannst du ja mal mit einen Json-Diff schauen ob vielleicht doch noch anderen Datenpunkte fehlen/leer sind, was auf die Ursache hinweisen könnte:

(Datenpunkt mit Default-Adapter-Werten) ecovacs-deebot.0.json.txt

mrbungle64 commented 3 years ago

@bellerG

Die Quelle der Date ist doch wahrscheinlich immer die selbe Ecovacs-Cloud/API?

Ja, bis auf die Reinigungsprotokolle kommen die eigentlich alle über die selbe API rein.

Ich habe noch ein paar Logausgaben eingebaut - kannst Du bitte mal den aktuellen Stand von GitHub installieren (trägt noch die Versison 1.1.2-alpha.3) und den Adapter auf Level "silly" stellen und bei der Logausgabe die Meldungen nach "[silly]" filtern. Da sollten dann ein paar Ausgaben kommen, wenn der die Map Daten verarbeitet.

bellerG commented 3 years ago

@mrbungle64

Ok habe ich gleich mal gemacht, habe vorher alle Datenpunkte gelöscht damit er alles komplett zieht.

{Gekürzt, siehe Verlauf...}

mrbungle64 commented 3 years ago

@bellerG Die Events für die einzelnen Spot Areas kommen leider nicht rein. Die API wird noch korrekt angefordert - aber es kommt nichts zurück.

Basis-Daten für die Maps werden verarbeitet:

2021-03-11 20:35:20.652  ... [processMaps] Processing map data

Erweiterte Daten für die 2 Maps (792647719, 33564560) werden angefordert:

2021-03-11 20:35:20.653  ... [processMaps] Run GetSpotAreas cmd for mapID: 792647719 
2021-03-11 20:35:20.654  ... [processMaps] Run GetSpotAreas cmd for mapID: 33564560 

Erweiterte Daten für die Map 33564560 werden verarbeitet:

2021-03-11 20:35:20.712  ... [processSpotAreas] Processing spot areas for mapID 33564560 

und die Daten für die zugehörigen Spot Areas 0 und 1 werden angefordert:

2021-03-11 20:35:20.719  ... [processSpotAreas] Run GetSpotAreaInfo cmd for mapID 33564560 and spotAreaID 0 
2021-03-11 20:35:20.720  ... [processSpotAreas] Run GetSpotAreaInfo cmd for mapID 33564560 and spotAreaID 1 

Erweiterte Daten für die Map 792647719 werden verarbeitet:

2021-03-11 20:35:20.731  ... [processSpotAreas] Processing spot areas for mapID 792647719 

und die Daten für die zugehörigen Spot Areas 0, 1, 2, 3 und 4 werden angefordert:

2021-03-11 20:35:20.758  ... [processSpotAreas] Run GetSpotAreaInfo cmd for mapID 792647719 and spotAreaID 0 
2021-03-11 20:35:20.759  ... [processSpotAreas] Run GetSpotAreaInfo cmd for mapID 792647719 and spotAreaID 1 
2021-03-11 20:35:20.759  ... [processSpotAreas] Run GetSpotAreaInfo cmd for mapID 792647719 and spotAreaID 3 
2021-03-11 20:35:20.760  ... [processSpotAreas] Run GetSpotAreaInfo cmd for mapID 792647719 and spotAreaID 4

Dann kommt aber jeweils nix mehr zurück ...

mrbungle64 commented 3 years ago

@bellerG Kannst Du mal bitte schauen, ob vielleicht was im Log vom Router zu finden ist? Hast Du vielleicht sonst noch was dazwischen (z.B. Proxy, Firewall) was da evtl. Pakete blockieren oder auch cachen könnte?

bellerG commented 3 years ago

@mrbungle64 Die FW ist noch ein guter Einfall.

Ich habe ein Standard CentOS, hier läuft also nur firewalld (was nur auf komplette Ports/IP filtert, kein DPI). Da der Server direkt im Rechenzentrum steht, kommt danach nichts mehr.

Trotzdem natürlich ein Test.

systemctl stop firewalld.service

systemctl status firewalld.service

● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Fri 2021-03-12 08:58:27 CET; 8min ago Docs: man:firewalld(1) Process: 980 ExecStart=/usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS (code=exited, status=0/SUCCESS)
Main PID: 980 (code=exited, status=0/SUCCESS)

Hat leider nicht geholfen, ich habe auch mal zum Test in den Adapter den Standort geändert (andere Serverlocation?), leider funktioniert dann die Anmeldung nicht mehr.

mrbungle64 commented 3 years ago

@bellerG

Da der Server direkt im Rechenzentrum steht, kommt danach nichts mehr.

Der Server wo ioBroker drauf läuft steht in einem (entfernten) Rechenzentrum?

bellerG commented 3 years ago

@mrbungle64 Genau, ich hatten es oben bei der Hardware erwähnt.

Operating system: Linux "CentOS" Hardware: vServer (Netcup macht es mit KVM-Virtualisierung)

Zum Heimnetz läuft das ganze über ein VPN in ein separates IOT-Netz in diesem sind nur die IOT-Geräte (Robi, Alexa, Steckdosen...)

Konntest du schon mal den JSON-Export der Datenpunkt mit deinen Vergleichen. Alle anderen Datenpunkte und Funktionen zum Roboter scheinen komplett zu funktionieren.

mrbungle64 commented 3 years ago

@mrbungle64 Genau, ich hatten es oben bei der Hardware erwähnt.

Operating system: Linux "CentOS" Hardware: vServer (Netcup macht es mit KVM-Virtualisierung)

Zum Heimnetz läuft das ganze über ein VPN in ein separates IOT-Netz in diesem sind nur die IOT-Geräte (Robi, Alexa, Steckdosen...)

Ah ok, Netcup war mir kein Begriff. Virtuelle Server sind ja inzwischen auch zuhause schon fast Standard geworden 😉

Konntest du schon mal den JSON-Export der Datenpunkt mit deinen Vergleichen. Alle anderen Datenpunkte und Funktionen zum Roboter scheinen komplett zu funktionieren.

Ich habe nur mal kurz reingeschaut - aber das wird ja eher nicht das Problem sein, weil ja wie gesagt die Events nicht rein kommen. Der kommt ja gar nicht so weit, dass die Datenpunkte (an dieser Stelle) relevant werden.

Ich werde wohl die Log-Ausgaben weiter ausbauen müssen 😉 Meine Vermutung geht weiter in Richtung Netzwerk/Datenverkehr

mrbungle64 commented 3 years ago

@bellerG Ich hab deinen Bot jetzt noch mal auf einer Fedora 32 Installation (ist ja verwandt mit CentOS) eingebunden - auch da werden die SpotArea Datenpunkte vollständig befüllt.

mrbungle64 commented 3 years ago

@bellerG Ich baue das mal soweit um, dass die Kommandos jeweils in's nächste Intervall gehängt werden, anstatt dass die direkt ausgeführt werden. Vielleicht ist im Rechenzentrum die Anbindung ja so gut, dass da eine Verzögerung rein muss.

mrbungle64 commented 3 years ago

@bellerG Hab eben den Commit gemacht. Bin gespannt, ob es was bringt 😉 Kannst das Intervall bitte mal zu Sicherheit auf 30 oder 60 Sek. stellen.

bellerG commented 3 years ago

@mrbungle64 Ich habe das Update gemacht und in den Einstellungen das Abfrageintervall von 60 auf 30 gesetzt. Danach habe ich auf eine Bereichsreinigung über den Button gemacht. Dies hat alles funktioniert. Die Namen fehlen noch.

{Gekürzt, siehe Verlauf...}

bellerG commented 3 years ago

@mrbungle64 Ich habe das Update gemacht und in den Einstellungen das Abfrageintervall von 60 auf 30 gesetzt. Danach habe ich auf eine Bereichsreinigung über den Button gemacht. Dies hat alles funktioniert. Die Namen fehlen noch.

{Gekürzt, siehe Verlauf...}

bellerG commented 3 years ago

@mrbungle64

Mir ist gerade noch aufgefalle, das sich die Spot-Buttons nur in Bereich 0 & 1 habe, Bereich 2 fehlt komplett. Ich habe den Adapter auch mal länger laufen lassen und neu gestartet, dies bleibt gleich.

Ist das bei dir auch so?

image

mrbungle64 commented 3 years ago

@bellerG

Ist das bei dir auch so?

Ja stimmt - die fehlen auch bei mir. Das ist noch mal ein guter Hinweis in welcher Richtung das Problem vielleicht zu finden ist.

Die Namen sind aber weiterhin da ....

Screenshot_20210313_113437

bellerG commented 3 years ago

@mrbungle64 Da die kleine gerade Schlafen will habe ich ihn zurückfahren lassen. Der Befehl hat funktioniert, aber im Log steht dies:

npm -version 6.14.11

(435573) starting. Version 1.1.2-alpha.3 in /opt/iobroker/node_modules/iobroker.ecovacs-deebot, node: v14.16.0, js-controller: 3.2.16 ...

ecovacs-deebot.0 2021-03-13 11:43:59.028 error the module (for instance, using npm rebuild or npm install).
ecovacs-deebot.0 2021-03-13 11:43:59.028 error NODE_MODULE_VERSION 83. Please try re-compiling or re-installing
ecovacs-deebot.0 2021-03-13 11:43:59.028 error NODE_MODULE_VERSION 64. This version of Node.js requires
ecovacs-deebot.0 2021-03-13 11:43:59.028 error was compiled against a different Node.js version using
ecovacs-deebot.0 2021-03-13 11:43:59.028 error (435573) The module '/opt/iobroker/node_modules/canvas/build/Release/canvas.node'
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Function.Module._load (internal/modules/cjs/loader.js:769:14)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Module.load (internal/modules/cjs/loader.js:928:32)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Module._compile (internal/modules/cjs/loader.js:1063:30)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Object. (/opt/iobroker/node_modules/canvas/lib/bindings.js:3:18)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at require (internal/modules/cjs/helpers.js:88:18)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Module.require (internal/modules/cjs/loader.js:952:19)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Function.Module._load (internal/modules/cjs/loader.js:769:14)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Module.load (internal/modules/cjs/loader.js:928:32)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error at Object.Module._extensions..node (internal/modules/cjs/loader.js:1122:18)
ecovacs-deebot.0 2021-03-13 11:43:59.028 error the module (for instance, using npm rebuild or npm install).
ecovacs-deebot.0 2021-03-13 11:43:59.028 error NODE_MODULE_VERSION 83. Please try re-compiling or re-installing
ecovacs-deebot.0 2021-03-13 11:43:59.028 error NODE_MODULE_VERSION 64. This version of Node.js requires
ecovacs-deebot.0 2021-03-13 11:43:59.028 error was compiled against a different Node.js version using
ecovacs-deebot.0 2021-03-13 11:43:59.028 error (435573) Error: The module '/opt/iobroker/node_modules/canvas/build/Release/canvas.node'
ecovacs-deebot.0 2021-03-13 11:43:59.027 error the module (for instance, using npm rebuild or npm install).
ecovacs-deebot.0 2021-03-13 11:43:59.027 error NODE_MODULE_VERSION 83. Please try re-compiling or re-installing
ecovacs-deebot.0 2021-03-13 11:43:59.027 error NODE_MODULE_VERSION 64. This version of Node.js requires
ecovacs-deebot.0 2021-03-13 11:43:59.027 error was compiled against a different Node.js version using
ecovacs-deebot.0 2021-03-13 11:43:59.027 error (435573) uncaught exception: The module '/opt/iobroker/node_modules/canvas/build/Release/canvas.node'
mrbungle64 commented 3 years ago

@bellerG Den Fehler mit den Buttons sollte behoben sein. Die wurden korrekt erstellt - dann aber wieder gelöscht, weil die erste Map nur 2 SpotAreas hatte. An dieser Stelle wurde die MapID nicht geprüft - daher kamen sich die Maps in die Quere...

Ansonsten habe ich auch noch ein paar Sachen umgebaut. Evtl. könnte es bei Dir auch beim Befüllen der Datenpunkte noch Verbesserungen geben. Das ist aber erst mal nur eine Hoffnung 😉 Ich denke weiterhin, dass das Problem durch eine Race Condition ausgelöst wird, die in Deiner Umgebung eher auftritt als in meiner.

Wenn Du wieder testest musst Du übrigens keine Reinigung starten. Es reicht i.d.R. den "map" Ordner vor dem Update zu löschen.

mrbungle64 commented 3 years ago

@bellerG Nur zur Sicherheit: Die Links zu den alpha-Versionen mit .zip am Ende sind übrigens immer nur der jeweils aktuelle Snapshot. Beim jeweils nächsten Update von GitHub müsstest Du diesen Link hier benutzen: https://github.com/mrbungle64/ioBroker.ecovacs-deebot.git