Skip to content

Commit

Permalink
Merge pull request #75 from Grizzelbee/Dev_3.0.0
Browse files Browse the repository at this point in the history
Dev 3.0.0
  • Loading branch information
Grizzelbee authored Feb 18, 2021
2 parents 08d494e + 2f8abbd commit ee24c7d
Show file tree
Hide file tree
Showing 17 changed files with 1,578 additions and 1,373 deletions.
50 changes: 26 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

## Description
This adapter is for retrieving information about all your Miele@Home devices from the official Miele 3rd-party API.
Regardless if they are connected directly via WiFi or XGW3000 Gateway. It implements the **Miele 3rd Party API V1.0.3**
Regardless if they are connected directly via Wi-Fi or XGW3000 Gateway. It implements the **Miele 3rd Party API V1.0.4**

## Prerequisites
* Miele@Home User (Smartphone App)
Expand All @@ -25,25 +25,27 @@ To install, do the following:

1. Install via Admin using the
* stable Repo - to get the current stable version
* latest Repo - to get the latest test version (may be not stable)
* latest Repo - to get the latest test version (maybe not stable)
* via: https://github.com/Grizzelbee/ioBroker.mielecloudservice.git - to get the latest development version
2. create an App-Account for Miele@Home in the Miele Smartphone App
3. Create a developer account at https://www.miele.com/f/com/en/register_api.aspx
4. Add your Miele-Devices to the App (if not added automatically)
6. Fill in the client_secret and client_id received from Miele-developer Team and account-id and password from the App.

## ToDo
* Implement MieleAPI 1.0.4 - https://www.miele.com/developer/news.html
* Add Sentry
* Check for new Warning with js-controller 3.2
* encrypt password(s) using js-controller



