iobroker.miele-local 0.2.1 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG_OLD.md +7 -0
- package/README.md +69 -31
- package/README_de.md +179 -0
- package/admin/i18n/de/translations.json +12 -2
- package/admin/i18n/en/translations.json +13 -3
- package/admin/i18n/es/translations.json +12 -2
- package/admin/i18n/fr/translations.json +12 -2
- package/admin/i18n/it/translations.json +12 -2
- package/admin/i18n/nl/translations.json +12 -2
- package/admin/i18n/pl/translations.json +12 -2
- package/admin/i18n/pt/translations.json +12 -2
- package/admin/i18n/ru/translations.json +12 -2
- package/admin/i18n/uk/translations.json +12 -2
- package/admin/i18n/zh-cn/translations.json +12 -2
- package/admin/jsonConfig.json +55 -49
- package/io-package.json +55 -2
- package/lib/discovery.js +2 -2
- package/lib/dop2.js +18 -1
- package/lib/objects.js +54 -50
- package/lib/push.js +4 -4
- package/main.js +134 -74
- package/package.json +10 -5
package/CHANGELOG_OLD.md
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Older changes
|
|
2
|
+
|
|
3
|
+
## 0.1.1 (2026-08-17)
|
|
4
|
+
* (Immanuel) Released via GitHub Actions with npm provenance (trusted publishing). Published under former package name `iobroker.miele-lokal`.
|
|
5
|
+
|
|
6
|
+
## 0.1.0 (2026-08-17)
|
|
7
|
+
* (Immanuel) Initial release: login/GroupKey retrieval, mDNS discovery, state polling with enum decoding, optional SuperVision push, optional control. Published under former package name `iobroker.miele-lokal`.
|
package/README.md
CHANGED
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
[](https://www.npmjs.com/package/iobroker.miele-local)
|
|
6
6
|
[](LICENSE)
|
|
7
7
|
|
|
8
|
+
*Read this in another language: [Deutsche Dokumentation](README_de.md).*
|
|
9
|
+
|
|
8
10
|
This adapter connects modern **Miele@Home** appliances **locally, without the internet**.
|
|
9
11
|
It speaks the local Miele protocol (`MieleH256` / DOP2) directly over the LAN — no cloud
|
|
10
12
|
account during operation, no detour through the Miele 3rd-party API.
|
|
@@ -29,29 +31,28 @@ account during operation, no detour through the Miele 3rd-party API.
|
|
|
29
31
|
## Installation
|
|
30
32
|
|
|
31
33
|
1. Install the adapter and create an instance.
|
|
32
|
-
2. On the **Login** tab, choose your country and
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
the
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
- **
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
Both yield the same text with `code=` and `state=`; the adapter accepts both forms.
|
|
34
|
+
2. On the **Login** tab, choose your country and follow the 3-step login guide below.
|
|
35
|
+
3. Paste the captured `miele://…` redirect address and click **Fetch GroupKey**. GroupID and
|
|
36
|
+
GroupKey are stored securely (GroupKey encrypted).
|
|
37
|
+
4. Save. The adapter discovers your devices and creates the states.
|
|
38
|
+
|
|
39
|
+
### Step-by-step: Capturing the redirect URL
|
|
40
|
+
|
|
41
|
+
Because the final `miele://` address is a custom mobile-app scheme, desktop browsers cannot open
|
|
42
|
+
it automatically and will hang on a spinning wheel. Capture the URL using browser DevTools:
|
|
43
|
+
|
|
44
|
+
1. **Prepare DevTools:** Click **Open login page** to open the Miele login in a new tab. In that
|
|
45
|
+
new tab, press **F12** to open Developer Tools and switch to the **Network** tab. Enable
|
|
46
|
+
persistent logging:
|
|
47
|
+
- **Chrome / Edge / Brave:** Check **Preserve log**.
|
|
48
|
+
- **Firefox:** Click the gear icon ⚙️ and check **Persist Logs**.
|
|
49
|
+
2. **Sign In:** Enter the email and password of your Miele app account and submit the login.
|
|
50
|
+
*Note:* The page will remain on a spinning wheel (or report a failed load) — this is completely
|
|
51
|
+
expected and indicates success.
|
|
52
|
+
3. **Copy & Submit:** In the Network tab (F12), scroll to the very last (usually red) request. It
|
|
53
|
+
starts with `redirect?redirect_uri=miele...` or `miele://oauth2-code/...`. Right-click this
|
|
54
|
+
entry → **Copy URL** (or **Copy link address**). Paste it into the **miele:// redirect URL**
|
|
55
|
+
field in ioBroker and click **Fetch GroupKey**.
|
|
55
56
|
|
|
56
57
|
## Required ports / firewall
|
|
57
58
|
|
|
@@ -95,17 +96,20 @@ transmitted to third parties; in normal operation there is no cloud connection.
|
|
|
95
96
|
|
|
96
97
|
## States (excerpt)
|
|
97
98
|
|
|
98
|
-
Per device under `<serial>.info` (static)
|
|
99
|
+
Per device under `<serial>.info` (static/connectivity), `<serial>.state` (live) and `<serial>.eco`:
|
|
99
100
|
|
|
101
|
+
- `info.connected` — connectivity status (true when appliance responds)
|
|
100
102
|
- `state.statusText` / `state.status` — operating state (plain text + raw value)
|
|
101
103
|
- `state.programText` / `state.programId` — running program
|
|
102
104
|
- `state.programPhaseText` / `state.programPhase` — program phase
|
|
103
105
|
- `state.remainingMinutes`, `state.elapsedMinutes`, `state.startInMinutes`
|
|
106
|
+
- `state.remainingSeconds`, `state.elapsedSeconds` (optional second-precise DOP2 values)
|
|
104
107
|
- `state.estimatedEndTime` / `state.estimatedEndTimeText` — projected finish time
|
|
105
108
|
- `state.temperature[Zone2/3]`, `state.targetTemperature[Zone2/3]`
|
|
106
109
|
- `state.signalDoor`, `state.signalInfo`, `state.signalFailure`
|
|
107
110
|
- `state.mobileStart` — whether remote control is enabled on the device
|
|
108
111
|
- `state.light`, `state.spinningSpeed` (washing machine), `state.dryingStepText` (dryer)
|
|
112
|
+
- `eco.energy` (kWh), `eco.energyWh` (Wh), `eco.water` (l) (where supported)
|
|
109
113
|
- `info.techType`, `info.fabNumber`, `info.xkmType`, `info.xkmVersion`, `info.deviceType`
|
|
110
114
|
|
|
111
115
|
With control enabled, additionally `<serial>.control.*` (start, stop, pause, powerOn,
|
|
@@ -136,12 +140,52 @@ consequences of use.
|
|
|
136
140
|
|
|
137
141
|
## Acknowledgements
|
|
138
142
|
|
|
143
|
+
Special thanks to **[meistermopper](https://github.com/meistermopper)**, an experienced
|
|
144
|
+
ioBroker adapter developer, who reviewed this adapter unprompted and contributed substantial
|
|
145
|
+
improvements: periodic background discovery for appliances waking from standby, a per-device
|
|
146
|
+
connectivity state, corrected state roles and units, explicit defaults for all states, and
|
|
147
|
+
German documentation. His work went into release 0.3.0.
|
|
148
|
+
|
|
139
149
|
The local protocol (`MieleH256`, DOP2, provisioning) is based on the public reverse
|
|
140
150
|
engineering work of the projects `MieleRESTServer` (akappner),
|
|
141
151
|
`home-assistant-miele-mobile` and `ha-miele-at-lan`.
|
|
142
152
|
|
|
143
153
|
## Changelog
|
|
144
154
|
|
|
155
|
+
### 0.3.3
|
|
156
|
+
- Fix E3005: states declared as `number` no longer receive `null` when the appliance does not
|
|
157
|
+
report a value - the datapoint keeps its default instead. `estimatedEndTime` is cleared with
|
|
158
|
+
0 rather than null.
|
|
159
|
+
- Fix E1011: `state.light` is read-only and now carries role `sensor.light`; switching happens
|
|
160
|
+
through `control.lightOn`/`lightOff`.
|
|
161
|
+
|
|
162
|
+
### 0.3.2
|
|
163
|
+
- EcoFeedback conversion moved into `dop2.ecoValues()` and covered by unit tests against the
|
|
164
|
+
cloud-verified reference values (1991 Wh = 1.991 kWh, 953 = 95.3 l).
|
|
165
|
+
|
|
166
|
+
### 0.3.1
|
|
167
|
+
- Fix: `applyIdent` threw on the new `connected` field, which has no ident path. Because that
|
|
168
|
+
entry comes first, **all** device data stayed empty - model, serial number, firmware.
|
|
169
|
+
- Eco polling now logs why it skips a device instead of failing silently.
|
|
170
|
+
|
|
171
|
+
### 0.3.0
|
|
172
|
+
- Adopt ioBroker development guidelines and conformity rules.
|
|
173
|
+
- Translate internal log messages to pure English.
|
|
174
|
+
- Add explicit default metadata values (`def`) to all state definitions.
|
|
175
|
+
- Sanitize dynamic object IDs against forbidden characters.
|
|
176
|
+
- Add local verification test script (`npm run test:local`).
|
|
177
|
+
- Add German documentation (`README_de.md`).
|
|
178
|
+
- Fix dev-server packaging issue by removing redundant prepare script.
|
|
179
|
+
- Clarify step-by-step login instructions and i18n translations.
|
|
180
|
+
- Add CHANGELOG_OLD.md for historical pre-rename versions.
|
|
181
|
+
- Add per-device connectivity state (`info.connected`).
|
|
182
|
+
- Add periodic background discovery for waking/standby appliances.
|
|
183
|
+
- Add admin UI configuration for second-precise remaining time polling.
|
|
184
|
+
- Refine EcoFeedback state roles and measurement units.
|
|
185
|
+
- mDNS auto-discovery is no longer marked experimental - confirmed working.
|
|
186
|
+
|
|
187
|
+
Most of the above was contributed by [meistermopper](https://github.com/meistermopper).
|
|
188
|
+
|
|
145
189
|
### 0.2.1
|
|
146
190
|
- Released via GitHub Actions with npm provenance (trusted publishing). No functional
|
|
147
191
|
changes.
|
|
@@ -150,13 +194,7 @@ engineering work of the projects `MieleRESTServer` (akappner),
|
|
|
150
194
|
- Renamed from `miele-lokal` to `miele-local`: English adapter name and title.
|
|
151
195
|
First release under the new package name.
|
|
152
196
|
|
|
153
|
-
|
|
154
|
-
- Released via GitHub Actions with npm provenance (trusted publishing). No functional
|
|
155
|
-
changes. Published under the former name `iobroker.miele-lokal`.
|
|
156
|
-
|
|
157
|
-
### 0.1.0
|
|
158
|
-
- Initial release: login/GroupKey retrieval, mDNS discovery, state polling with enum
|
|
159
|
-
decoding, optional SuperVision push, optional control.
|
|
197
|
+
[Older changelog entries can be found here](CHANGELOG_OLD.md)
|
|
160
198
|
|
|
161
199
|
## License
|
|
162
200
|
|
package/README_de.md
ADDED
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
3
|
+
# ioBroker.miele-local
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/iobroker.miele-local)
|
|
6
|
+
[](LICENSE)
|
|
7
|
+
|
|
8
|
+
*Diese Dokumentation in einer anderen Sprache lesen: [English documentation](README.md).*
|
|
9
|
+
|
|
10
|
+
Dieser Adapter verbindet moderne **Miele@Home**-Geräte **lokal ohne Internet**.
|
|
11
|
+
Er spricht das lokale Miele-Protokoll (`MieleH256` / DOP2) direkt über das LAN – kein
|
|
12
|
+
Cloud-Konto im laufenden Betrieb, kein Umweg über die Miele 3rd-Party-Cloud-API.
|
|
13
|
+
|
|
14
|
+
> Der einmalige **Login** mit dem Miele-Konto dient nur dazu, den haushaltsweiten
|
|
15
|
+
> lokalen Schlüssel (GroupID/GroupKey) abzurufen. Danach läuft der Adapter komplett
|
|
16
|
+
> offline, und die Miele-App funktioniert unverändert weiter.
|
|
17
|
+
|
|
18
|
+
## Funktionen
|
|
19
|
+
|
|
20
|
+
- **Automatischer Abruf der Zugangsdaten** über einen geführten Login (Cloud-OAuth), ohne
|
|
21
|
+
die Geräte neu anlernen zu müssen.
|
|
22
|
+
- **Automatische Geräteerkennung** über mDNS (`_mieleathome._tcp`).
|
|
23
|
+
- **Live-Zustände** aller unterstützten Geräteklassen (Waschmaschine, Trockner,
|
|
24
|
+
Spülmaschine, Backofen, Dampfgarer, Kochfeld, Kaffeevollautomat u. v. m.) mit Klartext-Dekodierung
|
|
25
|
+
von Status, Programm und Phase.
|
|
26
|
+
- **Echtzeit-Aktualisierungen** über den SuperVision-Push-Kanal (optional), mit Polling als
|
|
27
|
+
zuverlässigem Fallback.
|
|
28
|
+
- **Steuerung** (optional): Start/Stop/Pause, Licht, Ein/Aus über beschreibbare Datenpunkte –
|
|
29
|
+
sofern „MobileStart / Fernsteuerung" am Gerät aktiviert ist.
|
|
30
|
+
|
|
31
|
+
## Installation
|
|
32
|
+
|
|
33
|
+
1. Adapter installieren und Instanz anlegen.
|
|
34
|
+
2. Im Tab **Login** das Land wählen und der folgenden 3-Schritte-Anleitung folgen.
|
|
35
|
+
3. Die abgefangene `miele://…`-Weiterleitungsadresse einfügen und auf **GroupKey abrufen** klicken.
|
|
36
|
+
GroupID und GroupKey werden sicher gespeichert (GroupKey verschlüsselt).
|
|
37
|
+
4. Speichern. Der Adapter findet die Geräte per mDNS und legt die Datenpunkte an.
|
|
38
|
+
|
|
39
|
+
### Schritt-für-Schritt: Weiterleitungs-URL abfangen
|
|
40
|
+
|
|
41
|
+
Da die finale `miele://`-Adresse ein mobiles App-Protokoll ist, können Desktop-Browser sie nicht
|
|
42
|
+
automatisch öffnen und bleiben bei einem sich drehenden Laderad stehen. Fange die URL mit den
|
|
43
|
+
Entwicklertools (DevTools) deines Browsers ab:
|
|
44
|
+
|
|
45
|
+
1. **Entwicklertools vorbereiten:** Klicke auf **Login-Seite öffnen**, um den Login in einem neuen Tab
|
|
46
|
+
zu öffnen. Drücke in dem neuen Tab **F12** (Entwicklertools) und wechsle auf den Reiter **Netzwerk**
|
|
47
|
+
(Network). Aktiviere die dauerhafte Protokollierung:
|
|
48
|
+
- **Chrome / Edge / Brave:** Haken bei **Log beibehalten** (*Preserve log*) setzen.
|
|
49
|
+
- **Firefox:** Auf das Zahnrad-Symbol ⚙️ klicken und **Protokolle dauerhaft anzeigen** (*Persist Logs*) aktivieren.
|
|
50
|
+
2. **Anmelden:** E-Mail und Passwort deines Miele-App-Kontos eingeben und die Anmeldung abschicken.
|
|
51
|
+
*Hinweis:* Die Seite bleibt bei einem Laderad stehen (oder meldet einen Ladefehler) – das ist völlig
|
|
52
|
+
normal und signalisiert Erfolg.
|
|
53
|
+
3. **Kopieren & Einbinden:** Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten)
|
|
54
|
+
Zeile scrollen. Sie beginnt mit `redirect?redirect_uri=miele...` oder `miele://oauth2-code/...`.
|
|
55
|
+
Mache einen Rechtsklick auf diese Zeile → **URL kopieren** (bzw. **Link-Adresse kopieren**). Füge sie
|
|
56
|
+
in das Feld **miele://-Redirect-URL** im ioBroker ein und klicke auf **GroupKey abrufen**.
|
|
57
|
+
|
|
58
|
+
## Benötigte Ports / Firewall
|
|
59
|
+
|
|
60
|
+
| Richtung | Port | Zweck | Erforderlich |
|
|
61
|
+
|---|---|---|---|
|
|
62
|
+
| Eingehend | TCP *Push-Port* (Standard 18082) | Geräte senden Echtzeit-Updates an ioBroker | nur bei aktivem Push |
|
|
63
|
+
| Ein/Aus | UDP 5353 (mDNS) | Geräteerkennung und Push-Registrierung | ja |
|
|
64
|
+
| Ausgehend | TCP 80 → Geräte | Zustände lesen / Steuerbefehle senden | ja |
|
|
65
|
+
| Ausgehend | TCP 443 → miele-iot.com | nur beim Login (GroupKey abrufen) | nur beim Login |
|
|
66
|
+
|
|
67
|
+
Ohne Push ist **kein eingehender Port** erforderlich. ioBroker und die Geräte müssen sich im
|
|
68
|
+
selben Broadcast-Segment befinden (keine VLAN-/Docker-Bridge-Trennung), damit mDNS funktioniert.
|
|
69
|
+
|
|
70
|
+
### Betrieb in Docker (wichtig)
|
|
71
|
+
|
|
72
|
+
Wenn ioBroker in einem **Docker-Container mit Bridge-Netzwerk** läuft (Standard, z. B. buanet-Image),
|
|
73
|
+
kann die automatische **mDNS-Erkennung die Geräte nicht erreichen** – Multicast wird nicht
|
|
74
|
+
gebrückt. Die direkte Kommunikation (TCP 80) funktioniert, da sie geroutet wird. In diesem Fall:
|
|
75
|
+
|
|
76
|
+
- **Geräte-IPs manuell im Tab „Geräte & Polling" eintragen.** Das Polling funktioniert dann normal.
|
|
77
|
+
- **Push** funktioniert im Bridge-Netzwerk nicht (die Geräte können den Container nicht erreichen). Für
|
|
78
|
+
Push den Container im **Host-Netzwerk** betreiben (`network_mode: host`) – der Push-Port ist
|
|
79
|
+
dann automatisch erreichbar.
|
|
80
|
+
|
|
81
|
+
### Wie Push technisch funktioniert
|
|
82
|
+
|
|
83
|
+
Bei aktiviertem Push führt der Adapter ein **Enrollment** je Gerät durch: `PUT
|
|
84
|
+
/Devices/<series>/SuperVision/<own-fab>` (registriert den Adapter als Haushalts-Peer) sowie mehrere
|
|
85
|
+
`POST /Subscriptions` mit einer **Callback-URL** `http://<ioBroker-LAN-IP>:<push-port>/…`. Das
|
|
86
|
+
Gerät sendet Zustandsänderungen dann unaufgefordert (sub-sekündlich) an diese URL. Die Subscriptions
|
|
87
|
+
werden periodisch erneuert. Erreicht das Gerät die Callback-URL nicht, greift der Adapter automatisch
|
|
88
|
+
auf Polling zurück.
|
|
89
|
+
|
|
90
|
+
## Datenschutz
|
|
91
|
+
|
|
92
|
+
Es werden **keine personenbezogenen Daten** im Adapter gespeichert. GroupID, GroupKey und
|
|
93
|
+
Refresh-Token verbleiben ausschließlich in der (verschlüsselten) Instanzkonfiguration bzw. in
|
|
94
|
+
ioBroker-Objekten. Es erfolgt keine Datenübertragung an Dritte; im laufenden Betrieb besteht
|
|
95
|
+
keine Cloud-Verbindung.
|
|
96
|
+
|
|
97
|
+
## Datenpunkte (Auszug)
|
|
98
|
+
|
|
99
|
+
Je Gerät unter `<serial>.info` (statisch/Verbindung), `<serial>.state` (live) und `<serial>.eco`:
|
|
100
|
+
|
|
101
|
+
- `info.connected` – Erreichbarkeitsstatus (true, wenn Gerät antwortet)
|
|
102
|
+
- `state.statusText` / `state.status` – Betriebszustand (Klartext + Rohwert)
|
|
103
|
+
- `state.programText` / `state.programId` – Laufendes Programm
|
|
104
|
+
- `state.programPhaseText` / `state.programPhase` – Programmphase
|
|
105
|
+
- `state.remainingMinutes`, `state.elapsedMinutes`, `state.startInMinutes`
|
|
106
|
+
- `state.remainingSeconds`, `state.elapsedSeconds` (sekundengenau via DOP2)
|
|
107
|
+
- `state.estimatedEndTime` / `state.estimatedEndTimeText` – Voraussichtliches Programmende
|
|
108
|
+
- `state.temperature[Zone2/3]`, `state.targetTemperature[Zone2/3]`
|
|
109
|
+
- `state.signalDoor`, `state.signalInfo`, `state.signalFailure`
|
|
110
|
+
- `state.mobileStart` – Gibt an, ob MobileStart/Fernsteuerung am Gerät aktiv ist
|
|
111
|
+
- `state.light`, `state.spinningSpeed` (Waschmaschine), `state.dryingStepText` (Trockner)
|
|
112
|
+
- `eco.energy` (kWh), `eco.energyWh` (Wh), `eco.water` (l) (wo unterstützt)
|
|
113
|
+
- `info.techType`, `info.fabNumber`, `info.xkmType`, `info.xkmVersion`, `info.deviceType`
|
|
114
|
+
|
|
115
|
+
Bei aktivierter Steuerung zusätzlich `<serial>.control.*` (start, stop, pause, powerOn,
|
|
116
|
+
powerOff, lightOn, lightOff).
|
|
117
|
+
|
|
118
|
+
## Kompatibilität / Grenzen
|
|
119
|
+
|
|
120
|
+
- Getestet an Waschmaschine (WCR860/EK037), Spülmaschine (G5840/EK037) und Backofen (H2469BP/EK057).
|
|
121
|
+
- Kühl- und Gefriergeräte sind lokal meist **nur lesbar** (die Firmware lehnt Schreibbefehle ab).
|
|
122
|
+
- Steuerbefehle setzen „MobileStart / Fernsteuerung" am Gerät voraus; manche Firmware-Versionen
|
|
123
|
+
beantworten DOP2-Schreibbefehle mit HTTP 404/500.
|
|
124
|
+
- Der SuperVision-Push ist eine Best-Effort-Ergänzung; Polling ist der zuverlässige Standardpfad.
|
|
125
|
+
|
|
126
|
+
## Rechtliche Hinweise / Haftungsausschluss
|
|
127
|
+
|
|
128
|
+
Dies ist ein **inoffizielles, privat entwickeltes** Projekt und steht in **keiner Verbindung zu
|
|
129
|
+
Miele & Cie. KG**. „Miele", „Miele@home" und zugehörige Bezeichnungen sind eingetragene
|
|
130
|
+
Marken der Miele & Cie. KG und werden hier nur beschreibend zur Kompatibilitätsangabe verwendet.
|
|
131
|
+
|
|
132
|
+
Der Adapter nutzt ein lokales Protokoll, das durch **Reverse Engineering** dokumentiert wurde.
|
|
133
|
+
Die Nutzung erfolgt **auf eigene Verantwortung**. Die Software wird unter MIT-Lizenz
|
|
134
|
+
**ohne Mängelgewähr** bereitgestellt (siehe LICENSE).
|
|
135
|
+
|
|
136
|
+
## Danksagung
|
|
137
|
+
|
|
138
|
+
Besonderer Dank gilt **[meistermopper](https://github.com/meistermopper)**, einem erfahrenen
|
|
139
|
+
Entwickler von ioBroker-Adaptern, der diesen Adapter unaufgefordert durchgesehen und
|
|
140
|
+
erhebliche Verbesserungen beigesteuert hat: die periodische Gerätesuche im Hintergrund für
|
|
141
|
+
Geräte, die aus dem Standby aufwachen, einen Erreichbarkeits-Datenpunkt je Gerät, korrigierte
|
|
142
|
+
Rollen und Einheiten, explizite Vorgabewerte für alle Datenpunkte sowie die deutsche
|
|
143
|
+
Dokumentation. Seine Arbeit ist in Version 0.3.0 eingeflossen.
|
|
144
|
+
|
|
145
|
+
Das lokale Protokoll (`MieleH256`, DOP2, Provisioning) basiert auf der Vorarbeit der
|
|
146
|
+
Open-Source-Projekte `MieleRESTServer` (akappner), `home-assistant-miele-mobile` und
|
|
147
|
+
`ha-miele-at-lan`.
|
|
148
|
+
|
|
149
|
+
## Changelog
|
|
150
|
+
|
|
151
|
+
### **WORK IN PROGRESS**
|
|
152
|
+
|
|
153
|
+
### 0.2.1 (2026-08-18)
|
|
154
|
+
- Adopt ioBroker development guidelines and conformity rules.
|
|
155
|
+
- Translate internal log messages to pure English.
|
|
156
|
+
- Add explicit default metadata values (`def`) to all state definitions.
|
|
157
|
+
- Sanitize dynamic object IDs against forbidden characters.
|
|
158
|
+
- Add local verification test script (`npm run test:local`).
|
|
159
|
+
- Add German documentation (`README_de.md`).
|
|
160
|
+
- Fix dev-server packaging issue by removing redundant prepare script.
|
|
161
|
+
- Clarify step-by-step login instructions and i18n translations.
|
|
162
|
+
- Add CHANGELOG_OLD.md for historical pre-rename versions.
|
|
163
|
+
- Add per-device connectivity state (`info.connected`).
|
|
164
|
+
- Add periodic background discovery for waking/standby appliances.
|
|
165
|
+
- Add admin UI configuration for second-precise remaining time polling.
|
|
166
|
+
- Refine EcoFeedback state roles and measurement units.
|
|
167
|
+
|
|
168
|
+
### 0.2.1
|
|
169
|
+
- Veröffentlichung über GitHub Actions mit npm-Provenance (Trusted Publishing). Keine funktionalen Änderungen.
|
|
170
|
+
|
|
171
|
+
### 0.2.0
|
|
172
|
+
- Umbenennung von `miele-lokal` in `miele-local`: englischer Adaptername und Titel.
|
|
173
|
+
Erste Version unter dem neuen Paketnamen.
|
|
174
|
+
|
|
175
|
+
[Ältere Einträge sind hier zu finden](CHANGELOG_OLD.md)
|
|
176
|
+
|
|
177
|
+
## Lizenz
|
|
178
|
+
|
|
179
|
+
MIT License - Copyright (c) 2026 Immanuel
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Datenpunkt-Namen auf Deutsch",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "EcoFeedback (Energie/Wasser) abrufen",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "EcoFeedback-Intervall in Sekunden",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "SuperVision-Push aktivieren (experimentell, Echtzeit)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Schritt 1: Entwicklertools im Browser vorbereiten",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Schritt 2: Bei Miele anmelden",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Schritt 3: Adresse kopieren & GroupKey ermitteln",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Hintergrund-Suche Intervall in Minuten",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Sekundengenaue Rest-/Laufzeit abrufen (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Sekunden-Abfrageintervall in Sekunden"
|
|
44
54
|
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"Login-Seite öffnen": "Open login page",
|
|
10
10
|
"miele://-Redirect-URL": "miele:// redirect URL",
|
|
11
11
|
"GroupKey ermitteln": "Fetch GroupKey",
|
|
12
|
-
"Geräte automatisch per mDNS finden": "
|
|
12
|
+
"Geräte automatisch per mDNS finden": "Find devices automatically via mDNS",
|
|
13
13
|
"Jetzt suchen": "Search now",
|
|
14
14
|
"Manuelle Geräte-IPs (optional, zusätzlich)": "Manual device IPs (optional, additional)",
|
|
15
15
|
"IP-Adresse": "IP address",
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "State names in German",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "Fetch EcoFeedback (energy/water)",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "EcoFeedback interval in seconds",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "Enable SuperVision push (experimental, real-time)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Background discovery interval in minutes",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Fetch second-precise remaining/elapsed time (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Second polling interval in seconds"
|
|
44
54
|
}
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Nombres de estados en alemán",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "Obtener EcoFeedback (energía/agua)",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "Intervalo de EcoFeedback en segundos",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "Activar push SuperVision (experimental, tiempo real)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Intervalo de descubrimiento en segundo plano en minutos",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Obtener tiempo restante/transcurrido exacto en segundos (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Intervalo de consulta en segundos"
|
|
44
54
|
}
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Noms des états en allemand",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "Récupérer EcoFeedback (énergie/eau)",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "Intervalle EcoFeedback en secondes",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "Activer le push SuperVision (expérimental, temps réel)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Intervalle de découverte en arrière-plan en minutes",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Récupérer le temps restant/écoulé précis à la seconde (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Intervalle d'interrogation en secondes"
|
|
44
54
|
}
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Nomi degli stati in tedesco",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "Recupera EcoFeedback (energia/acqua)",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "Intervallo EcoFeedback in secondi",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "Abilita push SuperVision (sperimentale, tempo reale)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Intervallo di rilevamento in background in minuti",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Recupera tempo rimanente/trascorso preciso al secondo (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Intervallo di polling in secondi"
|
|
44
54
|
}
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Statusnamen in het Duits",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "EcoFeedback (energie/water) ophalen",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "EcoFeedback-interval in seconden",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "SuperVision-push inschakelen (experimenteel, realtime)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Achtergrond detectie interval in minuten",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Exacte resterende/verstreken tijd in seconden ophalen (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Seconden poll-interval in seconden"
|
|
44
54
|
}
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Nazwy stanów po niemiecku",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "Pobieraj EcoFeedback (energia/woda)",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "Interwał EcoFeedback w sekundach",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "Włącz push SuperVision (eksperymentalne, czas rzeczywisty)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Interwał wykrywania w tle w minutach",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Pobieraj dokładny czas pozostały/upłynięty w sekundach (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Interwał odpytywania sekundowego w sekundach"
|
|
44
54
|
}
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Nomes de estados em alemão",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "Obter EcoFeedback (energia/água)",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "Intervalo de EcoFeedback em segundos",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "Ativar push SuperVision (experimental, tempo real)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Intervalo de descoberta em segundo plano em minutos",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Buscar tempo restante/decorrido exato em segundos (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Intervalo de consulta em segundos"
|
|
44
54
|
}
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Названия состояний на немецком",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "Получать EcoFeedback (энергия/вода)",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "Интервал EcoFeedback в секундах",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "Включить push SuperVision (экспериментально, реальное время)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Интервал фонового поиска в минутах",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Получать точное оставшееся/прошедшее время в секундах (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Интервал секундного опроса в секундах"
|
|
44
54
|
}
|
|
@@ -39,6 +39,16 @@
|
|
|
39
39
|
"Datenpunkt-Namen auf Deutsch": "Назви станів німецькою",
|
|
40
40
|
"EcoFeedback (Energie/Wasser) abrufen": "Отримувати EcoFeedback (енергія/вода)",
|
|
41
41
|
"EcoFeedback-Intervall in Sekunden": "Інтервал EcoFeedback у секундах",
|
|
42
|
-
"
|
|
43
|
-
"
|
|
42
|
+
"SuperVision-Push aktivieren (experimentell, Echtzeit)": "Увімкнути push SuperVision (експериментально, реальний час)",
|
|
43
|
+
"Schritt 1: Entwicklertools im Browser vorbereiten": "Step 1: Prepare browser developer tools",
|
|
44
|
+
"1. Oben auf „Login-Seite öffnen“ klicken (ein neuer Browser-Tab öffnet sich).\n2. Im neuen Tab F12 drücken und auf den Reiter „Netzwerk“ (Network) wechseln.\n3. Protokollierung dauerhaft aktivieren:\n • Chrome / Edge / Brave: Haken bei „Log beibehalten“ (Preserve log) setzen.\n • Firefox: Zahnrad ⚙️ ➔ „Protokolle dauerhaft anzeigen“ (Persist Logs) aktivieren.": "1. Click 'Open login page' above (a new browser tab opens).\n2. In the new tab, press F12 and switch to the 'Network' tab.\n3. Enable persistent logging:\n • Chrome / Edge / Brave: Check 'Preserve log'.\n • Firefox: Click gear ⚙️ ➔ check 'Persist Logs'.",
|
|
45
|
+
"Schritt 2: Bei Miele anmelden": "Step 2: Sign in with Miele",
|
|
46
|
+
"1. E-Mail und Passwort deines Miele-App-Kontos eingeben und auf „Anmeldung“ klicken.\n2. Wichtig: Nach dem Login bleibt die Seite bei einem sich drehenden Laderad stehen (oder meldet einen Fehler). Das ist völlig normal und bedeutet, dass die Anmeldung erfolgreich war!": "1. Enter your Miele app account email and password and click 'Sign in'.\n2. Note: After login, the page will hang on a spinning loading wheel (or show an error). This is completely normal and indicates success!",
|
|
47
|
+
"Schritt 3: Adresse kopieren & GroupKey ermitteln": "Step 3: Copy redirect address & fetch GroupKey",
|
|
48
|
+
"1. Im Netzwerk-Tab (F12) ganz nach unten zur letzten (meist rot markierten) Zeile scrollen. Sie beginnt mit „redirect?redirect_uri=miele...“ oder „miele://oauth2-code/...“.\n2. Rechtsklick auf diese Zeile ➔ „URL kopieren“ (bzw. „Adresse des Links kopieren“).\n3. Die kopierte Adresse unten in das Feld einfügen und auf „GroupKey ermitteln“ klicken.": "1. In the Network tab (F12), scroll to the very last (often red) request starting with 'redirect?redirect_uri=miele...' or 'miele://oauth2-code/...'.\n2. Right-click that entry ➔ 'Copy URL' / 'Copy link address'.\n3. Paste the URL into the field below and click 'Fetch GroupKey'.",
|
|
49
|
+
"Der Adapter ermittelt die lokalen Zugangsdaten (GroupID/GroupKey) einmalig über eine Anmeldung mit Ihrem Miele-Konto. Die Miele-App funktioniert danach unverändert weiter. Es werden keine Zugangsdaten an Dritte übertragen.": "The adapter retrieves local credentials (GroupID/GroupKey) once by signing in with your Miele account. The Miele app continues to work as before. No credentials are transmitted to third parties.",
|
|
50
|
+
"Nach erfolgreicher Ermittlung stehen GroupID und (verschlüsselt gespeicherter) GroupKey unten im Tab „Erweitert\". Speichern nicht vergessen.": "Once retrieved, GroupID and encrypted GroupKey appear on the 'Advanced' tab. Don't forget to save.",
|
|
51
|
+
"Hintergrund-Suche Intervall in Minuten": "Інтервал фонового пошуку в хвилинах",
|
|
52
|
+
"Sekundengenaue Rest-/Laufzeit abrufen (DOP2)": "Отримувати точний залишковий/минулий час у секундах (DOP2)",
|
|
53
|
+
"Sekunden-Abfrageintervall in Sekunden": "Інтервал секундного опитування в секундах"
|
|
44
54
|
}
|