NEWS
MieleCloudService Adapter
-
@deta ich kann meine Maschine über den State ausschalten. Scheinbar ist bei deiner Miele verschiedenes nicht implementiert.
-
@Grizzelbee
Das Hinzufügen einer Wärmeschublade (Dish Warmer) führte zum Anlegen der Datenpunkte, die laut API-Dokumentation verfügbar sind. Der Swagger liefert jedoch sinnvolle Daten für sechs weitere Datenpunkte:
ProgramID, programPhase, remainingTime, targetTemperature, temperature, signalDoor.Wäre es möglich, diese States auch im Adapter zur Verfügung zu stellen? Mit dem für den Spüler undokumentierten Datenpunkt „Light“ hatte Vergleichbares damals problemlos geklappt.
Zudem sollte sich die targetTemperature der Schublade anscheinend als Action setzen lassen.
PS: Diesmal dürfte das Anliegen etwas greifbarer sein als die Problematik der ausbleibenden Aktualisierungen - kurzes Update dazu: Das Ganze scheint phasenweise aufzutreten, seit einigen Wochen läuft es wieder stabil (allerdings habe ich den täglichem Neustart per Skript noch nicht deaktiviert).
-
@skb sagte in MieleCloudService Adapter:
@deta ich kann meine Maschine über den State ausschalten. Scheinbar ist bei deiner Miele verschiedenes nicht implementiert.
Der Status ändert sich ja, wenn ich am Manuellen Schalter an der Maschiene es aus und einschalte. Nur wenn ich den State direkt in den Objekten schalte passiert nix an der Maschiene. Welche Maschine hast du?
-
@deta Ich sagte ja, das unsere Maschine ausgeht, wenn ich den State setze.
Vielleicht mal gucken, ob der Readonly ist? -
Was mir noch aufgefallen ist, das übernacht, der Adapter zwar die Maschiene sieht, ist true online, aber es werden keine Daten mehr Angezeigt,besser aktualisiert. Erst nach neustart des Adapter gehts wieder.
Ist das normal?
-
@skb sagte in MieleCloudService Adapter:
@deta Ich sagte ja, das unsere Maschine ausgeht, wenn ich den State setze.
Vielleicht mal gucken, ob der Readonly ist?Nein ist nicht Readonly. Ich warte mal, bis ich Antwort vom Support bekommen habe,
was die Wasser und Energieverbrauch angeht habe. Dann werde ich mal versuchen,
das mit dem Ein/Ausschalten noch zu klären.
Ich vermute, das die Maschiene zu neu ist und nicht alles implementiert ist.
Mal Abwarten. -
@deta Miele ist eine Marke, die beständig ist.
Somit denke ich nicht, das die Software auf der Maschine nun signifikante Änderungen hat.
Unsere Maschine ist von Dezember und hat die States, die ich aufgeführt habe. -
@deta said in MieleCloudService Adapter:
Erst nach neustart des Adapter gehts wieder.
Ist das normal?
Ja, ist bei mir auch manchmal so. Habe es durch einen regelmäßigen Neustart des Adapters umschifft. Musst Du mal testen, ob es täglich oder wöchentlich sein muss.
Ist im Moment ein wenig lästig, da sich meine Kaffeemaschine beim Adapterstart immer einschaltet.
Aber der Entwickler ist da schon "dran".@Grizzelbee Kann man eigentlich den Rewrite-Branch schon testen oder wäre das Quatsch?
-
@deta ich hatte gerade mal geschaut - deine Maschine ist die mit dem orangen Display - das ist nicht das voll-digitale Display. Somit kann es leider sein, das hier Informationen fehlen.
-
@rekorboi sagte in MieleCloudService Adapter:
Das Hinzufügen einer Wärmeschublade (Dish Warmer) führte zum Anlegen der Datenpunkte, die laut API-Dokumentation verfügbar sind. Der Swagger liefert jedoch sinnvolle Daten für sechs weitere Datenpunkte:
ProgramID, programPhase, remainingTime, targetTemperature, temperature, signalDoor.Kein Problem - kann ich gerne machen. Habe für die 6.0 (an der ich gerade arbeite) mal einen issue geöffnet, damit ich das nicht vergesse.
https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/216
@deta sagte in MieleCloudService Adapter:
Der Status ändert sich ja, wenn ich am Manuellen Schalter an der Maschiene es aus und einschalte. Nur wenn ich den State direkt in den Objekten schalte passiert nix an der Maschiene. Welche Maschine hast du?
Ich habe eine WWE660 und bei mir funktioniert das alles - incl. Ein-/Ausschalten, Eco Feedback etc. Das ist aber tatsächlich Modellabhängig ob da etwas passiert oder nicht. Guck dir bitte mal die Readme zum Adapter und die Doku von Miele an. Das ist leider nicht ganz trivial und (meiner Meinung nach) an verschiedenen Stellen Unglücklich von Miele gelöst -aber das ist Mieles Entscheidung was zur Verfügung gestellt wird, für welche Modelle und wie.
Readme des Adapters: https://github.com/Grizzelbee/ioBroker.mielecloudservice
Doku von Miele: https://www.miele.com/developer/swagger-ui/index.html
Voraussetzungen, damit etwas geschaltet werden kann: https://www.miele.com/developer/swagger-ui/put_additional_info.htmlZum Problem, das der Adapter nach einer Weile nicht mehr aktualisiert: Ist bekannt und sollte in der nächsten Version behoben sein:
https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/192Für den Rest kann ich mich @skb nur anschließen: Auch Miele hat verschiedene Preis- und Leistungsklassen; nicht alle Modelle liefern alle Möglichkeiten und/oder Informationen. Ich kenne allerdings auch keine Liste wo man das mal nachlesen und vergleichen könnte. An ein: "Modell ist zu neu." glaube ich da auch nicht. Die API funktioniert für alle Geräte über alle Geräteklassen hinweg genau gleich (durchaus zu meinem Leidwesen).
@oxident sagte in MieleCloudService Adapter:
@Grizzelbee Kann man eigentlich den Rewrite-Branch schon testen oder wäre das Quatsch?
Den kannst du aktuell nur zum Spass in einer Testumgebung ausprobieren.
Der sollte für alle Geräteklassen, den Objektbaum erzeugen, alle Werte lesen und regelmäßig aktualisieren (ohne auszusteigen). Ein paar wenige erste Aktionen sind implementiert - aber ich glaube primär für die Kaffeeautomaten (Licht ausschalten funktioniert! ). Ich versuche gerade den neuen /programs Endpunkt zu verstehen und zu implementieren. Die meisten Aktionen werden aber noch nicht funktionieren. -
@grizzelbee sagte in MieleCloudService Adapter:
Ich habe eine WWE660 und bei mir funktioniert das alles - incl. Ein-/Ausschalten, Eco Feedback etc. Das ist aber tatsächlich Modellabhängig ob da etwas passiert oder nicht. Guck dir bitte mal die Readme zum Adapter und die Doku von Miele an. Das ist leider nicht ganz trivial und (meiner Meinung nach) an verschiedenen Stellen Unglücklich von Miele gelöst -aber das ist Mieles Entscheidung was zur Verfügung gestellt wird, für welche Modelle und wie.
Readme des Adapters: https://github.com/Grizzelbee/ioBroker.mielecloudservice
Doku von Miele: https://www.miele.com/developer/swagger-ui/index.html
Voraussetzungen, damit etwas geschaltet werden kann: https://www.miele.com/developer/swagger-ui/put_additional_info.html
Zum Problem, das der Adapter nach einer Weile nicht mehr aktualisiert: Ist bekannt und sollte in der nächsten Version behoben sein:
https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/192
Für den Rest kann ich mich @skb nur anschließen: Auch Miele hat verschiedene Preis- und Leistungsklassen; nicht alle Modelle liefern alle Möglichkeiten und/oder Informationen. Ich kenne allerdings auch keine Liste wo man das mal nachlesen und vergleichen könnte. An ein: "Modell ist zu neu." glaube ich da auch nicht. Die API funktioniert für alle Geräte über alle Geräteklassen hinweg genau gleich (durchaus zu meinem Leidwesen).Ich habe genaus diese https://www.miele.de/haushalt/produktdetail-1995.htm?rdeLocaleAttr=de&mat=11565530
Wenn du die selbe hast, warum geht das bei dir und bei mir nicht?
Hast du irgendwo wie was geändert?
Durch das ganze Readme hab ich versucht was rauszulesen. Ohne Erfolg. -
@deta er hat eine WWE. Nicht WWD.
Genau wie wir eine WWE360 haben, wo das funktioniert.
Also liegt es wohl an D und E und an dem volldigitalen Display, welches nicht Orange leuchtet. -
@skb sagte in MieleCloudService Adapter:
@deta er hat eine WWE. Nicht WWD.
Nein habe eine WWD660 WCS TDos&8kg
-
@deta said in MieleCloudService Adapter:
@skb sagte in MieleCloudService Adapter:
@deta er hat eine WWE. Nicht WWD.
Nein habe eine WWD660 WCS TDos&8kg
Ja, @Grizzelbee hat eine WWE und ich auch.
Bei ihm geht's - bei mir auch.
Bei dir nicht. Somit liegt es am D.Soweit verstanden?
-
@skb darum hatte ich ja gesagt, mal sehen was die hoffe ich mal vom Support schreiben.
-
@oxident sagte in MieleCloudService Adapter:
@Grizzelbee Kann man eigentlich den Rewrite-Branch schon testen oder wäre das Quatsch?
Ich habe noch einmal etwas Zeit investiert und Arbeit reingesteckt. Der ReWrite-Branch sollte jetzt schon fast release tauglich sein. Ich habe zwar noch ein paar Gruben offen, die noch zugekippt werden müssen, aber das allermeiste sollte jetzt funktionieren.
Offen sind noch:- Es fehlen noch ein paar Geräte icons
- Die Programme funktionieren noch nicht richtig. Zumindest nicht alle. Einige sollten durchaus funktionieren (zumindest wenn die richtigen Voraussetzungen erfüllt sind - die aber leider nicht dokumentiert zu sein scheinen).
Bedeutet: Theoretisch sollten alle Programme funktionieren, die keine weiteren Parameter (so etwas wie: Temperatur, Laufzeit, ...) erwarten. Das sind zum Beispiel die Programme der Kaffeeautomaten - allerdings habe ich es noch nicht hinbekommen die richtigen Voraussetzungen herauszuknobeln. Programme, die Parameter erwarten - laufen definitiv noch nicht. Das ist zum Beispeil bei Waschmaschinen, Trocknern, Öfen und ähnlichem der Fall.
Die bisheriegen Aktionen sollten wieder alle laufen - allerdings hat sich da zum Teil die Art der Ansteuerung geändert. Das Update erfordert also Eingriffe in die VIS und in Skripte.
Bisheriges Changelog:
V6.0.0 (2022-04-19) (Black Wings)
- (grizzelbee) New: Adapter entirely rewritten from scratch
- (grizzelbee) New: Added donate button to config page and readme file
- (grizzelbee) New: Added link to request Miele API credentials in config page.
- (grizzelbee) New: Implemented watchdog for broken lines
- (grizzelbee) New: 216 Added additional (undocumented) data points to dish warmer
- (grizzelbee) Fix: 213 Login delay works properly now when login fails on Startup
- (grizzelbee) Fix: 207 powering on device due to querying available programs
- (grizzelbee) Fix: Refresh of expired tokens works properly now
- (grizzelbee) Fix: Light-Switch is working now e.g. for coffee systems
- (grizzelbee) Chg: BREAKING CHANGE: Changed IDs for targetTemperature and temperature
- (grizzelbee) Upd: dependencies got updated
- (grizzelbee) Upd: removed separate license file
-
@Grizzelbee Blöde frage was ist ReWrite-Branch oder was kann man dann machen.
und gibt es dann irgentwo Infos was geändert wurde für die Scripte oder Vis.Gruß
-
@michael-1975 sagte in MieleCloudService Adapter:
was ist ReWrite-Branch
Generell gesprochen: Branches sind Entwicklungszweige einer Software. In diesem Fall des MieleCloudService Adapters. In diesen Branches kann der Code geändert oder erweitert werden ohne das das aktuelle Release etwas davon mitbekommt oder in Mitleidenschaft gezogen wird. Erst wenn der Entwickler der Meinung ist, das die Änderungen okay sind bringt er die einzelnen Entwicklungszweige wieder zusammen. Das nennt man dann mergen (engl. to merge - verschmelzen).
Der ReWrite-Branch ist also der Entwicklungszweig, den ich für das komplette Neuschreiben des Adapters genutzt habe. Diesen Branch werde ich in absehbarer Zeit auch mit dem Hauptzweig mergen. Sobald ich das tue wird die neue Version für alle im latest-Repo zur Verfügung stehen.
Ich habe hier eigentlich nur die Anfrage von @oxident genutzt um ihn um einen Alpha-Test zu bitten, bevor ich das der Allgemeinheit zur Verfügung stelle. Da er danach gefragt hat, scheint er zu wissen wie man den installiert. Ich wollte halt vermeiden das die 6.0 mit zu dicken Bugs ins Repo geht - auch wenn es ja das definierte Test-Repo ist.
@michael-1975 sagte in MieleCloudService Adapter:
gibt es dann irgentwo Infos was geändert wurde für die Scripte oder Vis.
Ich schaue mal, das ich das noch genauer ins Readme schreibe. Im Augenblick habe ich präsent, das:
- TargetTemp und temperature die ID verändert haben
- TargetTemp mit unsinnigen Werten (-32768, null, ...) werden nicht mehr angelegt
- startTime ist in den Actions-Zweig gewandert und sollte funktionieren
- Die ACTIONS.*_Button_Active Datenpunkte habe ich entfernt
- Die switches in den Actions haben keine States (on/off/...) mehr sondern sind true/false switches
-
@grizzelbee said in MieleCloudService Adapter:
@oxident sagte in MieleCloudService Adapter:
@Grizzelbee Kann man eigentlich den Rewrite-Branch schon testen oder wäre das Quatsch?
Ich habe noch einmal etwas Zeit investiert und Arbeit reingesteckt. Der ReWrite-Branch sollte jetzt schon fast release tauglich sein.
Wow, danke! Mein erster Versuch scheiterte jedoch kläglich. iobroker war der Meinung, meine NPM-Version wäre nicht passend, scheiterte dann auch schlussendlich an einer fehlenden .js-Datei.
Hatte leider keine Zeit, die Sache näher zu dokumentieren oder zu untersuchen und bin daher zügig zum letzten Stable zurück.
Gebe Rückmeldung, wenn ich es nochmal probieren kann!
-
Bisher noch kein Erfolg mit dem rewrite-Branch. Der Adapter scheint die mieleTools.js zu benötigen, die ist aber in diesem Branch nicht mehr vorhanden:
host.iobroker 2022-04-22 19:45:10.963 error instance system.adapter.mielecloudservice.0 terminated with code 1 (JS_CONTROLLER_STOPPED) host.iobroker 2022-04-22 19:45:10.963 error Caught by controller[0]: requireStack: [ '/opt/iobroker/node_modules/iobroker.mielecloudservice/main.js' ] host.iobroker 2022-04-22 19:45:10.963 error Caught by controller[0]: code: 'MODULE_NOT_FOUND', host.iobroker 2022-04-22 19:45:10.963 error Caught by controller[0]: } host.iobroker 2022-04-22 19:45:10.963 error Caught by controller[0]: at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:75:12) { host.iobroker 2022-04-22 19:45:10.962 error Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:790:12) host.iobroker 2022-04-22 19:45:10.960 error Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:950:32) host.iobroker 2022-04-22 19:45:10.959 error Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14) host.iobroker 2022-04-22 19:45:10.959 error Caught by controller[0]: at require (internal/modules/cjs/helpers.js:101:18) host.iobroker 2022-04-22 19:45:10.959 error Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:746:27) host.iobroker 2022-04-22 19:45:10.959 error Caught by controller[0]: at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15) host.iobroker 2022-04-22 19:45:10.958 error Caught by controller[0]: Require stack: host.iobroker 2022-04-22 19:45:10.958 error Caught by controller[0]: ^ host.iobroker 2022-04-22 19:45:10.959 error Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:974:19) host.iobroker 2022-04-22 19:45:10.959 error Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.mielecloudservice/main.js:11:20) host.iobroker 2022-04-22 19:45:10.959 error Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10) host.iobroker 2022-04-22 19:45:10.958 error Caught by controller[0]: throw err; host.iobroker 2022-04-22 19:45:10.958 error Caught by controller[0]: Error: Cannot find module './source/mieleTools.js' host.iobroker 2022-04-22 19:45:10.958 error Caught by controller[0]: - /opt/iobroker/node_modules/iobroker.mielecloudservice/main.js
UPDATE: Habe den Ordner "source" manuell heruntergeladen und jetzt scheint's zu klappen.
@Grizzelbee Müsste vielleicht noch im package.json hinterlegt werden