## Changelog
### 2.1.0 (2021-02-xx)
### 3.0.0 (2021-02-18)
* (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](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/70) Implements Miele API 1.0.4
* (grizzelbee) New: [64](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/64) Introduces data point estimatedFinishingTime
* (grizzelbee) New: [54](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/54) Poll interval can now freely be selected in seconds and minutes
* (grizzelbee) Upd: [73](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/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](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/63) added missing info.connection object to io-package
* (grizzelbee) Fix: [63](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/63) Fixed new Warnings introduced with js-controller 3.2
* (grizzelbee) Fix: [74](https://github.com/Grizzelbee/ioBroker.mielecloudservice/issues/74) Light-Actions should work now

### 2.0.3 (2020-09-15)
* (grizzelbee) Upd: Updated country list in config dialog
Expand Down Expand Up @@ -83,19 +85,19 @@ Due to the fix that datapoints with invalid values aren't created any longer, I
* (grizzelbee) Fix: Moved testing of Config to On(Ready) and fixed unit tests with this.

### 1.2.1 (2020-04-22)
* (grizzelbee) New: Introduced new boolean state (**signalActionRequired**) that indicates that the machine has finished running, but a human action, like putting the wet clothes to the dryer, ... is needed. State is cleared automatically when the door of the appliance is opened, or it is restarted. State is implemented for washing machines, tumbledryers, washer dryer and dishwashers. **Dosen't work perfectly currently.**
* (grizzelbee) New: Introduced new boolean state (**signalActionRequired**) that indicates that the machine has finished running, but a human action, like putting the wet clothes to the dryer, ... is needed. State is cleared automatically when the door of the appliance is opened, or it is restarted. State is implemented for washing machines, tumble dryers, washer dryer and dishwashers. **Doesn't work perfectly currently.**
* (grizzelbee) Upd: Updated Documentation
* (grizzelbee) Fix: Fixed warnings with js-Controller >=3.0 (Issue #23)

### 1.2.0 (2020-04-18)
* (grizzelbee) New: Added new boolean state (**Connected**) that indicates whether the device is connected to WLAN or a gateway.
* (grizzelbee) New: Added new boolean state (**signalInUse**) that indicates whether the device is switched off (false) or in Use (true).
* (grizzelbee) Change: replaced the deprecated http-library **request** with **axios**
* (grizzelbee) Change: Made functions communicating with API asynchronus
* (grizzelbee) Change: Made functions communicating with API asynchronous

### 1.1.0 (2020-03-07)
* (grizzelbee) New: Added Actions - Implemented all currently supported and documented Actions for all devices
Please remember that Actions will only work if you put your device into the appropiate state (e.g. Mobile Control)
Please remember that Actions will only work if you put your device into the appropriate state (e.g. Mobile Control)
please refer to [Miele-Documentation](#documentation) for more Information on actions.

### 1.0.5 (2020-02-14)
Expand All @@ -120,18 +122,18 @@ Due to the fix that datapoints with invalid values aren't created any longer, I
* (grizzelbee) Fixed bug in config interface introduced during password encryption that config values aren't loaded properly

### 1.0.1 (2020-02-04)
* (grizzelbee) Fixes in environment for getting Adapater into the Repo
* (grizzelbee) Passwords are stored encyrpted now
* (grizzelbee) Fixes in environment for getting adapter into the Repo
* (grizzelbee) Passwords are stored encrypted now

### 1.0.0 (2020-02-03)
* (grizzelbee) renamed to MieleCloudService to get the ability to publish; the old Name is still blocked by hash99
* (grizzelbee) Rewritten adapter from scratch - therefor it's incompatible with prior versions and needs to be installed freshly.
* (grizzelbee) Rewritten adapter from scratch - therefore it's incompatible with prior versions and needs to be installed freshly.
* (grizzelbee) Fix: fixed all build-errors
* (grizzelbee) Fix: Fixed "NRefreshToken is not a function"-Bug
* (grizzelbee) Chg: removed Push-API checkbox (may be introduced newly when API supports this)
* (grizzelbee) Chg: removed Push-API checkbox (maybe introduced newly when API supports this)
* (grizzelbee) Chg: New Icon
* (grizzelbee) New: added support for Non german Miele-Accounts (ALL should be included)
* (grizzelbee) Completely new layout of datapoints
* (grizzelbee) New: added support for non-german Miele-Accounts (ALL should be included)
* (grizzelbee) Complete new layout of datapoints
* (grizzelbee) Devicetypes are grouped now

### 0.9.1 (2019-07-26)
Expand Down Expand Up @@ -167,12 +169,12 @@ Please mainly refer to the main API documentation published by Miele
* [General Documentation](https://www.miele.com/developer/swagger-ui/index.html)
* [Preconditions to perform an action on a device](https://www.miele.com/developer/swagger-ui/put_additional_info.html)

There are some datapoints avaliable in 2 kinds. As a human readable text and as a number.
These numeric datafields belonging to a textfield have the same name but a "_raw" appended.
There are some datapoints available in 2 kinds. As a human-readable text and as a number.
These numeric datafields belonging to a text field have the same name, but a "_raw" appended.
Those fields which have a general meaning are listed below.
The fields which aren't listed vary in their meaning from device to device and aren't decumented by Miele.
The fields which aren't listed vary in their meaning from device to device and are not documented by Miele.
If you need to refer in scripts to these fields, always use the _raw values.
The textvalues may change in the future and also depend on the language.
The text values may change in the future and also depend on the language.
Here is a list of what these raw values stand for:

### DeviceTypes
Expand Down
31 changes: 17 additions & 14 deletions admin/i18n/de/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,27 @@
"Auto": "Auto",
"Client_ID": "API-Client-ID",
"Client_ID_desc": "Ihre Miele API Client-ID",
"Client_secret": "API-Client-Secret",
"Client_secret_desc": "Ihr Miele API Client-Secret",
"Completely rewritten, all states in a new order, DON'T update Adapter - remove and make a clean new install": "Vollständig umgeschrieben, alle Status in einer neuen Reihenfolge, aktualisieren Sie den Adapter NICHT - entfernen Sie ihn und führen Sie eine saubere Neuinstallation durch",
"Client_secret": "API Client-Geheimnis",
"Client_secret_desc": "Ihr Miele API Client-Geheimnis",
"Completely rewritten, all states in a new order, DON'T update Adapter - remove and make a clean new install": "Vollständig neu geschrieben, alle Zustände in einer neuen Reihenfolge, Adapter NICHT aktualisieren - entfernen und neu installieren",
"English": "Englisch",
"German": "Deutsch",
"Manual": "Manual",
"German": "Deutsche",
"Manual": "Handbuch",
"Miele_Account": "Miele-Konto",
"Miele_Account_desc": "Ihr Miele App-Account (in der Regel ihre eMail)",
"Miele_Account_desc": "Ihr Miele App-Account (normalerweise Ihre E-Mail)",
"Miele_pwd": "Miele Passwort",
"Miele_pwd_desc": "Ihr Miele App-Account Passwort",
"My select": "Meine Auswahl",
"locale": "API-Sprache",
"locale_desc": "Sprache in der die API antwortet.",
"Minutes": "Minuten",
"Seconds": "Sekunden",
"locale": "API-Antwortsprache",
"locale_desc": "Sprache, in der die Miele-API antworten soll",
"minor updates": "kleinere Updates",
"oauth2_vg": "Miele-Konto Land",
"oauth2_vg": "Miele Konto Land",
"oauth2_vg_desc": "Land, in dem das Miele-Konto eröffnet wurde.",
"on save adapter restarts with new config immediately": "Beim Speichern von Einstellungen der Adapter wird sofort neu gestartet.",
"pollinterval": "API-Pollintervall",
"pollinterval_desc": "Zeit zwischen zwei API-Abfragen (in Minuten)",
"template adapter settings": "Beispiel"
"on save adapter restarts with new config immediately": "Beim Speichern wird der Adapter sofort mit der neuen Konfiguration neu gestartet",
"pollUnit": "Abfrageintervalleinheit",
"pollUnit_desc": "Poll die API in Sekunden oder Minuten",
"pollinterval": "API-Abfrageintervall",
"pollinterval_desc": "Zeit zwischen zwei API-Abfragen (in Abfrageintervalleinheit)",
"template adapter settings": "Vorlagenadaptereinstellungen"
}
7 changes: 5 additions & 2 deletions admin/i18n/en/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,17 @@
"Miele_Account_desc": "Your Miele App-Account (usually your eMail)",
"Miele_pwd": "Miele Password",
"Miele_pwd_desc": "Your Miele App-Account Password",
"My select": "",
"Minutes": "Minutes",
"Seconds": "Seconds",
"locale": "API Response language",
"locale_desc": "Language the Miele-API should respond in",
"minor updates": "minor updates",
"oauth2_vg": "Miele account Country",
"oauth2_vg_desc": "Country the Miele account was opened in.",
"on save adapter restarts with new config immediately": "on save adapter restarts with new config immediately",
"pollUnit": "Poll interval unit",
"pollUnit_desc": "Poll API in seconds or minutes",
"pollinterval": "API poll interval",
"pollinterval_desc": "Time between two API polls (in Minutes)",
"pollinterval_desc": "Time between two API polls (in poll interval unit)",
"template adapter settings": "template adapter settings"
}
31 changes: 17 additions & 14 deletions admin/i18n/es/translations.json
Original file line number Diff line number Diff line change
@@ -1,25 +1,28 @@
{
"Auto": "Auto",
"Client_ID": "ID de cliente API",
"Client_ID_desc": "Tu Miele API Client-ID",
"Client_ID_desc": "Su ID de cliente de la API de Miele",
"Client_secret": "API cliente-secreto",
"Client_secret_desc": "Tu Miele API Client-Secret",
"Completely rewritten, all states in a new order, DON'T update Adapter - remove and make a clean new install": "Completamente reescrito, todos los estados en un nuevo orden, NO actualice el adaptador: elimine y realice una nueva instalación limpia",
"English": "Inglés",
"Client_secret_desc": "Su secreto de cliente de la API de Miele",
"Completely rewritten, all states in a new order, DON'T update Adapter - remove and make a clean new install": "Completamente reescrito, todos los estados en un nuevo orden, NO actualice el adaptador: elimínelo y realice una nueva instalación limpia",
"English": "inglés",
"German": "alemán",
"Manual": "Manual",
"Miele_Account": "Cuenta Miele",
"Miele_Account_desc": "Tu cuenta de la aplicación Miele (normalmente tu correo electrónico)",
"Miele_Account_desc": "Su cuenta de la aplicación Miele (generalmente su correo electrónico)",
"Miele_pwd": "Contraseña de Miele",
"Miele_pwd_desc": "Su aplicación Miele-Contraseña de cuenta",
"My select": "Mi seleccion",
"locale": "Auto",
"locale_desc": "Auto",
"Miele_pwd_desc": "Su contraseña de la cuenta de la aplicación Miele",
"Minutes": "Minutos",
"Seconds": "Segundos",
"locale": "Lenguaje de respuesta API",
"locale_desc": "Idioma en el que la API de Miele debería responder",
"minor updates": "actualizaciones menores",
"oauth2_vg": "Cuenta Miele País",
"oauth2_vg_desc": "País en el que se abrió la cuenta de Miele.",
"on save adapter restarts with new config immediately": "en el adaptador de guardar se reinicia con nueva configuración de inmediato",
"pollinterval": "API-Pollinterval",
"pollinterval_desc": "Tiempo entre dos encuestas API (en Minutues)",
"oauth2_vg": "País de la cuenta Miele",
"oauth2_vg_desc": "País en el que se abrió la cuenta Miele.",
"on save adapter restarts with new config immediately": "al guardar el adaptador se reinicia con una nueva configuración inmediatamente",
"pollUnit": "Unidad de intervalo de encuesta",
"pollUnit_desc": "Encuesta API en segundos o minutos",
"pollinterval": "Intervalo de sondeo de API",
"pollinterval_desc": "Tiempo entre dos sondeos de API (en unidad de intervalo de sondeo)",
"template adapter settings": "configuración del adaptador de plantilla"
}
31 changes: 17 additions & 14 deletions admin/i18n/fr/translations.json
Original file line number Diff line number Diff line change
@@ -1,25 +1,28 @@
{
"Auto": "Auto",
"Client_ID": "ID client API",
"Client_ID_desc": "Votre numéro de client API Miele",
"Client_secret": "API client-secret",
"Client_ID_desc": "Votre ID client API Miele",
"Client_secret": "Client-secret API",
"Client_secret_desc": "Votre secret client API Miele",
"Completely rewritten, all states in a new order, DON'T update Adapter - remove and make a clean new install": "Entièrement réécrit, tous les états dans une nouvelle commande, ne mettez pas à jour l'adaptateur - supprimez et effectuez une nouvelle installation propre",
"Completely rewritten, all states in a new order, DON'T update Adapter - remove and make a clean new install": "Complètement réécrit, tous les états dans un nouvel ordre, NE PAS mettre à jour l'adaptateur - supprimer et effectuer une nouvelle installation propre",
"English": "Anglais",
"German": "allemand",
"German": "Allemand",
"Manual": "Manuel",
"Miele_Account": "Compte Miele",
"Miele_Account_desc": "Votre compte Miele App (habituellement vous envoyez un e-mail)",
"Miele_pwd": "Miele Password",
"Miele_pwd_desc": "Votre mot de passe du compte de l'application Miele",
"My select": "Mon choix",
"locale": "Auto",
"locale_desc": "Auto",
"Miele_Account_desc": "Votre compte d'application Miele (généralement votre e-mail)",
"Miele_pwd": "Mot de passe Miele",
"Miele_pwd_desc": "Votre mot de passe de compte d'application Miele",
"Minutes": "Minutes",
"Seconds": "Secondes",
"locale": "Langage de réponse API",
"locale_desc": "Langue dans laquelle l'API Miele doit répondre",
"minor updates": "mises à jour mineures",
"oauth2_vg": "Compte Miele Pays",
"oauth2_vg_desc": "Pays dans lequel le compte Miele a été ouvert.",
"on save adapter restarts with new config immediately": "sur l'adaptateur de sauvegarde redémarre avec la nouvelle config immédiatement",
"pollinterval": "API-Pollinterval",
"pollinterval_desc": "Temps entre deux interrogations API (en minutes)",
"template adapter settings": "paramètres de l'adaptateur de modèle"
"on save adapter restarts with new config immediately": "lors de l'enregistrement, l'adaptateur redémarre immédiatement avec la nouvelle configuration",
"pollUnit": "Unité d'intervalle d'interrogation",
"pollUnit_desc": "Interroger l'API en quelques secondes ou minutes",
"pollinterval": "Intervalle d'interrogation API",
"pollinterval_desc": "Temps entre deux sondages API (en unité d'intervalle d'interrogation)",
"template adapter settings": "paramètres d'adaptateur de modèle"
}
29 changes: 16 additions & 13 deletions admin/i18n/it/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,26 @@
"Client_ID": "ID client API",
"Client_ID_desc": "Il tuo ID client API Miele",
"Client_secret": "Segreto client API",
"Client_secret_desc": "Il segreto del client API Miele",
"Client_secret_desc": "Il tuo client-segreto API Miele",
"Completely rewritten, all states in a new order, DON'T update Adapter - remove and make a clean new install": "Completamente riscritto, tutti gli stati in un nuovo ordine, NON aggiornare l'adattatore: rimuovi ed esegui una nuova installazione pulita",
"English": "Inglese",
"English": "inglese",
"German": "Tedesco",
"Manual": "Manuale",
"Miele_Account": "Conto Miele",
"Miele_Account_desc": "Il tuo account App Miele (di solito la tua e-mail)",
"Miele_Account": "Account Miele",
"Miele_Account_desc": "Il tuo account App Miele (solitamente la tua e-mail)",
"Miele_pwd": "Password Miele",
"Miele_pwd_desc": "La password dell'account app Miele",
"My select": "La mia selezione",
"locale": "Auto",
"locale_desc": "Auto",
"Miele_pwd_desc": "La password dell'account dell'app Miele",
"Minutes": "Minuti",
"Seconds": "Secondi",
"locale": "Linguaggio di risposta API",
"locale_desc": "Lingua in cui dovrebbe rispondere Miele-API",
"minor updates": "aggiornamenti minori",
"oauth2_vg": "Conto Miele Paese",
"oauth2_vg_desc": "Paese in cui è stato aperto l'account Miele.",
"on save adapter restarts with new config immediately": "su save adapter si riavvia immediatamente con la nuova configurazione",
"pollinterval": "API-PollInterval",
"pollinterval_desc": "Tempo tra due sondaggi API (in minuti)",
"oauth2_vg": "Account Miele Paese",
"oauth2_vg_desc": "Paese in cui è stato aperto il conto Miele.",
"on save adapter restarts with new config immediately": "al salvataggio dell'adattatore si riavvia immediatamente con la nuova configurazione",
"pollUnit": "Unità dell'intervallo di polling",
"pollUnit_desc": "Sondaggio API in pochi secondi o minuti",
"pollinterval": "Intervallo di polling API",
"pollinterval_desc": "Tempo tra due sondaggi API (in unità dell'intervallo di polling)",
"template adapter settings": "impostazioni dell'adattatore del modello"
}
Loading

0 comments on commit ee24c7d

Please sign in to comment.