NEWS
MieleCloudService Adapter
-
So langsam wird es mir unangenehm - geht leider immer noch nicht...
Was bedeutet "ack is not set!"?
-
@marka sagte in MieleCloudService Adapter:
So langsam wird es mir unangenehm - geht leider immer noch nicht...
Muss es nicht.
Aber ...
2021-04-09 11:43:52.256 - debug: mielecloudservice.0 (6678) CurrentlyPermittedActions: {"processAction":[],"light":[],"ambientLight":[],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[],"deviceName":false,"powerOn":true,"powerOff":false,"colors":[],"modes":[]} [...] 2021-04-09 11:43:59.090 - debug: mielecloudservice.0 (6678) ack is not set! 2021-04-09 11:43:59.095 - debug: mielecloudservice.0 (6678) stateChange [mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Light] [{"val":"On","ack":false,"ts":1617961439087,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1617961439087}] 2021-04-09 11:43:59.097 - debug: mielecloudservice.0 (6678) APIStartAction: received Action: [Light] with value: [On] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-09 11:43:59.098 - debug: mielecloudservice.0 (6678) APIStartAction: Executing Action: [{"light":1}] 2021-04-09 11:43:59.100 - debug: mielecloudservice.0 (6678) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[{}] 2021-04-09 11:43:59.101 - error: mielecloudservice.0 (6678) [APIStartAction] {} 2021-04-09 11:44:02.966 - debug: mielecloudservice.0 (6678) ack is not set! 2021-04-09 11:44:02.967 - debug: mielecloudservice.0 (6678) stateChange [mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.VentilationStep] [{"val":2,"ack":false,"ts":1617961442963,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1617961442963}] 2021-04-09 11:44:02.968 - debug: mielecloudservice.0 (6678) APIStartAction: received Action: [VentilationStep] with value: [2] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-09 11:44:02.969 - debug: mielecloudservice.0 (6678) APIStartAction: Executing Action: [{"ventilationStep":2}] 2021-04-09 11:44:02.971 - debug: mielecloudservice.0 (6678) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[{}] 2021-04-09 11:44:02.972 - error: mielecloudservice.0 (6678) [APIStartAction] {}
Wie man im Log sehen kann, ist die Haube gar nicht eingeschaltet:
CurrentlyPermittedActions: {"processAction":[],"light":[],"ambientLight":[],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[],"deviceName":false,"powerOn":true,"powerOff":false,"colors":[],"modes":[]}Die einzige erlaubte Aktion ist: PowerOn.
Für das Licht sind die Werte 1 und 2 möglich (light":[1,2]).
Für die Lüftung sind die Werte 0, 1, 2, 4 und 4 möglich (ventilationStep":[0,1,2,3,4]). Wenn die Haube eingeschaltet aber nicht in Betrieb ist sind es: 1,2,3,4.Die Zahlen spiegeln die Aktionen wieder, die gerade möglich sind:
Licht: 1=Einschalten, 2=Ausschalten
Lüfter: 0=Ausschalten, 1..4:=Stufe 1-4Probiere es bitte noch einmal mit eingeschalteter Haube bzw. auch die haube über den Adapter einzuschalten.
Was bedeutet "ack is not set!"?
ACK ist die abkürzung für Acknowledge. Bedeutet hier folgendes:
Wenn Ack gesetzt ist, wurde der Status von der Hardware gesetzt. wenn ack nicht gesetzt ist, handelt es sich um eine manuelle Aktion. Sprich: Der Benutzer hat irgendetwas ausgelöst. Das kann übrigens z.B. auch in Blocklys genutzt werden.
Dort sieht das so aus:
-
Hallo,
vielen Dank für Deine Mühe!!!
Leider ist das verhalten bei eingeschalteter Haube das gleiche. Es gib auch keinen Ein/Aus Knopf an der Haube.
Licht an / aus hat ja bereits funktioniert.Über die App kann ich Licht an/aus, sowie die Lüfterstufe direkt anwählen. Ich bin daher davon ausgegangen, das dies über den Adapter genauso funktionieren müsste.
Für mich sieht das so aus, als wenn gar keine Kommandos an die Haube gesendet werden. "[APIStartAction] {}"
2021-04-09 12:50:52.053 - debug: mielecloudservice.0 (6678) ack is not set! 2021-04-09 12:50:52.054 - debug: mielecloudservice.0 (6678) stateChange [mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.VentilationStep] [{"val":2,"ack":false,"ts":1617965452051,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1617965452051}] 2021-04-09 12:50:52.054 - debug: mielecloudservice.0 (6678) APIStartAction: received Action: [VentilationStep] with value: [2] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-09 12:50:52.055 - debug: mielecloudservice.0 (6678) APIStartAction: Executing Action: [{"ventilationStep":2}] 2021-04-09 12:50:52.056 - debug: mielecloudservice.0 (6678) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[{}] 2021-04-09 12:50:52.056 - error: mielecloudservice.0 (6678) [APIStartAction] {} 2021-04-09 12:51:26.411 - debug: mielecloudservice.0 (6678) ack is not set! 2021-04-09 12:51:26.411 - debug: mielecloudservice.0 (6678) stateChange [mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Light] [{"val":"On","ack":false,"ts":1617965486409,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1617965486409}] 2021-04-09 12:51:26.412 - debug: mielecloudservice.0 (6678) APIStartAction: received Action: [Light] with value: [On] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-09 12:51:26.412 - debug: mielecloudservice.0 (6678) APIStartAction: Executing Action: [{"light":1}] 2021-04-09 12:51:26.413 - debug: mielecloudservice.0 (6678) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[{}] 2021-04-09 12:51:26.413 - error: mielecloudservice.0 (6678) [APIStartAction] {} 2021-04-09 12:51:40.577 - debug: mielecloudservice.0 (6678) ack is not set! 2021-04-09 12:51:40.578 - debug: mielecloudservice.0 (6678) stateChange [mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Light] [{"val":"Off","ack":false,"ts":1617965500576,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1617965500576}] 2021-04-09 12:51:40.578 - debug: mielecloudservice.0 (6678) APIStartAction: received Action: [Light] with value: [Off] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-09 12:51:40.578 - debug: mielecloudservice.0 (6678) APIStartAction: Executing Action: [{"light":2}] 2021-04-09 12:51:40.579 - debug: mielecloudservice.0 (6678) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[{}] 2021-04-09 12:51:40.579 - error: mielecloudservice.0 (6678) [APIStartAction] {} 2021-04-09 12:51:48.124 - debug: mielecloudservice.0 (6678) ack is not set! 2021-04-09 12:51:48.125 - debug: mielecloudservice.0 (6678) stateChange [mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Stop] [{"val":true,"ack":false,"ts":1617965508122,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1617965508122}] 2021-04-09 12:51:48.125 - debug: mielecloudservice.0 (6678) APIStartAction: received Action: [Stop] with value: [true] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-09 12:51:48.125 - debug: mielecloudservice.0 (6678) APIStartAction: Executing Action: [{"processAction":2}] 2021-04-09 12:51:48.126 - debug: mielecloudservice.0 (6678) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[{}] 2021-04-09 12:51:48.127 - error: mielecloudservice.0 (6678) [APIStartAction] {}
-
Kannst Du mir bitte noch die Zeile: CurrentlyPermittedActions, die unmittelbar vor den Aktionen steht raussuchen?
Unabhängig davon bin ich der Sache aber auf der Spur. Entgegen deiner Vermutung werden die Aktionen an die API gesendet. Sie kommen da nur leider mit einem (stummen) Fehler raus. WIll sagen: Wir haben beide übersehen das es sich bei "[APIStartAction] {}" um einen ERROR handelt.
Ich vermute, das ich den ActionCurrentlyNOTpermitted-Fehler von der API stumm unterdrücke.
Ich untersuche das ...Edit:
V4.0.9 (2021-04-09) (Farewell)
- (grizzelbee) Fix: Errors during action execution will be shown correctly
- (grizzelbee) Fix: Actions will be executed correctly
-
@grizzelbee Moin, erstmal als Info.
Mir wurde neulich 4.0.4 angeboten. Natürlich installiert.Nun schaue ich heute rein- Adapter gelb. Bei Versuch den zu starten- geht der wieder auf Gelb.
mielecloudservice.0 2021-04-11 20:37:25.270 error at async main (/opt/iobroker/node_modules/iobroker.mielecloudservice/main.js:647:13) mielecloudservice.0 2021-04-11 20:37:25.270 error at async splitMieleDevices (/opt/iobroker/node_modules/iobroker.mielecloudservice/main.js:273:9) mielecloudservice.0 2021-04-11 20:37:25.270 error at async parseMieleDevice (/opt/iobroker/node_modules/iobroker.mielecloudservice/main.js:295:5) mielecloudservice.0 2021-04-11 20:37:25.270 error at async addMieleDevice (/opt/iobroker/node_modules/iobroker.mielecloudservice/main.js:335:17) mielecloudservice.0 2021-04-11 20:37:25.270 error at processTicksAndRejections (internal/process/task_queues.js:97:5) mielecloudservice.0 2021-04-11 20:37:25.270 error at addMieleDeviceState (/opt/iobroker/node_modules/iobroker.mielecloudservice/main.js:370:70) mielecloudservice.0 2021-04-11 20:37:25.270 error (30782) [main] :actions is not defined, Stacktrace:ReferenceError: actions is not defined mielecloudservice.0 2021-04-11 20:37:24.917 info (30782) Setting up devices ... mielecloudservice.0 2021-04-11 20:37:24.915 info (30782) Access-Token expires at: [Tue May 11 2021 20:37:00 GMT+0200 (GMT+02:00)] mielecloudservice.0 2021-04-11 20:37:24.549 info (30782) starting. Version 4.0.1 in /opt/iobroker/node_modules/iobroker.mielecloudservice, node: v12.21.0, js-controller: 3.2.16
Ich hab jetzt erstmal auf 3.0.2 zurück gedreht. Ging sofort.
Nur als Info falls das Problem nicht sowieso bereits gefixt ist. -
@oberfragger
Ja, tut mir leid. Die 4.0.4 war noch ziemlich kaputt, deshalb habe ich die auch zurück gezogen.
Aktuell bin ich auf git bei 4.0.10 und die funktioniert soweit wohl ganz gut. Ich tüftel da noch für Kühl- und Gefriergeräte etwas rum. Aber tätsächlich nur noch für diese Geräteklassen. Alles Andere ist soweit fertig, bzw. aktuell keine Fehler mehr bekannt.
Ich denke das nächste vernünftige Release bald freigeben zu können. -
@grizzelbee Danke für die Rückmeldung.
Vielen Dank für deine Mühe und viel Erfolg! -
@grizzelbee Bei mir läuft gerade die 4.0.6 ohne weitere Probleme, allerdings auch "nur" mit Geschirrspüler, Trockner und Waschmaschine. Aber das ursprüngliche Problem ist auch gelöst.
-
@sascha-löbbert , @oberfragger ,@M-A-X , @HomeZecke , @kleine_kuh , @michael-1975 und alle anderen ...
Wir haben endlich einen Release-Kandidaten, den ich heute in den Beta-Zweig eingestellt habe:
V4.0.13 (2021-04-12) (The toy master)
Die Version hat keine bekannten Bugs mehr. Ich empfehle aber ganz deutlich vor dem Update das komplette Changelog seit eurer aktuell installierten Version zu lesen und zu beachten. Der Einfachheit halber deshalb hier das komplette Changelog seit der letzten Stable:
Ich weise auch noch einmal ausdrücklich auf die Änderungen bei der Passwortverschlüsselung in der v3.0.0 hin!V4.0.13 (2021-04-12) (The toy master)
- (grizzelbee) Fix: 90 targetTemp addresses zones for fridges and freezers dynamically now
V4.0.12 (2021-04-12) (Promised land)
- (grizzelbee) Fix: 90 targetTemp addresses zones for fridges and freezers dynamically now
V4.0.11 (2021-04-11) (Cry just a little)
- (grizzelbee) Fix: targetTemp min and max values are now taken from API - no constant values anymore
V4.0.10 (2021-04-10) (Another angel down)
- (grizzelbee) Fix: targetTemp min and max values are now taken from API - no constant values anymore
V4.0.9 (2021-04-09) (Farewell)
- (grizzelbee) Fix: Errors during action execution will be shown correctly
- (grizzelbee) Fix: Actions will be executed correctly
V4.0.8 (2021-04-09) (The seven angels)
- (grizzelbee) Fix: fixed datatype of VentilationStep data point
- (grizzelbee) Fix: fixed ventilation step switch for hoods (attempt 4)
V4.0.7 (2021-04-09) (Lost in space)
- (grizzelbee) Fix: 90 added missing path to object ID; data point will be created in the correct place now
- (grizzelbee) New: targetTemp min and max values are now taken from API - no constant values anymore
V4.0.6 (2021-04-08) (The great mystery)
- (grizzelbee) Fix: fixes Light switch for hoods and other devices supporting light
- (grizzelbee) Fix: fixes ventilation step switch for hoods (attempt 3)
V4.0.5 (2021-04-08) (The haunting)
- (grizzelbee) Fix: fixes ventilation step switch for hoods (attempt 2)
- (grizzelbee) Fix: fixes error on creating TargetTemperature data points
V4.0.4 (2021-04-07) (Wastelands)
- (grizzelbee) Fix: fixes ventilation step switch for hoods
- (grizzelbee) Fix: fixed missing getLightState
V4.0.3 (2021-04-07) (The raven child)
- (grizzelbee) Fix: 109 fixes 404 error when querying possible actions for device.
- (grizzelbee) Fix: fixes errors when executing actions on devices with API-Id!=fabNumber
V4.0.2 (2021-04-07) (Angel of Babylon)
- (grizzelbee) Fix: 107 fixes #107 and 404 error when device is unknown.
V4.0.1 (2021-04-06) (Sign of the cross)
- (grizzelbee) Fix: 90 setting the targetTemperature should work now.
- (grizzelbee) Fix: 96 Added missing ACTIONS.Action_Information again
- (grizzelbee) Fix: 97 removed unneeded additional "VentilationStep/Lüfterstufe" in path and fixed warning with this. VentilationStep-switch should work properly now.
- (grizzelbee) Fix: 98 Color-Action has now valid type 'String'
- (grizzelbee) Fix: 102 Fixed ACTIONS.VentilationStep has no existing object
- (grizzelbee) Fix: Power switch is write protected now when in state 'None'. State 'None' means: No action permitted.
- (grizzelbee) Fix: Light switch is write protected now when in state 'None'. State 'None' means: No action permitted.
- (grizzelbee) Fix: http error 404 will be catched when requesting device actions
V4.0.0 (2021-03-18) (Symphony of life)
Hint: The adapter received a complete code refactoring! This means that most of the code has been changed and some parts are working now differently than ever before. Update with care and read the change log!
- (grizzelbee) New: FULL support of Miele cloud API v1.0.4
- (grizzelbee) Upd: 83 estimatedEndTime isn't shown anymore after the device has finished
- (grizzelbee) Upd: 85 full code refactoring and split into multiple files.
- (grizzelbee) Upd: 86 every folder and device now gets a nice little icon
- (grizzelbee) Upd: 89 Washer dryers are fully supported now
- (grizzelbee) Upd: 90 implemented targetTemperature for fridges & freezers
- (grizzelbee) Upd: Devices get fully created on startup and aren't modified afterwards - only updated
- (grizzelbee) Upd: New folder ecoFeedback to group ecoFeedback states
- (grizzelbee) Upd: New folder IDENT to group ident states
- (grizzelbee) Upd: Removed signalActionRequired - since there is no signalDoor for washing machines, dryers and dishwashers this approach doesn't work
- (grizzelbee) Upd: All folders and states which are being created depend on the capabilities of their devices as described in this Miele documentation. So there shouldn't be useless states anymore caused by the generic Miele cloud API.
V3.0.2 (2021-03-05)
- (grizzelbee) Fix: 79 When a devices serial is missing, the identNumber is assigned instead.
- (grizzelbee) Upd: Changed folder name cooktops to hobs since this is the more common name
- (grizzelbee) Upd: added PowerOn/Off buttons for Coffee-systems & hoods
- (grizzelbee) Upd: 74 testing actions better before sending to permit errors
V3.0.1 (2021-02-25)
Hint: Action_Information and Action_Status objects are created on first action execution and contain infos to the last executed action.
Please take care of notes regarding [Controlling your devices](#Controlling your devices).- (grizzelbee) Upd: Improved logging in some parts - objects get stringified.
- (grizzelbee) Fix: 74 Actions are working again
- (grizzelbee) Upd: Actions are tested before sending whether they are permitted in current device state
- (grizzelbee) Upd: estimatedEndTime doesn't show seconds anymore
- (grizzelbee) Upd: Improved documentation
- (grizzelbee) Upd: removed unused function decrypt
- (grizzelbee) Upd: removed superfluent parameters
V3.0.0 (2021-02-18)
Hint: ecoFeedback objects are created on the first run of the device. This allows to only create them, when they contain data.
- (grizzelbee) New: BREAKING CHANGE: Making use of build-in password de-/encryption. This raises the need to re-enter your passwords again, because the old ones can't be decrypted anymore.
- (grizzelbee) New: 70 Implements Miele API 1.0.4
- (grizzelbee) New: 64 Introduces data point estimatedFinishingTime
- (grizzelbee) New: 54 Poll interval can now freely be selected in seconds and minutes
- (grizzelbee) Upd: 73 BREAKING CHANGE: Removed white-spaces from any ID in device tree. This creates completely new device trees. So please delete the old ones.
- (grizzelbee) Upd: removed david-dm badge
- (grizzelbee) Upd: updated dependencies
- (grizzelbee) Fix: added passwords to encryptedNative
- (grizzelbee) Fix: added passwords to protectedNative
- (grizzelbee) Fix: 63 added missing info.connection object to io-package
- (grizzelbee) Fix: 63 Fixed new Warnings introduced with js-controller 3.2
- (grizzelbee) Fix: 74 Light-Actions should work now
-
@grizzelbee läuft bei mir problemlos
-
@grizzelbee Bei mir auch.
-
@m-a-x sagte in MieleCloudService Adapter:
@grizzelbee läuft bei mir problemlos
@coffeelover sagte in MieleCloudService Adapter:
@grizzelbee Bei mir auch.
Danke für das Feedback. Freut mich zu hören.
-
Ich bin leider erst heute zum testen gekommen - bei mir funktioniert es leider noch nicht ganz
Das schalten der Lüfterstufen geht weiterhin nicht... API returned Status: [204]
Licht ausschalten geht nur, wenn es über den Adapter eingeschaltet wurde. Wurde es manuell eingeschaltet, oder über die App kommt ein Fehler...
Anbei das Log, beginnend mit dem starten des Adapters mit diversen Schaltvorgängen...
Sorry das ich keinen anderen Status berichten kann...
-
@marka
Kannst Du bitte einmal die aktuelle Version von Git installieren und das Ganze noch einmal durchspielen?
Ich habe da ein paar zusätzliche debug-infos eingebaut (Versionsnummer bleibt erstmal).Für den Rest sieht das Log aber erst einmal durchaus plausibel aus - trotz der Fehler.
Der 204 ist übrigens kein Fehler. Das ist einfach nur eine stumme Okay-Meldung. -
-
Okay. Ich sehe folgendes:
- Licht an der Haube wurde erfolgreich eingeschaltet:
2021-04-14 16:41:49.905 - debug: mielecloudservice.0 (32696) stateChange: DeviceId [mac-00124B000E881998], requested action [Light], state [On] 2021-04-14 16:41:50.089 - debug: mielecloudservice.0 (32696) stateChange: permitted actions for device [mac-00124B000E881998]->[{"processAction":[],"light":[1],"ambientLight":[],"startTime":[],"ventilationStep":[1,2,3,4],"programId":[],"targetTemperature":[],"deviceName":false,"powerOn":true,"powerOff":false,"colors":[],"modes":[]}] 2021-04-14 16:41:50.090 - debug: mielecloudservice.0 (32696) APIStartAction: received Action: [Light] with value: [On] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-14 16:41:50.090 - debug: mielecloudservice.0 (32696) APIStartAction: Executing Action: [{"light":1}] 2021-04-14 16:41:50.446 - debug: mielecloudservice.0 (32696) API returned Status: [204] 2021-04-14 16:41:50.447 - debug: mielecloudservice.0 (32696) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[Light: OK] 2021-04-14 16:41:50.447 - debug: mielecloudservice.0 (32696) Result returned from Action(Light)-execution: ["OK"]
- Erneuter Versuch das Licht einzuschalten:
2021-04-14 16:41:56.952 - debug: mielecloudservice.0 (32696) stateChange: DeviceId [mac-00124B000E881998], requested action [Light], state [On] 2021-04-14 16:41:57.128 - debug: mielecloudservice.0 (32696) stateChange: permitted actions for device [mac-00124B000E881998]->[{"processAction":[],"light":[2],"ambientLight":[],"startTime":[],"ventilationStep":[1,2,3,4],"programId":[],"targetTemperature":[],"deviceName":false,"powerOn":true,"powerOff":false,"colors":[],"modes":[]}] 2021-04-14 16:41:57.128 - debug: mielecloudservice.0 (32696) APIStartAction: received Action: [Light] with value: [On] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-14 16:41:57.129 - debug: mielecloudservice.0 (32696) APIStartAction: Executing Action: [{"light":1}] 2021-04-14 16:41:57.309 - error: mielecloudservice.0 (32696) [APISendRequest] {"message":"Request failed with status code 400","name":"Error","stack":"Error: Request failed with status code 400\n at createError (/opt/iobroker/node_modules/axios/lib/core/createError.js:16:15)\n at settle (/opt/iobroker/node_modules/axios/lib/core/settle.js:17:12)\n at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/axios/lib/adapters/http.js:260:11)\n at IncomingMessage.emit (events.js:326:22)\n at endReadableNT (_stream_readable.js:1241:12)\n at processTicksAndRejections (internal/process/task_queues.js:84:21)","config":{"url":"https://api.mcs3.miele.com/v1/devices/mac-00124B000E881998/actions","method":"put","data":"{\"light\":1}","headers":{"Accept":"application/json","Content-Type":"application/json","Authorization":"Bearer DE_5afa11400dc96d03036cedfb6992fc74","User-Agent":"axios/0.21.1","Content-Length":11},"transformRequest":[null],"transformResponse":[null],"timeout":0,"xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF-TOKEN","maxContentLength":-1,"maxBodyLength":-1,"dataType":"json","json":true}} | [Stack]: Error: Request failed with status code 400 at createError (/opt/iobroker/node_modules/axios/lib/core/createError.js:16:15) at settle (/opt/iobroker/node_modules/axios/lib/core/settle.js:17:12) at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/axios/lib/adapters/http.js:260:11) at IncomingMessage.emit (events.js:326:22) at endReadableNT (_stream_readable.js:1241:12) at processTicksAndRejections (internal/process/task_queues.js:84:21) 2021-04-14 16:41:57.310 - error: mielecloudservice.0 (32696) Request made and server responded: 2021-04-14 16:41:57.310 - error: mielecloudservice.0 (32696) Response.status:400 2021-04-14 16:41:57.310 - error: mielecloudservice.0 (32696) Response.headers: {"date":"Wed, 14 Apr 2021 14:41:57 GMT","content-type":"application/json","content-length":"182","connection":"close","strict-transport-security":"max-age=15724800; includeSubDomains, max-age=15724800; includeSubDomains","access-control-allow-credentials":"true","access-control-allow-headers":"DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization","access-control-allow-methods":"PUT, GET, POST, OPTIONS","access-control-allow-origin":"*","x-environment":"mcs-eu-prod-std, mcs-eu-prod-default"} 2021-04-14 16:41:57.311 - error: mielecloudservice.0 (32696) Response.data: {"message":"Light command 'ENABLED (1)' is not available for device with mieleDeviceId mac-00124B000E881998 and state 1 at this moment. Available light commands: List(DISABLED (2))"}
Dieser Versuch scheitert, weil die API sagt, dass das Licht bereits eingeschaltet ist (stateChange: permitted actions for device [mac-00124B000E881998]->[{"processAction":[],"light":[2])
- Licht ausschalten an der Haube hat funktioniert:
2021-04-14 16:42:04.568 - debug: mielecloudservice.0 (32696) stateChange: permitted actions for device [mac-00124B000E881998]->[{"processAction":[],"light":[2],"ambientLight":[],"startTime":[],"ventilationStep":[1,2,3,4],"programId":[],"targetTemperature":[],"deviceName":false,"powerOn":true,"powerOff":false,"colors":[],"modes":[]}] 2021-04-14 16:42:04.568 - debug: mielecloudservice.0 (32696) APIStartAction: received Action: [Light] with value: [Off] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-14 16:42:04.568 - debug: mielecloudservice.0 (32696) APIStartAction: Executing Action: [{"light":2}] 2021-04-14 16:42:04.924 - debug: mielecloudservice.0 (32696) API returned Status: [204] 2021-04-14 16:42:04.924 - debug: mielecloudservice.0 (32696) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[Light: OK] 2021-04-14 16:42:04.925 - debug: mielecloudservice.0 (32696) Result returned from Action(Light)-execution: ["OK"]
- Lüfter auf Stufe 2 schalten hat funktioniert - wobei powerOn auch möglich ist - möglicherweise müssen ja beide Schalter geschaltet werden (Lüfterstufe + powerOn). Fände ich durchaus plausibel:
2021-04-14 16:42:12.361 - debug: mielecloudservice.0 (32696) stateChange: permitted actions for device [mac-00124B000E881998]->[{"processAction":[],"light":[1],"ambientLight":[],"startTime":[],"ventilationStep":[1,2,3,4],"programId":[],"targetTemperature":[],"deviceName":false,"powerOn":true,"powerOff":false,"colors":[],"modes":[]}] 2021-04-14 16:42:12.362 - debug: mielecloudservice.0 (32696) APIStartAction: received Action: [VentilationStep] with value: [2] for device [mac-00124B000E881998] / path:[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS] 2021-04-14 16:42:12.362 - debug: mielecloudservice.0 (32696) APIStartAction: Executing Action: [{"ventilationStep":2}] 2021-04-14 16:42:12.602 - debug: mielecloudservice.0 (32696) API returned Status: [204] 2021-04-14 16:42:12.603 - debug: mielecloudservice.0 (32696) createString: Path[mielecloudservice.0.Hoods.mac-00124B000E881998.ACTIONS.Action_Information] Value[VentilationStep: OK] 2021-04-14 16:42:12.603 - debug: mielecloudservice.0 (32696) Result returned from Action(VentilationStep)-execution: ["OK"]
Danach folgen noch mehrere Schaltbefehle für die Lüfter, die alle funktioniert haben (204).
Aus dem Log kann ich kein Problem erkennen.
Passen denn meine Interpretationen zu dem was tatsächlich passiert ist? -
V4.0.14 (2021-04-18) (Alchemy)
- (grizzelbee) Fix: 127 targetTemp for fridges caused exception and crash of adapter
-
@grizzelbee
Hallo,vielen Dank für den Adapter. Ich hab ein Miele Waschmaschine (states siehe in Bildern). Was mir bislang bei der Nutzung des Adapters aufgefallen ist:
Es gibt keine Möglichkeit den State "Mobile Start" über den Adapter zu starten. Dies muss immer an der Maschine gemacht werden. Besteht die Möglichkeit das zu ändern. Natürlich muss dann die Tür der Waschmaschine geschlossen sein (diese Abfrage wäre eventuell auch noch erforderlich).
Es gib keine Möglichkeit das Waschprogramm und die Schleuderdrehzahl über den Adapter auszuwählen. Wäre das möglich? Programme kann ich für die WCR890WPS liefern.
Ein Klicken auf den Button des States "Power On" führt zu folgenden Fehlernmielecloudservice.0 2021-04-19 08:26:54.442 error (24744) [APIStartAction] That action is not available right now. mielecloudservice.0 2021-04-19 08:26:54.441 error (24744) Response.data: {"message":"That action is not available right now."} mielecloudservice.0 2021-04-19 08:26:54.440 error (24744) Response.headers: {"date":"Mon, 19 Apr 2021 06:26:54 GMT","content-type":"application/json","content-length":"53","connection":"close","strict-transport-security":"max-age=15724800; includeSu mielecloudservice.0 2021-04-19 08:26:54.440 error (24744) Response.status:400 mielecloudservice.0 2021-04-19 08:26:54.439 error (24744) Request made and server responded: mielecloudservice.0 2021-04-19 08:26:54.438 error at processTicksAndRejections (internal/process/task_queues.js:84:21) mielecloudservice.0 2021-04-19 08:26:54.438 error at endReadableNT (_stream_readable.js:1241:12) mielecloudservice.0 2021-04-19 08:26:54.438 error at IncomingMessage.emit (events.js:326:22) mielecloudservice.0 2021-04-19 08:26:54.438 error at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/axios/lib/adapters/http.js:260:11) mielecloudservice.0 2021-04-19 08:26:54.438 error at settle (/opt/iobroker/node_modules/axios/lib/core/settle.js:17:12) mielecloudservice.0 2021-04-19 08:26:54.438 error at createError (/opt/iobroker/node_modules/axios/lib/core/createError.js:16:15) mielecloudservice.0 2021-04-19 08:26:54.438 error (24744) [APISendRequest] {"message":"Request failed with status code 400","name":"Error","stack":"Error: Request failed with status code 400\n at createError (/opt/iobroker/node_modules/axios/lib/
Hoffe das hilft für die weitere Adapterentwicklung!
-
Hallo @LaplaceII
das muss ich Stück für Stück beantworten. Aber zuerst: Du solltest den Adapter einmal stoppen, den kompletten device tree löschen und den Adapter dann wieder starten. Du hast noch einige veraltete Datenpunkte im Baum. Das macht die Sache unnötig unübersichtlich und fehleranfällig für dich weil du Gefahr läufst Datenpunkte zu verwenden, die nicht mehr aktualisiert werden.
@laplaceii sagte in MieleCloudService Adapter:
Es gibt keine Möglichkeit den State "Mobile Start" über den Adapter zu starten. Dies muss immer an der Maschine gemacht werden. Besteht die Möglichkeit das zu ändern.
"Mobile Start" ist eine Einstellung, die an der Maschine gemacht werden muss. Das geht weder über den Adapter noch über die Handy-App. Zudem ist es modellabhängig. Ich kann an der Stelle nur auf die Bedienungsanleitung verweisen. Die Anzeige im Adapter zeigt nur an ob das Gerät das überhaupt unterstützt bzw. ob die Funktion am Gerät aktiviert wurde - an der Stelle ist die Beschreibung der API interpretationsfähig .
Natürlich muss dann die Tür der Waschmaschine geschlossen sein (diese Abfrage wäre eventuell auch noch erforderlich).
Leider kann man (zumindest zur Zeit) genau das aber nicht abfragen. Die Tür-Offen Erkennung gibt es aktuell nur für Kühlgeräte.
Es gib keine Möglichkeit das Waschprogramm und die Schleuderdrehzahl über den Adapter auszuwählen. Wäre das möglich? Programme kann ich für die WCR890WPS liefern.
Aktuell ist das leider nicht möglich. Die Miele API bietet diese Funktionen nicht an. Ich bezweifle auch etwas, das sie das jemals tun wird - zumindest nicht, wenn die Maschinen tatsächlich keinen Türsensor haben. Das Einzige das Du tun kannst ist die Maschine voll machen, schließen und so weit vorprogrammieren, dass du nur noch "Start" auslösen musst, wenn irgendein Ereignis eintritt. Das machen andere hier auch schon so um z.B. Überleistung der PV-Anlage zu verwerten.
Ein Klicken auf den Button des States "Power On" führt zu folgenden Fehlern
Das liegt daran, das Aktionen nur unter bestimmten Bedingungen möglich sind. Schau dazu bitte einmal in die Doku von Miele: https://www.miele.com/developer/swagger-ui/put_additional_info.html
-
@grizzelbee
Prima, danke für die ausführlichen Antworten. Verstehe nun besser, warum das eine oder andere nicht so funktioniert wie es eigentlich sein sollte. Also werde ich die Punkte mal bei Miele absetzen....mal schauen wie die Reaktion ist...