{"id":27944976,"url":"https://github.com/grizzelbee/iobroker.mielecloudservice","last_synced_at":"2025-05-07T12:55:27.092Z","repository":{"id":38451504,"uuid":"198675397","full_name":"Grizzelbee/ioBroker.mielecloudservice","owner":"Grizzelbee","description":"Integrates your MieleCloudService (aka Miele@Home) Devices to ioBroker","archived":false,"fork":false,"pushed_at":"2025-05-01T02:55:20.000Z","size":3667,"stargazers_count":19,"open_issues_count":18,"forks_count":9,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-07T12:55:19.788Z","etag":null,"topics":["gateway","gateways","home-automation","iobroker","miele","miele-api","mielecloudservice","smarthome","wifi","xgw3000"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Grizzelbee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-24T16:50:24.000Z","updated_at":"2025-04-12T22:08:40.000Z","dependencies_parsed_at":"2023-02-17T01:32:05.943Z","dependency_job_id":"2d853861-454a-4b47-ac5f-b4f179e58fe0","html_url":"https://github.com/Grizzelbee/ioBroker.mielecloudservice","commit_stats":{"total_commits":761,"total_committers":28,"mean_commits":"27.178571428571427","dds":0.2483574244415243,"last_synced_commit":"b3772eb02caf8567654cccbea05eb4013b8c60f5"},"previous_names":[],"tags_count":62,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Grizzelbee%2FioBroker.mielecloudservice","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Grizzelbee%2FioBroker.mielecloudservice/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Grizzelbee%2FioBroker.mielecloudservice/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Grizzelbee%2FioBroker.mielecloudservice/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Grizzelbee","download_url":"https://codeload.github.com/Grizzelbee/ioBroker.mielecloudservice/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252882792,"owners_count":21819155,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gateway","gateways","home-automation","iobroker","miele","miele-api","mielecloudservice","smarthome","wifi","xgw3000"],"created_at":"2025-05-07T12:55:26.294Z","updated_at":"2025-05-07T12:55:27.079Z","avatar_url":"https://github.com/Grizzelbee.png","language":"JavaScript","funding_links":["https://www.paypal.com/donate/?hosted_button_id=SPUDTXGNG2MYG"],"categories":[],"sub_categories":[],"readme":"![Logo](admin/mielecloudservice.svg)\r\n# ioBroker.mielecloudservice\r\n![Number of Installations](http://iobroker.live/badges/mielecloudservice-installed.svg)\r\n![Number of Installations](http://iobroker.live/badges/mielecloudservice-stable.svg)\r\n[![NPM version](https://img.shields.io/npm/v/iobroker.mielecloudservice.svg)](https://www.npmjs.com/package/iobroker.mielecloudservice)\r\n[![Known Vulnerabilities](https://snyk.io/test/github/Grizzelbee/ioBroker.mielecloudservice/badge.svg?targetFile=package.json)](https://snyk.io/test/github/Grizzelbee/ioBroker.mielecloudservice?targetFile=package.json)\r\n[![Test and Release](https://github.com/Grizzelbee/ioBroker.mielecloudservice/actions/workflows/test-and-release.yml/badge.svg)](https://github.com/Grizzelbee/ioBroker.mielecloudservice/actions/workflows/test-and-release.yml)\r\n[![License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](https://github.com/grizzelbee/iobroker.mielecloudservice/blob/master/README.md)\r\n[![Downloads](https://img.shields.io/npm/dm/iobroker.mielecloudservice.svg)](https://www.npmjs.com/package/iobroker.mielecloudservice)\r\n[![NPM](https://nodei.co/npm/iobroker.mielecloudservice.png?downloads=true)](https://nodei.co/npm/iobroker.mielecloudservice/)\r\n\r\n## mielecloudservice adapter for ioBroker\r\n\r\nGet your Miele appliances (XGW3000 \u0026 WiFiConn@ct) connected\r\n\r\n\u003eIf you like this adapter and consider supporting me:\u003cbr/\u003e\r\n\u003e[![Donate with PayPal](admin/paypal-donate-button.png)](https://www.paypal.com/donate/?hosted_button_id=SPUDTXGNG2MYG)\r\n\r\n## Description\r\nThis adapter is for retrieving information about all your Miele@Home devices from the official Miele 3rd-party API.\r\nRegardless if they are connected directly via Wi-Fi or XGW3000 Gateway. It implements the **Miele 3rd Party API V1.0.5**\r\n\r\n## Prerequisites\r\n* Miele@Home User (Smartphone App)\r\n* Miele@Home Password (Smartphone App)\r\n* Miele Client_id (from https://www.miele.com/developer/)\r\n* Miele Client_secret (from https://www.miele.com/developer/ )\r\n\r\n## Installation\r\nTo install, do the following:\r\n\r\n1. Install via Admin using the\r\n1. Install via Admin using the\r\n* stable Repo - to get the current stable version\r\n* latest Repo - to get the latest test version (maybe not stable)\r\n* via: https://github.com/Grizzelbee/ioBroker.mielecloudservice.git - to get the latest development version\r\n2. create an App-Account for Miele@Home in the Miele Smartphone App\r\n3. Create a developer account at https://www.miele.com/f/com/en/register_api.aspx\r\n4. Add your Miele-Devices to the App (if not added automatically)\r\n6. Fill in the client_secret and client_id received from Miele-developer Team and account-id and password from the App.\r\n\r\n## Features\r\nThis adapter currently implements nearly all features of the Miele API V1.0.5 and some parts of API V1.0.6.\r\nThe capabilities of the API may (and do so currently) vary from the capabilities of the iOS and Android apps.\r\nE.g. there are no information available on the TwinDos - even the apps have them.\r\nThis includes:\r\n* All known and documented appliance types are supported (API V1.0.6).\r\n* Basic information for all appliance types.\r\n* Extended information for all appliance types.\r\n* EcoFeedback (water and/or power consumption) for appliances reporting this.\r\n  `Note: Not all devices report this information - event not if they do so in the iOS or Android apps. Search for the ecoFeedback folder in the device tree.`\r\n* Supported actions you can execute on this device - capabilities of the device are mostly reported by the API itself.\r\n\r\n## Known Issues\r\n* The programs are basically supported since v6.0.0 of the adapter. Except programs that need additional parameters like for ovens.\r\n\r\n## Configuration\r\n### Basic config\r\nTo get this adapter running you'll need at least:\r\n* Miele@Home User (from the Smartphone App)\r\n* Miele@Home Password (from the Smartphone App)\r\n* Miele Client_id (from https://www.miele.com/developer/)\r\n* Miele Client_secret (from https://www.miele.com/developer/ )\r\n\r\n### Requesting data from Miele servers\r\nSince V6.2.0 you have the opportunity to chose between \r\n* Server-Sent Events      (Server-Sent Events Checkbox is checked - default and *highly recommended*) \r\n* Time based Data-Polling (Server-Sent Events Checkbox is unchecked)\r\n* Delayed Processing\r\n\r\n#### Server-sent events (highly recommended)\r\nServer-Sent Events are a very neat method to get data from the miele servers since the servers will send you data \r\nwhenever there are changes. No useless polling every xx seconds ignoring whether there were changes or not. Unfortunately\r\nthere are issues using this connection type - it fails pretty often and only restarting the adapter solves this.\r\n\r\n#### Time based Data Polling\r\nTo improve stability of the adapter I reintroduced data polling as a config option you may use when SSE fails four you.\r\nNevertheless, SSE is the default, and I highly recommend trying and using it since it saves many resources on your and on \r\nMieles side. Beside of that I focus on SSE since Version 5.x.x.\r\nTime based Data-Polling relies on the two config options:\r\n* poll interval\r\n* poll interval unit (seconds/minutes)\r\n\r\n#### Delayed Processing\r\nIn case you own some Miele appliances and use them at the same time it may happen that the API gets sending many messages \r\nin a short time period. Depending on your ioBroker hardware this may overload your server and result in unresponsive \r\nvisualization or an unresponsive broker at all. To avoid this, this config option reduces the number of messages being\r\nprocessed to one message every xxx milliseconds. \r\nRelated config options:\r\n* delayed processing\r\n* message delay\r\n\r\n## Controlling your devices\r\n### Actions\r\nAll currently supported and documented Actions for all devices are implemented (API V1.0.5).\r\n\u003e Please remember that Actions will only work if you put your device into the appropriate state (e.g. Mobile Control, powerOn, ...).\r\nPlease refer to [Miele-Documentation](#documentation) for more Information on actions.\r\n\r\n### Programs (Introduced in API V1.0.5)\r\nWith API V1.0.5 Miele introduced a new endpoint called \"/programs\".\r\nThe support for this endpoint starts with adapter version 4.5.0. A new datapoint [device.Actions.Program] will be created listing all supported programs as returned by Miele.\r\n**Selecting one of the values will execute the program immediately!**\r\nCurrently, only simple programs are supported. E.g. Ovens need some additional information - this will be implemented in a future version.\r\n\r\nWhen publishing the adapter Miele documented a few device categories to support this endpoint and only (at least for me)\r\na subset of these really work. For my coffee system, washing machine and tumble dryer it only works for the coffee system.\r\nBut Miele is working on it and extends the support on a regular basis.\r\nPlease refer to the general Miele API documentation (below) for more information.\r\n\r\n\r\n## Documentation\r\nIf you like to get a deeper understanding or need a raw-value translation please refer to [this documentation.](machine_states.md)\r\n\r\n## Changelog\r\n \u003c!--\r\n   Placeholder for the next version (at the beginning of the line):\r\n   ### **WORK IN PROGRESS**\r\n --\u003e\n### 6.5.10 (2025-04-03)\r\n* (grizzelbee) Upd: Dependencies got updated\r\n* (grizzelbee) Fix: [494](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/494) Fixed some minor issues found by adapter-checker\n\n### 6.5.9 (2025-02-26)\r\n \r\n- (grizzelbee) Fix: [482](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/482) Fixed broken SSE connection\n\n### 6.5.8 (2025-02-13)\r\n- (grizzelbee) Upd: Dependencies got updated\r\n- (grizzelbee) Fix: Fixed some minor issues found by adapter-checker\r\n- (grizzelbee) Fix: Added screen size settings in Admin-UI for responsive design\r\n- (grizzelbee) Fix: Fixed sentry MIELECLOUDSERVICE-5V\n\n### 6.5.7 (2024-10-01)\r\n- (grizzelbee) Upd: Dependencies got updated\r\n- (grizzelbee) Fix: Fixed some minor issues found by adapter-checker\r\n- (grizzelbee) Upd: Added tests for node 22\n\n### 6.5.6 (2024-05-10) (Dying for an Angel)\r\n\r\n- (grizzelbee) New: [402](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/402) Added signalDoor to Washing machines, Tumble dryer and Washer dryer\r\n- (grizzelbee) Upd: Dependencies got updated\n\n### 6.5.5 (2024-01-03) (Dying for an Angel)\r\n\r\n- (grizzelbee) Upd: Added year 2024 to licence\r\n- (grizzelbee) Upd: Dependencies got updated\n\n### 6.5.4 (2023-05-03) (Dying for an Angel)\r\n* (grizzelbee) New: Added file `.ncurc.json` to prevent axios-oauth-client from being automatically updated by `npx npm-check-updates`\n\n### 6.5.3 (2023-04-26) (Dying for an Angel)\r\n* (grizzelbee) Fix: two minor bug fixes - including a fix that prevents objects from being updated constantly.\n\n### 6.5.2 (2023-04-21) (Dying for an Angel)\r\n* (grizzelbee) Fix: [367](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/367) Fixed \"oauth is not a function\" error during startup by downgrading axios-oauth-client to v1.5.0\n\n### 6.5.1 (2023-04-21) (Dying for an Angel)\r\n* (grizzelbee) Fix: Some minor fixes for ioBroker adapter checker\n\n### 6.5.0 (2023-04-18) (Dying for an Angel)\r\n* (grizzelbee) New: added device type 74 = Hob with vapour extraction (part of Miele API v1.0.6)\r\n* (grizzelbee) Upd: Updated ReadMe file\r\n* (grizzelbee) Chg: Dependencies got Updated\r\n* (grizzelbee) Chg: Important: Requires at least Node.js 14\r\n* (grizzelbee) Chg: Changed SpinningSpeed from number to string \r\n* (grizzelbee) New: Added RAW-Value to SpinningSpeed \r\n* (grizzelbee) Chg: Changed PlateStep-xxx from number to string (related to issue [356](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/356))\r\n* (grizzelbee) New: Added RAW-Value to Platesteps (related to issue [356](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/356))\r\n* (grizzelbee) Fix: [343](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/343) GENERIC_BUSINESS_ERROR occurred when switching ventilationStep\r\n* (grizzelbee) Fix: [356](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/356) In some cases the value 0 (zero) is ignored (e.g. at PlateStep)\r\n* (grizzelbee) Fix: [359](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/359) Fixed \"oauth is not a function\" error during startup by downgrading axios-oauth-client to v1.5.0\n\n### 6.4.0 (2022-09-07) (Dying for an Angel)\r\n* (grizzelbee) Fix: program names get localized now\r\n* (grizzelbee) New: moved Admin-UI to jsonConfig\r\n* (grizzelbee) Chg: BREAKING CHANGE: removed duplicate en-/decryption of passwords due to jsonConfig\r\n* (grizzelbee) Chg: Moved some documentation from the readme file to machine_states.md\n\n### 0.9.1 (2019-07-26)\r\n* (grizzelbee) Fix: Fixed small bug introduced in V0.9.0 throwing an exception in debugging code\n\n### 0.9.0 (2019-07-26)\r\n* (grizzelbee) Upd: New versioning due to completeness and stability of the adapter (about 90%)\r\n* (grizzelbee) New: make poll interval configurable  (currently 1,2,3,4,5,7,10,15 Minutes)\r\n* (grizzelbee) Fix: fixed ESLint config\r\n* (grizzelbee) Upd: Changed order of config fields in UI\r\n* (grizzelbee) New: Set 5 Minutes poll interval and english response language as default to get initial values\r\n* (grizzelbee) New: Parent-Datapoint of time values will be used to get a pretty readable time in the format h:mm. The deeper datapoints 0 and 1 will still be updated, but his will be removed in a future version to reduce workload.\n\n### 0.0.5 (2019-07-25)\r\n* (grizzelbee) Upd: some code maintenance\r\n* (grizzelbee) New: added reply-language to config\r\n   - Miele API is currently able to reply in German or English, now you can choose.\r\n* (grizzelbee) New: created new Icon\r\n* (grizzelbee) Fix: fixed translation issues and translated adapter UI using gulp\r\n* (grizzelbee) Upd: Made changes to travis requested by apollon77\n\n### 0.0.4\r\n* (hash99) add devices configuration\n\n### 0.0.3\r\n* (hash99) adapter conform\n\n### 0.0.1\r\n* (hash99) initial release\n\n## sentry.io\r\nThis adapter uses sentry.io to collect details on crashes and report it automated to the author. The [ioBroker.sentry](https://github.com/ioBroker/plugin-sentry)\r\nplugin is used for it. Please refer to the [plugin homepage](https://github.com/ioBroker/plugin-sentry) for detailed information\r\non what the plugin does, which information is collected and how to disable it, if you don't like to support the author with\r\nyour information on crashes.\r\n\r\n## License\r\nThe MIT License (MIT)\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in\r\nall copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\nTHE SOFTWARE.\r\n\r\n## Copyright\r\nCopyright (c) 2025 grizzelbee \u003copen.source@hingsen.de\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrizzelbee%2Fiobroker.mielecloudservice","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgrizzelbee%2Fiobroker.mielecloudservice","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrizzelbee%2Fiobroker.mielecloudservice/lists"}