FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: choenig am 14 Juni 2020, 11:08:17

Titel: [Neues Modul] Miele@Home
Beitrag von: choenig am 14 Juni 2020, 11:08:17
Hi,

im Anhang findet Ihr ein Modul im Beta-Stadium, mit dem Ihr eure Miele@Home-fähigen Geräte in FHEM einbinden könnt (nur monitoring).

Ich habe das Modul bereits vor 6 Monaten geschrieben, und so lange arbeitet es für mich einwandfrei und liest die Informationen meiner Waschmaschine aus der Miele-Cloud aus.

Aktuell werden nur Waschmaschinen unterstützt, da ich nix anderes zur Hand habe. Ich geh' davon aus, dass andere Geräte auch angezeigt werden, jedoch noch nicht alle Readings erzeugt werden (z.B. Kühlschränke). Wenn ihr mich dabei unterstützt, füge ich jedoch gerne weitere Gerätetypen hinzu :).

Das Modul kommuniziert mit der Miele 3rd-Party-Cloud-API, für die Ihr euch zwingend registrieren müsst. Folgende Schritte sind nötig (die in der CommandRef genauer dokumentiert sind):

Benutzung des Moduls auf eigene Gefahr!

Aktuelle CommandRef:
MieleAtHome - Controls Miele@home Devices

About

The MieleAtHome module uses the Miele 3rd Party Cloud API. You need a Miele Developer Account to use it! See below for details.
To use the MieleAtHome module you first have to define a device which will act als shared provider for your credentials. When this one is set up, you can use the autocreate-feature to create devices for your appliances.

Miele Developer Account:

To use this module you need to register as a developer at https://www.miele.com/f/com/en/register_api.aspx. After you successfully registered, you will receive a clientId and a clientSecret which you'll need to configure in your <gateway>-device.

Define

(1) Setup gateway:
define <gateway> MieleAtHome

(2a) Autocreate devices:
set <gateway> autocreate

(2b) Manually create devices:
define <MieleDevice> MieleAtHome <DeviceId>@<gateway> [Interval]

Example

(1) Setup gateway:
define MieleConnection MieleAtHome
attr MieleConnection login mylogin@example.com
attr MieleConnection clientId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
set MieleConnection password mypassword
set MieleConnection clientSecret yyyyyyyyyyyyyyyyyyyy

This instance (MieleConnection) will be used to share the credentials. You have to set the attributes login and clientId. Then you have to set password and clientSecret via set MieleConnection-command.

(2a) Autocreate devices:
set MieleConnection autocreate

This will create a device called Miele_xxxxxxxxxxxxx. You can rename autocreated devices afterwards.

(2b) Manually create devices:
define Waschmaschine MieleAtHome 000123456789@MieleConnection 120

This statement creates the instance of your specific Miele@home appliance with the name Waschmaschine and the DeviceId 000123456789 and a refresh-interval of 120 seconds. The interval is optional, its default is 1800 seconds.

Set
autocreate
autocreate fhem-devices for each Miele@home appliance found in your account. Needs login, clientId, password and clientSecret to be configured properly. Only available for the gateway device.
clientSecret <secret>
sets the clientSecret of your Miele@home-developer Account and stores it in a file (base64-encoded if you have MIME::Base64 installed).
light [enable|disable]
enable/disable the light of your device. only available depending on the type and state of your appliance.
on
power up your device. only available depending on the type and state of your appliance.
off
power off your device. only available depending on the type and state of your appliance.
password <pass>
set the password of your Miele@home Account and stores it in a file (base64-encoded if you have MIME::Base64 installed).
pause
pause your device. only available depending on the type and state of your appliance.
start
start your device. only available depending on the type and state of your appliance.
stop
stop your device. only available depending on the type and state of your appliance.
startSuperFreezing
start super freezing your device. only available depending on the type and state of your appliance.
stopSuperFreezing
stop super freezing your device. only available depending on the type and state of your appliance.
startSuperCooling
start super cooling your device. only available depending on the type and state of your appliance.
stopSuperCooling
stop super cooling your device. only available depending on the type and state of your appliance.
update
instantly update all readings.
ventilationStep [Step1|Step2|Step3|Step4]
set the ventilation step of your device. only available depending on the type and state of your appliance.

Get
listDevices
lists the devices associated with your Miele@home-account. Needs login, clientId, password and clientSecret to be configured properly.

Attributes
clientId
set the clientId of your Miele@home-developer account.
login
set the login of your Miele@home account.
disable
disables this MieleAtHome-instance.
lang [de|en]
request the readings in either german or english. en is default.


Changelog
0.5.0
0.6.0
0.6.1
0.7.0
0.8.0
0.9.0
0.10.0
0.11.0
0.12.0
0.13.0
0.14.0
0.15.0

Viel Spass und LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: xerion am 14 Juni 2020, 20:49:56
Hi Christian,

danke für das Modul. Habe das gerade mal installiert und hat auf Anhieb funktioniert. Ich werde das mal parallel zu meiner vorhandenen Installation von meiner Waschmaschine beobachten.
Hast du auch vor die "PUT" Befehle zu integrieren? Da ich das jetzt schon für meine PV-Anlage nutze um die WM anzuschalten.

Danke und Gruß
Frank
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 14 Juni 2020, 21:29:26
Hi,

PUT für powerOn und powerOff habe ich bereits implementiert. Den Rest implementiere ich gerne, wenn interesse besteht :)

Das sind in Deinem Fall die 'processActions' START und STOP und PAUSE?

Ich weiss ehrlich gesagt gar nicht mehr, wieso ich die PUTs nicht alle schon implementiert habe.

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: xerion am 15 Juni 2020, 10:28:51
Hi,

oh stimmt habe ich glatt übersehen. Ich nutze nur den Fernstart ({"processAction":1}, diese setzte aber voraus, das die WM entsprechend vorbereitet ist, das Frage ich per DOIF ab.
Aber das könnte ich jetzt ja über remoteEnableFullRC und remoteEnableSmartGrid.

Ideal wäre es natürlich wenn du für den jeweiligen processAction die PreCondoition abfragen könntest und wenn diese nicht True sind, das es einen Fehler gibt wenn man die dazugehörige ProcessAction ausführen möchte. Also in meinen Beispiel den Fernstart wo (fullRemoteControl==true) && (status==4) sein muss.
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: LukeSky007 am 15 Juni 2020, 20:32:22
Hi Christian,
hab dein Modul gerade mal auf unsere neue WCI860  losgelassen ... und geht ;-)   - supi - vielen Dank für dein Modul.

Was schön wäre, wenn man die Einstellung von INTERVAL  nachträglich  ändern könnte, so was wie Set <Device> Interval <value>|<default>

Viele Grüße
Luke


Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 15 Juni 2020, 20:40:34
Hi,

Ideal wäre es natürlich wenn du für den jeweiligen processAction die PreCondoition abfragen könntest und wenn diese nicht True sind, das es einen Fehler gibt wenn man die dazugehörige ProcessAction ausführen möchte. Also in meinen Beispiel den Fernstart wo (fullRemoteControl==true) && (status==4) sein muss.

Das kann ich überprüfen, in dem ich die actions_* readings auslese. Diese entsprechen nämlich den aktuell verfügbaren Aktionen. Das bau ich ein, hab gestern damit angefangen, hab' aber leider nicht so viel Zeit, kommt aber :).

Was schön wäre, wenn man die Einstellung von INTERVAL  nachträglich  ändern könnte, so was wie Set <Device> Interval <value>|<default>

Du kannst das INTERVAL als parameter im DEF angeben, also

define Waschmaschiene MieleAtHome <DeviceId>@<gateway> [Interval].

Es ist zur Zeit so, dass das eingestellte INTERVAL nur gilt, so lange die WaMa 'Off' ist, sobald sie eingeschaltet ist, wird immer 60s verwendet.

Ich nutz hier zu Hause ein Interval von 120s, das finde ich ziemlich passend. Vielleicht wäre das auch der bessere Default-Wert. Ich weiss jedoch noch nicht, wie sich das ganze bei Kühlschränken verhält, die ja vermutlich immer 'On' sind.

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 20 Juni 2020, 11:45:32
Hi,

ich habe gerade Version 0.6.0 hochgeladen. Jetzt werden erstmal alle ProcessActions unterstützt:
0x01 => "start",              # 1 START
0x02 => "stop",               # 2 STOP
0x03 => "pause",              # 3 PAUSE
0x04 => "startSuperFreezing", # 4 START SUPERFREEZING
0x05 => "stopSuperFreezing",  # 5 STOP SUPERFREEZING
0x06 => "startSuperCooling",  # 6 START SUPERCOOLING
0x07 => "stopSuperCooling",   # 7 STOP SUPERCOOLING

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 20 Juni 2020, 12:39:06
Ich habe jetzt gerade noch eine 0.6.1 hinterhergeschoben, in der man auch light, ventilationStep und startTime setzen kann.

Das scheint meine WaMa aber nicht zu unterstützen, bitte deshalb um Mithilfe von Benutzern mit entsprechenden Geräten :)

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: xerion am 21 Juni 2020, 21:01:33
Bei mir sieht es jetzt bis dato alles sehr gut aus. Man kann ja die Value in "de" und "en" anzeigen lassen. Was hältst du davon, das als Atribute einzubauen damit man sich die Sprache der Stati auswählen kann?

Ergänzung. Ich war zu schnell. Habe gerade mal im Code geschaut...das hast du ja schon drin. Kannst also meine Anfrage ignorieren.
Tolle Arbeit Danke.
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 21 Juni 2020, 21:22:49
Ich empfehle die commandref, die ich heute übrigens nochmal überarbeitet habe ;)

Danke, für das Feedback :)

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: fhemfrederik am 21 Juni 2020, 22:15:40
Hallo Christian,

habe eine Spülmaschine und bekomme leider immer
MieleConnection (MieleAtHome::MAH_onOauthLoginReply:597) Error: Bearer code not found
zurück. Bei Miele komme ich mit meinen Zugangsdaten rein.

Hast du einen Tipp? Kann es was damit zu tun haben?
 1: PERL WARNING: "my" variable $action masks earlier declaration in same scope at ./FHEM/48_MieleAtHome.pm line 1219.

Viele Grüße
Frederik
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 21 Juni 2020, 22:52:00
Hi Frederik,

habe eine Spülmaschine und bekomme leider immer
MieleConnection (MieleAtHome::MAH_onOauthLoginReply:597) Error: Bearer code not found
zurück. Bei Miele komme ich mit meinen Zugangsdaten rein.

Mh, habe ich noch nie gesehen. Ich geh davon aus, dass Du login, password, clientId und clientSecret korrekt gesetzt hast? Benutzt du configDB? (Nicht, dass ich glaube, dass es was damit zu tun hat). Hast Du Mime::Base64 installiert? (Was zeigt das Internal HAS_MimeBase64?)

Das muss ich mir mal genauer ansehen.

1: PERL WARNING: "my" variable $action masks earlier declaration in same scope at ./FHEM/48_MieleAtHome.pm line 1219.

Nein, damit hat es nichts zu tun, den fixe mit dem nächsten Release :).

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 21 Juni 2020, 23:07:42
Ich nochmal,

Frederik, siehst Du Dich in der Lage, die 48_MieleAtHome.pm selber anzupassen, oder soll ich dir eine mit mehr logging zur Verfügung stellen?

Wenn Du es kannst, könntest Du vor Zeile 597 folgendes Log einfügen:
MAH_Log($hash, 2, "headers: ${headers}");

Dann nochmal versuchen und gucken, ob im Log 'code=...' vorkommt. Vielleicht sieht der auch anders aus, als von mir erwartet.

Wenn der headers-log keine geheimen Daten enthält, kannst du sie auch gerne posten, oder auch gerne per PM.

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: fhemfrederik am 21 Juni 2020, 23:19:01
Hallo Christian,

HAS_MimeBase64 = 1

Die Zugangsdaten habe ich (mehrmals) aus einem PW-Manager rauskopiert. Bei Miele klappt es. Einen Fehler würde ich ausschließen. Gibt es bei Dir verbotene Sonderzeichen?
ConfigDB habe ich nicht im Einsatz. Nur LogDB!

Hier das Log.

2020.06.21 23:13:38 2: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:597) headers: HTTP/1.1 400 Bad Request
Server: openresty/1.15.8.2
Date: Sun, 21 Jun 2020 21:13:38 GMT
Content-Type: application/json
Content-Length: 45
Connection: close
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: PUT, GET, POST, OPTIONS
Access-Control-Allow-Headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization
2020.06.21 23:13:38 2: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:598) Error: Bearer code not found

Bei Miele muss ich übrigens noch "Miele Deutschland" wählen. Die Einstellung habe ich bei Dir nicht gefunden.

Viele Grüße
Frederik
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 21 Juni 2020, 23:28:01
Ok, das hilft mir nicht. Bad Request. Keine Ahnung, wieso.

Kannst Du verbose mal auf 5 stellen? Dann sehe ich auch den $data-Teil.

Sonst muss ich mich mal genauer in oauth2 einlesen.

> Gibt es bei Dir verbotene Sonderzeichen?

Nein, nicht, dass ich wüsste.

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: fhemfrederik am 21 Juni 2020, 23:35:05
Hier mit Verbose 5

2020.06.21 23:29:27 5: MieleConnection (MieleAtHome::MAH_refreshAccessToken:453) called
2020.06.21 23:29:27 5: Cmd: >deletereading MieleConnection lastError<
2020.06.21 23:29:27 5: MieleConnection (MieleAtHome::MAH_doThirdpartyLoginRequest:489) called
2020.06.21 23:29:27 5: HttpUtils url=https://api.mcs3.miele.com/thirdparty/login/?response_type=code&state=login&client_id=xxx&scope=&redirect_uri=https%3A%2F%2Fapi.mcs3.miele.com%2Fthirdparty%2Flogin%2F
2020.06.21 23:29:27 4: IP: api.mcs3.miele.com -> 137.117.150.39
2020.06.21 23:29:28 5: HttpUtils request header:
GET /thirdparty/login/?response_type=code&state=login&client_id=xxx&scope=&redirect_uri=https%3A%2F%2Fapi.mcs3.miele.com%2Fthirdparty%2Flogin%2F HTTP/1.0
Host: api.mcs3.miele.com
User-Agent: fhem
Accept-Encoding: gzip,deflate

2020.06.21 23:29:28 4: https://api.mcs3.miele.com/thirdparty/login/?response_type=code&state=login&client_id=xxx&scope=&redirect_uri=https%3A%2F%2Fapi.mcs3.miele.com%2Fthirdparty%2Flogin%2F: HTTP response code 200
2020.06.21 23:29:28 5: HttpUtils https://api.mcs3.miele.com/thirdparty/login/?response_type=code&state=login&client_id=xxx=&redirect_uri=https%3A%2F%2Fapi.mcs3.miele.com%2Fthirdparty%2Flogin%2F: Got data, length: 6426
2020.06.21 23:29:28 5: HttpUtils response header:
HTTP/1.1 200 OK
Server: openresty/1.15.8.2
Date: Sun, 21 Jun 2020 21:29:28 GMT
Content-Type: text/html
Content-Length: 2228
Connection: close
Strict-Transport-Security: max-age=15724800; includeSubDomains
Vary: Accept-Encoding
Content-Encoding: gzip
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: PUT, GET, POST, OPTIONS
Access-Control-Allow-Headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization
2020.06.21 23:29:28 5: MieleConnection (MieleAtHome::MAH_onThirdpartyLoginReply:522) reply: err:, code:200, SKIPPING DATA
2020.06.21 23:29:28 5: MieleConnection (MieleAtHome::MAH_doOauthLoginRequest:539) called
2020.06.21 23:29:28 5: HttpUtils url=https://api.mcs3.miele.com/oauth/auth
2020.06.21 23:29:28 4: IP: api.mcs3.miele.com -> 137.117.150.39
2020.06.21 23:29:28 5: HttpUtils request header:
POST /oauth/auth HTTP/1.0
Host: api.mcs3.miele.com
User-Agent: fhem
Accept-Encoding: gzip,deflate
Content-Length: 221
Content-Type: application/x-www-form-urlencoded

2020.06.21 23:29:28 4: https://api.mcs3.miele.com/oauth/auth: HTTP response code 400
2020.06.21 23:29:28 5: HttpUtils https://api.mcs3.miele.com/oauth/auth: Got data, length: 45
2020.06.21 23:29:28 5: HttpUtils response header:
HTTP/1.1 400 Bad Request
Server: openresty/1.15.8.2
Date: Sun, 21 Jun 2020 21:29:28 GMT
Content-Type: application/json
Content-Length: 45
Connection: close
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: PUT, GET, POST, OPTIONS
Access-Control-Allow-Headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization
2020.06.21 23:29:28 5: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:587) reply: err:, code:400: data:{"code":400,"message":"HTTP 400 Bad Request"}
2020.06.21 23:29:28 2: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:597) headers: HTTP/1.1 400 Bad Request
Server: openresty/1.15.8.2
Date: Sun, 21 Jun 2020 21:29:28 GMT
Content-Type: application/json
Content-Length: 45
Connection: close
Strict-Transport-Security: max-age=15724800; includeSubDomains
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: PUT, GET, POST, OPTIONS
Access-Control-Allow-Headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization
2020.06.21 23:29:28 2: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:598) Error: Bearer code not found

Viele Grüße
Frederik

P.S. Bin dann mal weg für heute. Danke!
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 21 Juni 2020, 23:42:27
Erstmal danke für das Log, guck ich mir morgen im Detail an.

Aber zum Thema Sonderzeichen. Möglicheweise ist das doch ein Problem, weil ich die un-encodiert in die URL schreibe. Benutzt Du Sonderzeichen, die möglicherweise die URL kaputt machen? Sowas wie '?' oder '&' z.B.? Werde die mal percent-encode in der nächsten Version, vielleicht hilft das schon.

LG und gute Nacht
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: fhemfrederik am 21 Juni 2020, 23:50:25
Diese sind es nicht, aber ja. Eines davon macht unescaped die URL kaputt!  ;)
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 21 Juni 2020, 23:51:13
Ok, dann fixe ich das ASAP :)

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: fhemfrederik am 21 Juni 2020, 23:54:55
Super. Danke! Jetzt aber wirklich gute Nacht  :)
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 22 Juni 2020, 19:19:04
So, ich habe gerade im ersten Post die 0.8.0 hochgeladen. In der urlEncode ich jetzt alle Daten, die ich für das oauth2 versende. Hoffentlich hilft das :).

Jetzt hoffe ich, dass Dein Sonderzeichen kein " " ist, das kann man vermutlich nichtmal per 'set' setzen ;).

Die $action-Warnung hab' ich auch noch gefixt.

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: fhemfrederik am 22 Juni 2020, 19:29:45
Als ich das Passwort neu gesetzt hatte, habe ich HTTP ERROR 400 bekommen!? Aber es klappt! Dishwasher ist da!
Danke. Wenn Du auf dem Weg zur 1.0 noch einen Tester brauchst einfach melden.

Viele Grüße
Frederik
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 22 Juni 2020, 21:39:38
Prima,

ich freu mich, wenn Du es beobachtest, und irgendwann nochmal Feedback gibst. Bei Probleme natürlich sofort :)

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: JoWiemann am 23 Juni 2020, 10:05:26
Hallo Christian,

gibt man set <gateway> autocreate in der Fhem Commandline an, ohne das es schon in der Befehlsliste im Fhem Web auswählbar ist, so schmiert Fhem mit folgender Fehlermeldung ab:

myMiele (MieleAtHome::MAH_onThirdpartyTokenReply:660) Error: code != 200: 401
Can't use string ("Please authenticate first") as an ARRAY ref while "strict refs" in use at ./FHEM/48_MieleAtHome.pm line 1087.

Grüße Jörg
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 23 Juni 2020, 10:22:12
ui  :-\

guck ich mir an. Danke :)

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: JoWiemann am 23 Juni 2020, 10:43:59
Hallo Christian,

könntest Du das Interval noch über Attribut definierbar machen. 1800 Sekunden finde ich etwas lang.

Grüße Jörg
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: amenomade am 23 Juni 2020, 11:24:53
Hallo Christian,

könntest Du das Interval noch über Attribut definierbar machen. 1800 Sekunden finde ich etwas lang.

Grüße Jörg
Im DEF ändern
https://forum.fhem.de/index.php/topic,112114.msg1064713.html#msg1064713
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: JoWiemann am 23 Juni 2020, 12:51:12
Im DEF ändern
https://forum.fhem.de/index.php/topic,112114.msg1064713.html#msg1064713

Ok, wer liest ist im Vorteil. Danke.

Grüße Jörg
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: JoWiemann am 23 Juni 2020, 13:29:18
Hallo Christian,

wenn unsere Waschmaschine ausgeschaltet ist wird folgender Fehler im Log protokolliert (da Interval == 60, alle 60 Sekunden):

2020.06.23 13:04:38 3: Miele_000150198748 (MieleAtHome::MAH_onGetDeviceIdentAndStateReply:793) Error: read from https://api.mcs3.miele.com:443 timed out
2020.06.23 13:02:37 3: Miele_000150198748 (MieleAtHome::MAH_onGetDeviceActionsReply:920) Error: read from https://api.mcs3.miele.com:443 timed out

Grüße Jörg

PS: Die Log-Einträge sind 10 Minuten lang aufgetaucht. Dann war wieder Ruhe.
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: JoWiemann am 23 Juni 2020, 14:08:05
Es ist zur Zeit so, dass das eingestellte INTERVAL nur gilt, so lange die WaMa 'Off' ist, sobald sie eingeschaltet ist, wird immer 60s verwendet.

Hallo Christian,

wie bekommst Du mit, dass die WaMa on geht, wenn das Intervall per default 1800 Sekunden ist? Ggf läuft die Maschine dann ja schon eine ganze Zeit.

Grüße Jörg
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: choenig am 23 Juni 2020, 21:29:52
Hi,

wie bekommst Du mit, dass die WaMa on geht, wenn das Intervall per default 1800 Sekunden ist? Ggf läuft die Maschine dann ja schon eine ganze Zeit.

Ich hab' das Interval bei mir auf 120 stehen, da passt das ganz gut :).

Ich denke, ich stell' den default auch eher auf 120s, oder?

Edit: 1800 macht vermutlich eher für Kühlschränke Sinn.

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: JoWiemann am 24 Juni 2020, 10:06:33
Hi,

Ich hab' das Interval bei mir auf 120 stehen, da passt das ganz gut :).

Ich denke, ich stell' den default auch eher auf 120s, oder?

Edit: 1800 macht vermutlich eher für Kühlschränke Sinn.

LG
Christian

Hallo Christian,

vielleicht machst Du es deviceType abhängig. Anderseits, Kühlschrank nicht richtig geschlossen -> Alarm erst nach 1800 Sekunden wäre auch doof.

Nur so als Anregung: Ein set <Miele@HomeDevice> intervall könnte dann auch durch Fhem Routinen/Events leichter gesetzt werden.

Grüße Jörg
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 28 Juni 2020, 10:31:27
Moin,

gibt man set <gateway> autocreate in der Fhem Commandline an, ohne das es schon in der Befehlsliste im Fhem Web auswählbar ist, so schmiert Fhem mit folgender Fehlermeldung ab

den Fix dafür habe ich gerade als 0.9.0 hochgeladen.

Falls wieder was auf- oder auseinanderfällt, bitte melden :).

vielleicht machst Du es deviceType abhängig. Anderseits, Kühlschrank nicht richtig geschlossen -> Alarm erst nach 1800 Sekunden wäre auch doof.

Beides klingt gut. Es ist ja zur Zeit so, dass er immer 60s verwendet, wenn das Gerät '!= Off' ist. Bei Kühlschränken sind sie das vermutlich dauerhaft, dann würde er eh immer 60s verwenden. Dafür brauch ich aber mehr Feedback von Besitzern solcher Geräte. Wird sich sicher mit der Zeit ergeben.

EDIT: Die 0.9.0 stellt das default-Interval jetzt auf 120s.

Nur so als Anregung: Ein set <Miele@HomeDevice> intervall könnte dann auch durch Fhem Routinen/Events leichter gesetzt werden.

Da hatte ich drüber nachgedacht, mich dann für das Internal entschieden, weil ein grep im FHEM/-Ordner mir deutlich mehr treffer bei INTERVAL als bei interval gegeben hat.

Für mich macht es keinen Unterschied, die 120s/60s passen bei mir einwandfrei.

Bin aber für alle Seiten offen, und wenn es wirklich sinnvoller ist, es änderbar zu machen, dann kann ich das gerne umbauen. Vielleicht kann man auch beide Varianten kombinieren? Mir erschliesst sich nur erstmal kein Grund dafür.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Cluni am 29 Juni 2020, 14:28:39
Moin.
Ich werde das Modul auch heute Abend mal testen - heute ist einen neue Waschmaschine gekommen. Haben bereits ein Konto angelegt und auch den Developer-Account frei geschaltet. ClientID und Secret haabe ich schon bekommen. Alles ist schon bei Modul in Fhem eingetragen. Mein Account ist aber noch ohne Gerät - das werde ich heute Abend wie gesagt mit meinem Account verknüpfen. Momentan steht im Modul der state auf "Initialized". Mache ich testhalber ein "set Miele_GW autocreate", dann bekomme ich als lastError "autocreate failed: Please authenticate first". Aber ich schau erst mal - erledigt sich ja vielleicht, sobald wirklich ein Gerät im Account drin ist...  ;)

EDIT: Sowohl bei setzen des Passworts als auch beim setzen des Client Secrets bekomme ich im Log die Meldung:

2020.06.29 14:41:20 2: Miele_GW (MieleAtHome::MAH_onOauthLoginReply:602) Error: Bearer code not found
2020.06.29 14:42:07 2: Miele_GW (MieleAtHome::MAH_onOauthLoginReply:602) Error: Bearer code not found
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: det. am 29 Juni 2020, 17:44:27
Hallo Christian,
ich habe Dein Modul heute auch noch mal probiert - mit Erfolg - vielen Dank! Hatte das in früheren Versionen schon getestet, war aber immer an der Authentifizierung gescheitert. Heute noch mal eine Mail angefordert, über den erhaltenen Link eingeloggt, die Mailadresse und Passwort dort eingegeben und den App Zugriff erlaubt. Danach alles im Modul eingegeben und mit autocreate meinen Geschirrspüler richtig angelegt - und es funktioniert!
Hoffe mal, dass es diesmal langfristig geht. Hatte den Spüler schon zwei mal über httpmod in FHEM eingebunden. Das lief jeweils paar Wochen, danach war es so, als sei der Account dauerhaft gesperrt. Über die Miele App auf dem iPad ging es aber die ganze Zeit. Dort wird allerdings ja auch kein Enwickler Account mit ID und secred benötigt.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 29 Juni 2020, 19:36:13
Hi,

EDIT: Sowohl bei setzen des Passworts als auch beim setzen des Client Secrets bekomme ich im Log die Meldung:

2020.06.29 14:41:20 2: Miele_GW (MieleAtHome::MAH_onOauthLoginReply:602) Error: Bearer code not found
2020.06.29 14:42:07 2: Miele_GW (MieleAtHome::MAH_onOauthLoginReply:602) Error: Bearer code not found

Du benutzt die aktuellste 0.9.0? Hast beim update ein fhem-restart oder reload 48_MieleAtHome gemacht? Falls ja, würde ich Dich bitten, auch mal verbose auf 5 stellen und mir (gerne auch als PN) den Output davon zu senden.

Ich würde eigentlich nicht erwarten, dass es davon abhängt, ob ein Gerät registriert ist, oder nicht.

ich habe Dein Modul heute auch noch mal probiert - mit Erfolg - vielen Dank!

:)

Hatte das in früheren Versionen schon getestet, war aber immer an der Authentifizierung gescheitert.

Lag vermutlich an dem Bug, den ich in der 0.8.0 gefixt habe.

Hoffe mal, dass es diesmal langfristig geht. Hatte den Spüler schon zwei mal über httpmod in FHEM eingebunden. Das lief jeweils paar Wochen, danach war es so, als sei der Account dauerhaft gesperrt. Über die Miele App auf dem iPad ging es aber die ganze Zeit. Dort wird allerdings ja auch kein Enwickler Account mit ID und secred benötigt.

Wie gesagt, bei mir läuft es ohne murren seit über 6 Monaten. Wenn es Probleme gibt, lass es mich wissen, lassen sich vermutlich alle irgendwie lösen.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Cluni am 29 Juni 2020, 19:42:27
Also ich bekomme es warum auch immer nicht hin. Bekomme dann immer die gleichen Meldungen. Habe sogar Client ID und Secret neu generieren lassen. Klappt trotzdem nicht... :(

Ich hatte das Modul (v0.9.0) in mein fhem/FHEM Verzeichnis kopiert, den User angepasst, die Rechte kontrolliert und anschließend in fhem ein reload 48_MieleAtHome.pm gemacht. Anschließend laut dem ersten Post eingerichtet.

Werde gleich mal verbose auf 5 setzen und dir die Ausgabe per PN schicken. Dank dir für die Hilfe!
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Cluni am 29 Juni 2020, 19:50:25
Hi Christian, ich habe dir das Logging per PN geschickt.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 29 Juni 2020, 20:00:25
Hi,

ich versteh nicht ganz, wieso bei Dir ein request zur Authorizierung als Antwort kommt.

Kannst Du mal versuchen, dich unter https://www.miele.com/developer/swagger-ui/index.html#/Action/put_devices__deviceId__actions einzuloggen (rechts bei "Authorize", dann unten bei "OAuth2 (OAuth2, authorizationCode)".

Ehrlich gesagt ist mir nicht ganz genau klar, wie der oauth2-prozess hier auszusehen hat, ich habe den Teil aus dem HTTPMOD-Thread kopiert :). Was das angeht, ist die Miele-Doku leider recht schwach und mich tief in OAuth2 einzulesen, da fehlte mir (bisher) ein wenig die Motivation, aber bisher funktionierte auch alles ;).

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Cluni am 29 Juni 2020, 20:03:14
Jetzt geht es. Ich habe nochmal die Authorisierung bei Miele durchgeführt.

Danke für das Modul und deine Mühen! :)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Cluni am 29 Juni 2020, 20:20:49
..., da fehlte mir (bisher) ein wenig die Motivation, aber bisher funktionierte auch alles ;).

Das kenne ich - habe letztens ein wenig am Modul für Waterkotte Wärmepumpen mit Resümat CD 4 Regler geändert um mehr Messwerte zu bekommen und weitere Einstellungen vornehmen zu können. Da sind auch noch Sachen, die ich nicht ganz durchblicke...  ::)

Kannst du mir auf die Schnelle sagen, auf was ich (wenn die Rückmeldungen auf Deutsch stehen) triggers muss (event wahrscheinlich auf status oder state, oder?)? Welche Meldung kommt da, wenn die Waschmaschine fertig ist mit dem Waschvorgang?

Liebe Grüße
Bernd
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 29 Juni 2020, 20:38:27
Wunderbar :)

Trigger: Ich hab' nichts eingerichtet, weil die Notification über die Miele-App immer einen Moment früher kommt, als es hier angezeigt wird. Ich hab' nur im Tablet-UI eine Anzeige:

<div style="position:absolute;bottom:160px;left:50%" id="Waschmaschine">
        <div data-type="switch" data-device="" data-icon="oa-scene_washing_machine" class="compressed inline" data-background-icon="" data-color="#6699ff" style="font-size:300% !important;position:relative;top:15px;"></div>
        <!-- off, on, delay, done, running -->
        <div data-type="label" data-device="KG.Keller.MieleWaschmaschine" data-get="etaHR"
             data-limits-get="statusRaw" data-limits='["[1]","[2]","[34]","[7]", ".*"]'
             data-classes='["","","","greenshadow","bluetv"]'
             data-colors='["#6699ff","#6699ff","#6699ff","#00ff00","#ffffff"]'
             data-hide="statusRaw" data-hide-on="1" data-hideparents="#Waschmaschine"
             class="grande right-align bold inline" style="font-size:800% !important;letter-spacing:-0.05em;"></div>
    </div>

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Cluni am 29 Juni 2020, 20:52:02
Ok, wenn es auf Englisch steht, dann muss ich einfach auf den status „done“ oder statusRAW = 7 triggern. Werde ich mal testen. Bei mir wird eine Benachrichtigung im Wohnzimmer auf meinem Sonos System ausgegeben, wenn die Wäsche fertig ist. Mache ich bei der alten Waschmaschine über eine Steckdose, die die Leistung misst. Soll ja so bleiben, wie es bisher war...  8)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: det. am 29 Juni 2020, 21:04:08
Hallo Christian,


Der erste Geschirrspülgang unter Kontrolle Deines Moduls ist soeben fertig! Jetzt müssten nur die Entwickler von Miele noch den Rest- Salz und Klarspüler Vorrat in ihre API einbauen, dann könnte ich darauf eine Telegram Nachricht generieren. Hatte das schon mal vor ca. einem Jahr als Wunsch gemailt, aber seitens Miele dazu nie eine Antwort erhalten... In der iPad App ist es drin. Vielleicht liest hier ja jemand passendes mit.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 29 Juni 2020, 21:38:06
Hi,

Der erste Geschirrspülgang unter Kontrolle Deines Moduls ist soeben fertig! Jetzt müssten nur die Entwickler von Miele noch den Rest- Salz und Klarspüler Vorrat in ihre API einbauen, dann könnte ich darauf eine Telegram Nachricht generieren. Hatte das schon mal vor ca. einem Jahr als Wunsch gemailt, aber seitens Miele dazu nie eine Antwort erhalten... In der iPad App ist es drin. Vielleicht liest hier ja jemand passendes mit.

Das ist bei den Waschmaschinen das selbe. Unsere hat die eingebauten TwinDos Waschmittelkartuschen, aber ich kann den Status leider nicht auslesen. Die App zeigt es jedoch an.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: tiwo85 am 02 Juli 2020, 14:28:38
Moin,
Ich versuche auch schon seid längerem die Miele Waschmaschine einzubinden und bin jetzt auf dein Modul gestoßen.
Ich hatte ein ähnliches Problem wie Cluni. Dann habe ich "Authencate" auf der Miele Seite durchgeführt und nun kommt bei mir mittlerweile
2020.07.02 14:26:00 5: myMiele (MieleAtHome::MAH_onThirdpartyTokenReply:656) reply: err:, code:401, data:{"message":"Client credentials are not valid"}
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: det. am 02 Juli 2020, 17:10:32
@ tiwo85,
steht doch eindeutig da, was schiefging. Einfach noch mal ne neue Mail holen und dann Schritt für Schritt, so wie ich es in Antwort 35 versucht habe zu beschreiben. Irgendwann geht es dann, brauchte auch mehrere Versuche. Immer eine Mail - ein Versuch....
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 02 Juli 2020, 20:38:06
Hi,

interessant, d.h., Du bekommst auf jeden Fall einen Code. Mit dem versucht er dann zusammen mit clientId und clientSecret den Token zu bekommen. Das geht schief.

Ich kann mir nicht vorstellen, dass es eine brauchbare Lösung ist, immer wieder neue ClientID/Secret Kombination zu generieren, bis es tut.

Einloggen auf der 3rd-Party Seite mit allen 4 Daten (ClientId, ClientSecret, eMail und Password) funktioniert?
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: tiwo85 am 02 Juli 2020, 22:27:08
Zitat
Einloggen auf der 3rd-Party Seite mit allen 4 Daten (ClientId, ClientSecret, eMail und Password) funktioniert?

Ja das funktioniert. Ich kann, nachdem ich mich angemeldet habe auch die Geräte abfragen. Ich werde morgen früh nach der Arbeit noch neue ID und secret beantragen und es nochmals versuchen.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: tiwo85 am 03 Juli 2020, 14:12:58
Ich habe mir jetzt 2mal neue Credentials zuschicken lassen. Insgesamt war es jetzt schon das 6. Mal. Warum es jetzt ging, weiß ich nicht, aber es läuft.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 05 Juli 2020, 11:57:24
Hi,

ich habe gerade Version 0.10.0 hochgeladen.

Das wichtigste: Ich habe einen Fix implementiert, so dass auch die erste Authorisierung funktionieren sollte, ohne dass vorher auf der 3rd-Party-Seite eine Authorisation durchgeführt werden muss.

Ich habe gerade diverse neue Zugangsdaten generiert und es hat immer beim ersten Mal funktioniert.

Falls also jemand noch Probleme hat, sollte er unbedingt die 0.10.0 ausprobieren!

Zusätzlich habe ich noch das Attribut country hinzugefügt. Wenn ihr also euren Miele-Account nicht in 'de' registriert habt, könnt ihr das jetzt über das Attribut setzen. Default ist Deutschland (de-DE).

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 11 Juli 2020, 12:31:31
Hi Christian,

danke für Dein Modul mit der 0.10.0 klappt jetzt auch die initiale Authetifizierung bei mir :)

Eine Bitte, leider kann ich die über autocreate gefundenen Geräte nicht in einen Namen mit Umlauten umbenennen, d.h. ich kann z.B. das Gerät XY nicht in "Geschirrspühler" umbenennen

Invalid characters in name (not A-Za-z0-9._): Geschirrspühler
Zudem, wenn ich die Geräte z.B. in den vorhandenen Raum Küche "schieben" möchte, erhalte ich nur "Küche" zur Auswahl. Schiebe ich da etwas rein habe ich dadurch dann zwei Räume:

Küche
Küche

Kannst Du da etwas ändern? Danke
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 11 Juli 2020, 12:42:09
Zitat
Code: [Auswählen]

Invalid characters in name (not A-Za-z0-9._): Geschirrspühler

Das kommt nicht vom Modul sondern von Fhem (fhem.pl) selbst. Im Name eines Devices dürfen nur Zahlen, Buchstaben und Punkt oder Unterstrich.

Und für die Räume kommt es warhscheinlich auch nicht vom Modul. Ich vermute, es passiert genau das gleiche mit einem dummy.
Du hast irgendein Problem mit codepages, entw im Browser oder in deinem Editor ( :-X ), oder was auch immer

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 11 Juli 2020, 12:51:35
Komisch, habe "zig" Umlaute in meiner fhem.cfg aber noch nie Probleme gehabt. Ich habe nun als room einfach Küche bei den Miele Sachen reingeschrieben und schon gehts ... Komisch
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 12 Juli 2020, 19:49:24
Komisch, habe "zig" Umlaute in meiner fhem.cfg aber noch nie Probleme gehabt. Ich habe nun als room einfach Küche bei den Miele Sachen reingeschrieben und schon gehts ... Komisch

Mach mal bitte ein "list -r" von einem Device mit Umlaute im NAME?
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: JoWiemann am 13 Juli 2020, 09:20:13
Hi Christian,

danke für Dein Modul mit der 0.10.0 klappt jetzt auch die initiale Authetifizierung bei mir :)

Eine Bitte, leider kann ich die über autocreate gefundenen Geräte nicht in einen Namen mit Umlauten umbenennen, d.h. ich kann z.B. das Gerät XY nicht in "Geschirrspühler" umbenennen

Invalid characters in name (not A-Za-z0-9._): Geschirrspühler
Zudem, wenn ich die Geräte z.B. in den vorhandenen Raum Küche "schieben" möchte, erhalte ich nur "Küche" zur Auswahl. Schiebe ich da etwas rein habe ich dadurch dann zwei Räume:

Küche
Küche

Kannst Du da etwas ändern? Danke

Das Thema Umlaute für devices (Geräte) in Fhem ist uralt. Auf Grund von weitreichenden Problemen in der Weiterverwendung von Gerätenamen in der Programmierung bei "at" "DOIF" ReadingsVal usw hat sich die Fhem Gemeinde auf einen zulässigen Zeichensatz geeinigt, der Dir als Fehlermeldung angezeigt wird.

Grüße Jörg
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: rudolfkoenig am 13 Juli 2020, 09:30:24
Im Namen koennen nur die erwaehnten Zeichen vorkommen, als alias kann man aber was beliebiges setzen.
alias wird fuer die Anzeige verwendet, beim set/attr/etc muss man weiterhin den Namen verwenden.

FHEM verwendet utf-8 fuer die Kodierung von Umaluten, viele Texteditoren latin-1. Wenn man im Raumauswahl "Küche" findet, dann liegt es (meist) daran, dass man mit einem "latin-1" Texteditor Umlaute in fhem.cfg eingebaut hat. Statt Texteditor kann theoretisch auch der Browser schuld sein, aber alle Browser die ich kenne, respektieren die UTF-8 Angabe, die FHEM setzt.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 20 Juli 2020, 07:51:50
Hi,

also bei den Umlauten im Gerätenamen habt ihr natürlich Recht, da hatte ich tatsächlich Aliase drinnen. Dennoch hatte ich eigentlich schon einige Homematic-Geräte im Raum "Küche" und nie Anzeigeprbleme. Dies ist auch nach wie vor so. Nur wenn ich auf eins der Miele Geräte klicke wird links der Raum temporär als Küche angezeigt, gehe ich wieder auf ein Nicht-Miele-Gerät springt es wieder auf Küche.

eine Überprüfung mit dem Befehl "file DATEINAME" liefert folgendes:

fhem.cfg: UTF-8 Unicode text, with very long lines
FHEM/48_MieleAtHome.pm: Perl5 module source, UTF-8 Unicode text, with very long lines

Sollte also beides mit UTF-8 sein ...

Ich werde im Zweifel damit Leben, dachte nur, dass es evtl. ein Bug in der Miele.pm ist ;)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 20 Juli 2020, 15:04:42
Hi Florie,

mir ist nichts bekannt, was ich tun könnte, um das Problem zu lösen.

Wenn mir jemand sagt, was ich fixen kann, mach ich das gerne, denke aber eigentlich nicht, dass es geht :).

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 20 Juli 2020, 15:49:24
@choenig: m.M.n. kannst Du nichts tun. Irgendwo wurde vermutlich ein "Küche" hinzugefügt, entw. durch Benutzung eines falschen Editors, oder schlechte Browsereinstellungen.

Was ergibt ein "list room=Küche", bzw ein "list room=Küche". Sind alle Devices in Küche?

Ich würde auf jedem Device im Raum Küche und/oder Küche gehen, und über die Weboberfläsche das room Attribut löschen, dann immer noch über die Weboberfläsche "Küche" einstellen (ggf wenn nicht in der Liste, dann manuell forcieren)

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 20 Juli 2020, 16:54:06
Also mit Küche kommt Backofen
EG.ku.HZ
EG.ku.HZ_Clima
EG.ku.HZ_Weather
EG.ku.TK
Geschirrspuehler
Kochfeld

Dort sind eben auch die drei Miele Geräte gelistet.

Unter Küche kommt nichts.

Ich habe nun mal bei allen Geräte des Raums Küche das room-Attrribut gelöscht, dann fhem.cfg gespeichert. Als erstes habe ich dann ein Mielegeräte mit dem "neuen" Raum Küche geadded. Wenn ich nicht auf dem Gerät stehe kommt links in der Raumübersicht "Küche", wenn ich auf das Mielegeräte klickee ists wieder Küche.
In der fhem.cfg wurde der Raum als Küche gespeichert.

Echt komisch, hatte wie gesagt noch nie Probleme davor. Nutze Win10 plus Firefox.

Aber Danke allen für die tolle Unterstützung bis hierhin  ;D
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 20 Juli 2020, 17:14:36
Ist es das gleiche mit Chrome (oder Edge) ?

In Firefox, hast Du Einstellungsmöglichkeiten im Menü Ansicht > Zeichenkodierung?
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 20 Juli 2020, 17:35:54
Leider ist das von dir angesprechene in Firefox ausgegraut. Daher kann ich so gerade nicht sehen, was da eingestellt ist.

Allerdings habe ich gerade Chrome und Edge auch getestet.

Gleiches Bild wie Firefox.

Bin ich auf irgendeinem Gerät (egal ob Küche oder nicht) was ungleich Miele ist. Geht alles.
Gehe ich auf eins der drei Miele Geräte kommt in die Raumübersicht Küche
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 20 Juli 2020, 18:04:47
Gut: ich kann das Problem reproduzieren. Ich hatte auch einen vorhanden Raum Küche, der immer gut funktioniert hat. Es reicht, ein "define miele MieleAtHome" und schon kommt in der Klappliste vom attr room der Wert Küche.

Schlecht: ich kann mir das Ding (noch) nicht erklären.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 20 Juli 2020, 19:28:28
@choenig:
Das kommt von der COUNTRIES Liste. Irgendwie stört es perl (oder javascript oder den browser), so dass er irgendwie auf andere Einstellungen springt.

Wenn ich die Zeilen mit komischen (u.a. kirillischen) Zeichen auskommentiere, passiert das nicht mehr.
use constant COUNTRIES => {
"Miele-Deutschland"          => "de-DE",
"Miele-Eesti"                => "et-EE",
"Miele-Norge"                => "no-NO",
# "Miele-Србија"               => "sr-RS",
# "Miele-België"               => "nl-BE",
"Miele-Suomi"                => "fi-FI",
"Miele-Hong-Kong"            => "zh-HK",
# "Miele-Россия"               => "ru-RU",
"Miele-United-Arab-Emirates" => "en-AE",
"Miele-Portugual"            => "pt-PT",
# "Miele-България"             => "bg-BG",
"Miele-Schweiz"              => "de-CH",
"Miele-India"                => "en-IN",
"Miele-Semi-Pro"             => "de-SX",
"Miele-Nihon"                => "ja-JP",
"Miele-Danmark"              => "da-DK",
"Miele-Hanguk"               => "ko-KR",
"Miele-South-Africa"         => "en-ZA",
"Miele-Lietuva"              => "lt-LT",
"Miele-Chile"                => "es-CL",
"Miele-Luxemburg"            => "de-LU",
"Miele-Croatia"              => "hr-HR",
"Miele-Latvija"              => "lv-LV",
# "Miele-Zhōngguó"             => "zh-CN",
# "Miele-Ελλάδα"               => "el-GR",
"Miele-Italia"               => "it-IT",
"Miele-México"               => "es-MX",
"Miele-France"               => "fr-FR",
"Miele-Malaysia"             => "en-MY",
"Miele-New-Zealand"          => "en-NZ",
# "Miele-Україна"              => "ru-UA",
# "Miele-Magyarország"         => "hu-HU",
# "Miele-España"               => "es-ES",
# "Miele-Казахстан"            => "ru-KZ",
"Miele-Sverige"              => "sv-SE",
"Miele-Österreich"           => "de-AT",
"Miele-Australia"            => "en-AU",
"Miele-Singapore"            => "en-SG",
"Miele-Thailand"             => "en-TH",
"Miele-Kypros"               => "el-CY",
"Miele-Slovenia"             => "sl-SI",
# "Miele-Беларуси"             => "ru-BY",
"Miele-Czechia"              => "cs-CZ",
"Miele-Slovensko"            => "sk-SK",
"Miele-UK"                   => "en-GB",
"Miele-Ireland"              => "en-IE",
"Miele-Polska"               => "pl-PL",
# "Miele-România"              => "ro-RO",
"Miele-Canada"               => "en-CA",
"Miele-Nederland"            => "nl-NL",
"Miele-Türkiye"              => "tr-TR",
"Miele-USA"                  => "en-US",
};


Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 20 Juli 2020, 20:01:59
Interessant, guck ich mir an.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 20 Juli 2020, 20:43:29
@choenig:
Das kommt von der COUNTRIES Liste. Irgendwie stört es perl (oder javascript oder den browser), so dass er irgendwie auf andere Einstellungen springt.

Wenn ich die Zeilen mit komischen (u.a. kirillischen) Zeichen auskommentiere, passiert das nicht mehr.
use constant COUNTRIES => {
"Miele-Deutschland"          => "de-DE",
"Miele-Eesti"                => "et-EE",
"Miele-Norge"                => "no-NO",
# "Miele-Србија"               => "sr-RS",
# "Miele-België"               => "nl-BE",
"Miele-Suomi"                => "fi-FI",
"Miele-Hong-Kong"            => "zh-HK",
# "Miele-Россия"               => "ru-RU",
"Miele-United-Arab-Emirates" => "en-AE",
"Miele-Portugual"            => "pt-PT",
# "Miele-България"             => "bg-BG",
"Miele-Schweiz"              => "de-CH",
"Miele-India"                => "en-IN",
"Miele-Semi-Pro"             => "de-SX",
"Miele-Nihon"                => "ja-JP",
"Miele-Danmark"              => "da-DK",
"Miele-Hanguk"               => "ko-KR",
"Miele-South-Africa"         => "en-ZA",
"Miele-Lietuva"              => "lt-LT",
"Miele-Chile"                => "es-CL",
"Miele-Luxemburg"            => "de-LU",
"Miele-Croatia"              => "hr-HR",
"Miele-Latvija"              => "lv-LV",
# "Miele-Zhōngguó"             => "zh-CN",
# "Miele-Ελλάδα"               => "el-GR",
"Miele-Italia"               => "it-IT",
"Miele-México"               => "es-MX",
"Miele-France"               => "fr-FR",
"Miele-Malaysia"             => "en-MY",
"Miele-New-Zealand"          => "en-NZ",
# "Miele-Україна"              => "ru-UA",
# "Miele-Magyarország"         => "hu-HU",
# "Miele-España"               => "es-ES",
# "Miele-Казахстан"            => "ru-KZ",
"Miele-Sverige"              => "sv-SE",
"Miele-Österreich"           => "de-AT",
"Miele-Australia"            => "en-AU",
"Miele-Singapore"            => "en-SG",
"Miele-Thailand"             => "en-TH",
"Miele-Kypros"               => "el-CY",
"Miele-Slovenia"             => "sl-SI",
# "Miele-Беларуси"             => "ru-BY",
"Miele-Czechia"              => "cs-CZ",
"Miele-Slovensko"            => "sk-SK",
"Miele-UK"                   => "en-GB",
"Miele-Ireland"              => "en-IE",
"Miele-Polska"               => "pl-PL",
# "Miele-România"              => "ro-RO",
"Miele-Canada"               => "en-CA",
"Miele-Nederland"            => "nl-NL",
"Miele-Türkiye"              => "tr-TR",
"Miele-USA"                  => "en-US",
};

Kann ich bestätigen, so gehts, vielen Dank :)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 20 Juli 2020, 22:24:50
Kann ich bestätigen, so gehts, vielen Dank :)

Ich werde morgen mal eine Version fertig machen, wo ich die entsprechenden Stellen auskommentiere, damit das Modul regulär wieder funktioniert.

Wenn ich die Seite mit curl lade, sieht es so aus, als wäre der Text doppelt UTF8-Codiert.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 20 Juli 2020, 22:43:47
So,

ich habe gerade eine 0.11.0 hochgeladen, in der ich die problematischen Länder übersetzt habe 8).

Damit ist das ding erstmal ge'workaround'ed ;) Danke @Florie und @amenomade für die Unterstützung!

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 01 August 2020, 22:09:50
Hi,
ich hab nochmal eine Sache, weiß auch nicht, ob es ein "Problem" am Modul ist.
Ich habe ein Android-Handy und nutze dort die App "andFHEM Premium", irgendwie bekommen ich keine Verbindung mehr zu FHEM, ich habe von dem Entwickler die Bitte erhalten in FHEM am PC ein "xmllist" auszuführen, leider stützt da mein komplettes FHEM ab mit dem Hinweis:

Can't use string ("MieleConnection") as a HASH ref while "strict refs" in use at ./FHEM/98_XmlList.pm line 81.,
Kann man da irgendwas machen?

VG

Florie
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 01 August 2020, 23:08:20
Kommt der Fehler beixmllist <MieleConnectionDevice> oder bei xmllist <MieleDevice>?

Wahrscheinlich beim 2.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 01 August 2020, 23:29:58
Das kommt daraus, dass das Modul "IODev" nutzt, aber ohne ein echtes zweistufiges Modul zu sein.

In einem zweistufigen Modulkonzept enthält $hash->{IODev} eine Referenz zum HASH des IODevs:
$VAR1 = {
          '.attraggr' => [],
          '.attrminint' => [],
          'DEF' => 'blabladevice',
          'IODev' => {
                       '.attraggr' => [],
                       '.attrminint' => [],
                       'DEF' => 'blabla',
                       'NAME' => 'IODevName',
                       'NOTIFYDEV' => 'usw',
                       'NR' => 87,
                       'NTFY_ORDER' => 'xx',
                       'READINGS' => {}
                       usw
 

Hier enthält aber $hash->{IODev} einfach ein String mit dem Name des IODevs:
$VAR1 = {
          'NR' => 188,
          'DEF' => '000123456789@miele 120',
          'INTERVAL' => '120',
          'DEVICE_ID' => '000123456789',
          'TYPE' => 'MieleAtHome',
          'NAME' => 'Waschmaschine',
          'READINGS' => {},
          'VERSION' => '0.10.0',
          'IODev' => 'miele',
          'STATE' => 'Initialized',
          'HAS_MimeBase64' => 1,
        };
Das gefällt xmllist nicht, da er versucht dies als Referenz zu benutzen
Ein Workaround wäre, das Wort "IODev" durch irgendwas anderes zu ersetzen.

Besser wäre m.M.n., das IODev tatsächlich als Referenz zu benutzen (dann wird die Funktion MAH_getIODevHash unnötig).

Anbei die Idee. Ich kann das aber gar nicht testen!. Ich habe nur noch alte Zugangsdaten (ID/Secret) und auf dem Konto ist sowieso kein Gerät registriert.
EDIT: und das ist auch unvollständig: falls man das IODev löscht, und wieder kreiert, ist das Device nicht mehr mit dem IODev verknüpft sondern mit einer Leiche im Hash
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 02 August 2020, 07:50:38
Guten Morgen,

Ich bin gerade im Urlaub. Mal sehen, ob ich Zeit finde, sonst nächste Woche.

Danke @amenomade für‘s Analysieren  :).

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: rudolfkoenig am 02 August 2020, 12:27:32
Zitat
Can't use string ("MieleConnection") as a HASH ref while "strict refs" in use at ./FHEM/98_XmlList.pm line 81.,
Das ist ein XmlList bug: FHEM Absturz ist ein No-Go.
Habe es in XmlList gefixt und eingecheckt.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 02 August 2020, 18:18:13
Ihr seid spitze, vielen vielen Dank. Mit der Anpassung von amenomade und dem XmlList-Update kommt in meiner Android App andFHEM auch wieder alles.

Danke euch :)

@choenig Schönen Urlaub noch ;)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 10 August 2020, 09:25:17
Guten Morgen,

ich habe gerade die Version 0.12.0 an den ersten Post gehängt. Ich habe jetzt erstmal IODev in IODevName umbenannt, damit es in Zukunft keine weitern Missverständnisse gibt ;). Da es kein echtes zweistufiges Modul ist, wollte ich da erstmal kein Risiko eingehen. Vielleicht bau' ich es irgendwann wieder zurück :).

Danke nochmal an @Florie und @amenomade und @Rudi für die Unterstützung, und @Rudi: Du bist auch überall unterwegs ;).

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: t.b am 17 August 2020, 22:45:18
Vielen Dank für das geniale Modul. Hat gleich auf Anhieb funktioniert. Ich habe eine Waschmaschine und Trockner eingebunden.

Hat schon jemand irgendwelche Notifies (Telegram, Pushover o.ä.) wegen "Waschmaschine fertig" oder devStateIcon hierzu erzeugt?
Cool wäre auch eine Ansage auf Sonos oder Alexa.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Cluni am 18 August 2020, 06:43:39
Hat schon jemand irgendwelche Notifies (Telegram, Pushover o.ä.) wegen "Waschmaschine fertig" oder devStateIcon hierzu erzeugt?
Cool wäre auch eine Ansage auf Sonos oder Alexa.

Jops, habe ich - hier das def meines notify:
Miele_Waschmaschine:statusRaw:.7 { fhem("set teleBot message Die Waschmaschine ist fertig - bitte umgehend ausräumen!;set Sonos_Sonos Speak 25 de |doorbell2| |Waschmaschine_fertig|");}
Die Sonos-Ausgabe habe ich als MP3 hinterlegt mit dem Namen "Waschmaschine_fertig". Vorher wird noch ein Gong abgespielt... 🙈 😂
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 03 September 2020, 10:17:06
Hi in die Runde,

bin nun auch in die Nutzergemeinde des Moduls eingestiegen - und funktioniert bestens, danke für die Arbeit!

Aber eine Frage (mit der ich mich hoffentlich nicht blamiere  ;)): Ich wollte Password und clientSecret nicht im Klartext in der fhem.cfg ablegen (was gut und dauerhaft funktioniert), also hab ich sie über die Kommandozeile gesetzt. Aber nach jedem Edit des Config-Files muss ich Password und clientSecret neu setzen, er merkt es sich einfach nicht.

Wo stehe ich auf dem Schlauch?
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 03 September 2020, 19:53:52

Wo stehe ich auf dem Schlauch?
Du glaubst, dass das Passwort und das clientSecret in fhem.cfg gespeichert werden, und das ist falsch.

Zitat von: DeviceSpecificHelp
clientSecret <secret>
sets the clientSecret of your Miele@home-developer Account and stores it in a file (base64-encoded if you have MIME::Base64 installed).

password <pass>
set the password of your Miele@home Account and stores it in a file (base64-encoded if you have MIME::Base64 installed).

Die entspr. Datei ist die uniqueID Datei, siehe global attr keyFileName in CommandRef
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 03 September 2020, 21:31:48
Nee, das glaube ich nicht - genau das meine ich ja - WENN ich es über die fhem.cfg setze, funktionert alles. Aber wenn ich es nicht dort eintrage, sondern per Command Line die beiden SET-Befehle eingebe, wird offenbar nichts gespeichert. Bei anderen Modulen funzt es, doch bei MieleAtHome muss ich es bei jedem Edit der fhem.cfg wieder neu setzen.
Drück ich mich da verständlich aus?  :D
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 03 September 2020, 21:38:06
Zitat
WENN ich es über die fhem.cfg setze,
Wie genau machst Du das?

Zitat
wird offenbar nichts gespeichert
Und wie stellst Du das fest?
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 03 September 2020, 22:52:47
Also wenn ich in der fhem.cfg die Befehle "set [gateway] password" und "set [gateway] clientsecret" einsetze, dann habe ich jederzeit von allen Miele-Geräten den Status, ganz so, wie gewünscht.

Wenn ich diese Zeilen NICHT in die fhem.cfg eintrage, sondern sie über die CommandLine oder per Web-Interface eingebe, dann funktioniert es so lange, bis ich die fhem.cfg mal wieder neu speichere - dann muss ich sowohl Password als auch ClientSecret neu setzen. Das erkenne ich, weil ich keine Readings mehr erhalte und die ErrorMsg einen fehlenden Login beklagt.

Bei anderen Devices, die auch eine Passwort-Auth verlangen, bleibt dieses aber gespeichert. Deshalb bin ich gerade so irritiert - und/oder stehe auf der Leitung.

Oder anders: was muss ich tun, um Password und ClientSecret dauerhaft zu speichern, OHNE sie in die fhem.cfg einzutragen? Das setzen über Web-Interface oder CommandLine funktioniert jedenfalls nicht...

Edit: Ergänzung zum besseren Verständnis
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 03 September 2020, 23:51:29
Dann hast Du ein anderes Problem, weil ein set [gateway] password "so" in fhem.cfg genauso verarbeitet wird, als ein set Befehl in der Kommando Zeile (unter einigen Bedingungen wenn in fhem.cfg, aber sollte hier nicht relevant sein)

In beiden Fällen wird es [bei dir] nicht ordentlich gespeichert. Nur natürlich, wenn die set Befehle in fhem.cfg sind, werden sie beim nächsten Start wieder ausgeführt, aber password und clientsecret werden immer noch nicht richtig gespeichert.

Das ist aber nicht normal. (So was kann aber passieren, wenn man in fhem.cfg rumfummelt...)

Mach mal auf dem Account-Device verbose >=3 und schau mal in der Log ob beim set eine Fehlermeldung kommt.

Dann guckst Du in deinem "global" Device, ob das Attribut keyFileName gesetzt ist.
Dann im Verzeichnis ./FHEM/FhemUtils, ob die entspr. Datei geändert wurde (wenn keyFileName nicht gesetzt, heisst die Datei "uniqueID", wenn gesetzt heisst es wie im Attribut).
Wenn ja guckst Du in der Datei den Wert mit MieleAtHome_<name>_password: am Anfang, z.B.
MieleAtHome_miele_clientSecret:PXRlc3Q=
MieleAtHome_miele_passwd:PXBhc3M=

Ist der Eintrag da oder nicht? Wenn ja, wäre es noch zu prüfen, ob diese Werte in uniqueID genau gleich sind bei einem set in der Kommandozeile oder bei einem set in fhem.cfg (das kann ein Sonderzeichenproblem sein, abhängig vom Editor)

Wenn es immer noch nicht geht, poste bitte:
- ein "list" von deinem MieleAccount Device (login bitte anonymisieren)
- ein "list" von deinem Miele Gerät Device
- ein "list" von deinem global Device (longitude, latitude und ggf Proxy Einstellungen ebenfalls anonymisieren)
- das Ergebnis von "ls -la /opt/fhem/FHEM/FhemUtils" auf System-Ebene

Und noch am Rand: fhem.cfg direkt zu editieren ist in meisten Fällen eine schlechte Idee. Und ein "set" Befehl gehört nicht zu fhem.cfg

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 04 September 2020, 07:44:33
Danke für die Hilfestellung... nehme ich mir kurzfristig vor!
Das mit dem fhem.cfg-Editieren weiss ich eigentlich, aber ich habe jahrelang "klassisch" programmiert und bei mir herrscht eine Art Quellcode-Sortier- und Kommentierzwang  :D, das geht direkt im Code irgendwie am besten. Vielleicht kann ich mirs noch abgewöhnen...

EDIT:
Hab es durchgetestet. Also... kurz, bevor ich diverse lists & Co poste: Alles funktioniert, keine Fehlermeldungen, die Einträge in der "uniqueID" werden korrekt abgelegt.
Aber in dem Moment, in dem ich die fhem.cfg aus welchem Grund auch immer öffne und speichere, werden die MieleAtHome-Einträge aus der "uniqueID"-Datei gelöscht - alle anderen nicht.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 04 September 2020, 21:07:19
Ich würde sagen, etwas in deiner Installation beschädigt die uniqueID Datei.
Vielleicht findest Du etwas interessantes hier: https://forum.fhem.de/index.php/topic,108512.msg1024962.html#msg1024962

Wie sieht die Struktur deiner uniqueID Datei? Sind da z.B. leere Zeilen?

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 04 September 2020, 22:38:05
Ach herrje, was für ne Pandora-Büchse mach ich da auf  :o  Ich muss zugeben, auf Anhieb versteh ich in dem verlinkten Fred nix...

Die Struktur der Datei ist simpel - Die auskommentierte Zeile mit dem Hinweis, man möge nichts ändern, dann eine Zeile "uniqueID", und dann 2 Zeilen mit abgelegten Passwörtern, die auch zuverlässig funktionieren.
Keine Leerzeilen, nix sonst.

Wenn ich im Miele Account Device ClientSecret und Passwort setze, wird die UniqueID ergänzt durch die Zeilen:

MieleAtHome_MieleConnection_clientSecret: (...)
MieleAtHome_MieleConnection_passwd: (...)
MieleAtHome_MieleConnection_OAUTH2_ACCESS_TOKEN: (...)
MieleAtHome_MieleConnection_OAUTH2_REFRESH_TOKEN: (...)
MieleAtHome_MieleConnection_OAUTH2_EXPIRES_IN: (...)
MieleAtHome_MieleConnection_OAUTH2_EXPIRES_AT (...)

Diese verschwinden dann wieder, wie oben beschrieben.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 04 September 2020, 22:52:52
Zitat
Ach herrje, was für ne Pandora-Büchse mach ich da auf  :o  Ich muss zugeben, auf Anhieb versteh ich in dem verlinkten Fred nix...
Naja, irgendwie klar: wenn die Werte ordentlich in der Datei beim "set" geschrieben werden, dann muss man breiter suchen, was die Ursache sein kann.

Ok die Struktur sieht gut aus.
Und beim Start von Fhem, keine merkwürdige Nachrichten in der Log?

Vielleicht kannst Du für dein Problem ein neues Thread kreieren? Das hat jetzt immer weniger mit Miele@Home zu tun.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 04 September 2020, 23:25:52
Nur ein Check: was sagt { MAH_loadClientSecret($defs{MieleConnection}) } in der Fhem Kommandozeile?
Ist das genau dein ClientSecret?

Das gleiche mit { MAH_loadPassword($defs{MieleConnection}) }?
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 05 September 2020, 08:54:49
Vielleicht kannst Du für dein Problem ein neues Thread kreieren? Das hat jetzt immer weniger mit Miele@Home zu tun.

Ja, sehe ich inzwischen auch so, zugegeben.

Dein Check ergibt das korrekte ClientSecret und Passwort, solange sie noch in der UniqueID stehen. Sobald ich die fhem.cfg öffne und speichere, ergibt der Check nichts, einfach nur nichts. Das hat für sich eine entwaffnende Logik...

Also scheint alles zu funktionieren, nur dass ein Speichern der fhem.cfg die letzten Einträge aus der UniqueID löscht (was selbst ein "shutdown restart" nicht tut - das überleben die Einträge in der UniqueID schadlos).
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 05 September 2020, 11:41:25
Die Nacht hat mir Licht im Dunkel gebracht. Siehe meine Frage und Vermutung hier: https://forum.fhem.de/index.php?topic=114060.msg1083269#msg1083269

Wenn das bestätigt ist, müsste man mMn hier das Löschen von den Keys aus der undefFn Funktion entfernen, und in die deleteFn Funktion hinzufügen.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 05 September 2020, 12:11:49
Kannst Du mit der anghängten Version testen? (Moduldatei überschreiben, und "reload 48_MieleAtHome" ausführen)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 05 September 2020, 12:55:22
Haha! Hoho! Es klappt! Jetzt überleben die UniqueID-Einträge auch das Abspeichern der fhem.cfg!
Grandios und großes Danke für's Nach(t)denken  :D :D :D
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 05 September 2020, 16:54:52
Hallo zusammen,

uiuiui, hier ist ja einiges passiert :-)

Interessanter Bug, den Ihr identifiziert habt. Vielen Dank!

Ich frage mich am meisten, wie dieser Bug denn jetzt hier aufgetreten ist? Deinen Bugfix verstehe ich, und werde ich gerne übernehmen. Aber warum tritt der Bug hier bei mir, und vermutlich bei den anderen, *nicht* auf?
Edit: Naja, ok, vermutlich, weil ich die Datei einfach nicht selber editiere, und fhem bei 'save' kein rereadconfig macht, wär ja auch komisch 8)

Und meine anderen Module muss ich auch fixen :).

LG und nochmal vielen Dank euch zweien!
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 05 September 2020, 17:57:35

Edit: Naja, ok, vermutlich, weil ich die Datei einfach nicht selber editiere, und fhem bei 'save' kein rereadconfig macht, wär ja auch komisch 8)

Genau :)

Bei einem normalen "save" weisst Fhem genau was geändert wurde (siehe Historie "im roten Fragezeichen"), und führt kein rereadcfg aus. Beim Editieren von fhem.cfg weisst es aber nicht an wie vielen Stellen es geändert wurde, und macht alles neu. Den Fehler kannst Du einfach mit einem "rereadcfg" reproduzieren - ja, bei dir auch :D ;)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 05 September 2020, 18:39:03
Na, so hat mein "böses" Editieren der .cfg doch noch sein Gutes... so findet man auch den hinterletzten Bug, auch wenn er quasi nur auf mich zutrifft  :D
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: xerion am 05 September 2020, 18:42:58
Ja, sehe ich inzwischen auch so, zugegeben.

Dein Check ergibt das korrekte ClientSecret und Passwort, solange sie noch in der UniqueID stehen. Sobald ich die fhem.cfg öffne und speichere, ergibt der Check nichts, einfach nur nichts. Das hat für sich eine entwaffnende Logik...

Also scheint alles zu funktionieren, nur dass ein Speichern der fhem.cfg die letzten Einträge aus der UniqueID löscht (was selbst ein "shutdown restart" nicht tut - das überleben die Einträge in der UniqueID schadlos).

Ich will ja kein Spielverderber sein. Aber das hat schon sie rein paar Einträgen nichts mehr mit dem Miele Modul zu tun und es wäre an der Zeit eine extra Thread dafür auf zu machen. Sonst verliert man hier den Überblick und bekommt Benachrichtigungen die man ggf. Gar nicht haben möchte.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: zife am 05 September 2020, 19:10:21
Ist schon passiert: https://forum.fhem.de/index.php/topic,114060.0.html (https://forum.fhem.de/index.php/topic,114060.0.html) - aber letztlich hat(te) es doch Konsequenzen für das MieleAtHome-Modul...
Naja, ist eh erledigt, denke ich - Danke an alle Beteiligten!
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 06 September 2020, 09:34:50
Moin,

ich habe jetzt gerade die 0.13.0 in den ersten Post geladen. Der rereadcfg-bug ist da gefixt. Danke nochmal an euch zwei :).

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 06 September 2020, 12:15:53
Und wann kommt die 1.0.0.0 Version, die auch eingecheckt wird? ;) Ich glaube, es gibt mittlerweile genüge Benutzer, damit Rudi es akzeptiert.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 06 September 2020, 14:21:41
Ehrlich gesagt habe ich vorhin drüber nachgedacht, es einzuchecken :).

Ich hatte die Wochen zuvor immer so ein komisches Gefühl und dachte, da ist noch was nicht mit in Ordnung. Seit ich gestern deinen Bugfix gesehen habe, ist dieses Gefühl weg 8). Also wird es dann höchste Zeit.

Ich warte jetzt nochmal ein paar Tage ab, dann check' ich es ein.

LG
Christian

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: HotteFred am 09 September 2020, 21:18:52
Hi Christian,

danke für das Modul, funktioniert super. Geschirrspüler wurde direkt erkannt. Bin mal gespannt, was alles geloggt wird, wenn er dann auch benutzt wird.
Eine Frage habe ich aber noch: In meiner App auf dem Handy wird auch der Verbrauch von Material angezeigt, wie z.b.: noch 20% Salz, 80% Klarspüler etc.
Meinst du, das könntest du noch einbauen? Ich versuche auch zu helfen, so gut ich kann.

Viele Grüße
auch Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 09 September 2020, 22:05:57
Hi Christian,

danke für das Modul, funktioniert super. Geschirrspüler wurde direkt erkannt. Bin mal gespannt, was alles geloggt wird, wenn er dann auch benutzt wird.
Eine Frage habe ich aber noch: In meiner App auf dem Handy wird auch der Verbrauch von Material angezeigt, wie z.b.: noch 20% Salz, 80% Klarspüler etc.
Meinst du, das könntest du noch einbauen? Ich versuche auch zu helfen, so gut ich kann.

Viele Grüße
auch Christian
Diese Werte sind in der API-Help nirgendwo dokumentiert. Ich vermute, die stehen nicht zur Verfügung.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 09 September 2020, 22:46:11
Hi,

Meinst du, das könntest du noch einbauen? Ich versuche auch zu helfen, so gut ich kann.

Wie @amenomade schon schrieb: Die sind in der API leider nicht vorhanden. Ich hätte sie auch wirklich gerne für die Waschmaschine. Ich befürchte aber, dass sie das nicht nachliefern werden. Wenn doch, werd ich es einbauen :)

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: HotteFred am 10 September 2020, 08:50:58
Danke euch beiden und schade, aber vielleicht kommt das noch.

Eine andere Frage: Im Log tauchen Nachts Statusänderungen auf. Wir waren aber nicht am Gerät. Irgend eine Ahnung, wo das herkommt?

2020-09-09_21:12:17 Miele_000105263227 eta: -:-
2020-09-09_21:12:17 Miele_000105263227 etaHR: -:-
2020-09-09_21:12:17 Miele_000105263227 Off (-:-)
2020-09-09_21:12:17 Miele_000105263227 actions_processAction:
2020-09-09_21:12:17 Miele_000105263227 actions_deviceName: 0
2020-09-09_21:12:17 Miele_000105263227 actions_powerOn: 1
2020-09-09_21:12:17 Miele_000105263227 actions_powerOff: 0
2020-09-09_21:39:44 statusGeschirrspueler removeRegexpPart Miele_000105263227:status:.*
2020-09-10_00:45:44 Miele_000105263227 remainingTime: 0:00
2020-09-10_00:45:44 Miele_000105263227 remoteEnableFullRC: 0
2020-09-10_00:45:44 Miele_000105263227 targetTemperature: 0, 0, 0
2020-09-10_00:45:44 Miele_000105263227 temperature: 0, 0, 0
2020-09-10_02:23:59 Miele_000105263227 actions_powerOn: 0
2020-09-10_02:23:59 Miele_000105263227 status: Not Connected
2020-09-10_02:23:59 Miele_000105263227 statusRaw: 255
2020-09-10_02:23:59 Miele_000105263227 Not Connected (-:-)
2020-09-10_02:25:59 Miele_000105263227 status: Off
2020-09-10_02:25:59 Miele_000105263227 statusRaw: 1
2020-09-10_02:25:59 Miele_000105263227 Off (-:-)
2020-09-10_02:25:59 Miele_000105263227 actions_powerOn: 1
2020-09-10_06:33:29 Miele_000105263227 remainingTime: 2:39

Der removeRegexp Eintrag ist noch von mir und dann ab 6:33 wurde sicherlich die Türe geöffnet, aber dazwischen?

Grüße
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 10 September 2020, 10:14:59
Das Gerät telefoniert nachts nach Hause, und wird deswegen "on" gemeldet?
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 17 September 2020, 08:42:21
Hi,

ich hatte direkt die 0.13.0 bei mir eingespielt, weiß nicht, ob es daran liegt oder ein anderes Problem ist.

Internals:
   FUUID      XXX
   HAS_MimeBase64 1
   NAME       MieleConnection
   NR         253
   OAUTH2_ACCESS_TOKEN DE_XXX
   OAUTH2_EXPIRES_AT 2020-09-09 08:43:04
   OAUTH2_EXPIRES_IN 2592000
   OAUTH2_REFRESH_TOKEN DE_XXX
   STATE      Initialized
   TOKEN_REFRESH_IN_PROGRESS 1
   TYPE       MieleAtHome
   VERSION    0.13.0
   OLDREADINGS:
   READINGS:
Attributes:
   DbLogExclude .*
   clientId   XXX
   country    Miele-Deutschland
   devStateIcon .*:noIcon
   login      XXX@web.de
   room       System->Server
   verbose    5


Ich bekomme leider seit 09.09. keinen aktuellen Token, im FHEM-Log steht nun das (sorry, der war ziemlich lange, habe jetzt mal "irgendwo" angefangen rauszukopieren:

<body id="mieleLoginSite">
<div class="container">
    <div class="row">
        <div class="col s12 m8 offset-m2 offset-l2 l8 center">
            <div>
                <img class="responsive-img"
                     src="/assets/images/miele_logo.svg" width="150" alt="miele.com"/>
            </div>
            <h1 class="mediumFont">Kontoverknüpfung fehlgeschlagen!</h1>
            <p>Bitte überprüfen Sie ihre Zugangsdaten.</p>
            <button class="btn waves-effect waves-light miele-red"
                    onclick="location.replace(document.referrer)"
            >Zurück</button>
            <p>Nach 5 Sekunden werden Sie automatisch zurück zum Login weitergeleitet.</p>
        </div>
    </div>
</div>
</body>
<script>
    document.ready(
        window.setTimeout(function(){
            location.replace(document.referrer);
        }, 5000)
    );
</script>
</html>

2020.09.17 08:38:06 5: MieleConnection (MieleAtHome::scrapeGrantAccessPage:732) code not found
2020.09.17 08:38:06 2: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:712) Error: Bearer code not found, giving up
2020.09.17 08:38:21 4: MieleConnection (MieleAtHome::MAH_getAccessToken:1511) found local token with remaining lifetime of -690917 seconds
2020.09.17 08:38:21 5: MieleConnection (MieleAtHome::MAH_refreshAccessToken:553) called
2020.09.17 08:38:21 4: MieleConnection (MieleAtHome::MAH_getAccessToken:1511) found local token with remaining lifetime of -690917 seconds
2020.09.17 08:38:21 5: MieleConnection (MieleAtHome::MAH_refreshAccessToken:553) called
2020.09.17 08:38:21 4: MieleConnection (MieleAtHome::MAH_refreshAccessToken:561) token refresh already in progress, skipping
2020.09.17 08:38:21 5: MieleConnection (MieleAtHome::MAH_doThirdpartyLoginRequest:589) called

Auch wenn ich direkt auf https://api.mcs3.miele.com/thirdparty/login/ gehe kommt ohne die Möglichkeit etwas einzugeben direkt "Kontoverknüpfung fehlgeschlagen!". Geht das bei euch?

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 20 September 2020, 08:39:09
Moin Florie,


Ich bekomme leider seit 09.09. keinen aktuellen Token, im FHEM-Log steht nun das (sorry, der war ziemlich lange, habe jetzt mal "irgendwo" angefangen rauszukopieren:


besteht das Problem immer noch?

Das Log deutet für mich auf kein spezifisches Problem hin.


Auch wenn ich direkt auf https://api.mcs3.miele.com/thirdparty/login/ gehe kommt ohne die Möglichkeit etwas einzugeben direkt "Kontoverknüpfung fehlgeschlagen!". Geht das bei euch?


Nein, das ist hier auch so.

Hast Du mal versucht, dich hier einzuloggen: https://www.miele.com/developer/swagger-ui/swagger.html (rechte Seite -> "Authorize").

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 23 September 2020, 08:00:34
Hi, Danke für den Swagger-Link. Leider bin ich nicht mehr reingekommen, keine Ahnung wieso. Habe jetzt ne neue ClientID generiert, und schwupps ging es wieder sofort. Danke Dir
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 24 September 2020, 10:51:46
Moin,

Hi, Danke für den Swagger-Link. Leider bin ich nicht mehr reingekommen, keine Ahnung wieso. Habe jetzt ne neue ClientID generiert, und schwupps ging es wieder sofort. Danke Dir

Und dann hat es auch sofort aus FHEM heraus funktioniert, ohne dass Du dich einmal auf deren swagger-seite authorisiert hast? Hatte schon die Befürchtung, sie hätten das Protokoll verändert.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Florie am 24 September 2020, 11:19:42
Genau, frag mich nicht, wieso die alten Daten nichtmehr gegangen sind, aber so würde ich behaupten lag es in irgendeiner Weise an mir ;)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 26 September 2020, 10:05:24
Hi,

ich habe gerade nochmal ein Update hochgeladen: Hier wird jetzt zum aktualisieren des Token der REFRESH_TOKEN verwendet wenn möglich. Dadurch ist die Aktualisierung jetzt ein wenig leichtgewichtiger geworden.

Wenn es hier keine Beschwerden gibt, wird das voraussichtlich die Version, die ich nächste Woche einchecken werde.

Danke für's testen :)

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: xerion am 26 September 2020, 20:32:36
Hi,

ich habe gerade nochmal ein Update hochgeladen: Hier wird jetzt zum aktualisieren des Token der REFRESH_TOKEN verwendet wenn möglich. Dadurch ist die Aktualisierung jetzt ein wenig leichtgewichtiger geworden.

Wenn es hier keine Beschwerden gibt, wird das voraussichtlich die Version, die ich nächste Woche einchecken werde.

Danke für's testen :)

LG

Christian

Habe die Version gerade installiert und beim Reload bekomme ich folgende Meldung zurück:
Too many arguments for main::MAH_doThirdpartyTokenRequest at ./FHEM/48_MieleAtHome.pm line 584, near "$refreshToken)
"
Too many arguments for main::MAH_doThirdpartyTokenRequest at ./FHEM/48_MieleAtHome.pm line 723, near """)"
BEGIN not safe after errors--compilation aborted at ./FHEM/48_MieleAtHome.pm line 837.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 26 September 2020, 23:30:04
Hi,

Du musst ein shutdown restart machen, hab' die Anzahl der Parameter verändert. Hätte ich erwähnen sollen, sorry.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: xerion am 27 September 2020, 11:33:06
Jetzt läuft es :-)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: HotteFred am 02 Oktober 2020, 15:18:21
Ich hab noch die Version 0.12.

Hatte mich gewundert, das der Geschirrspüler nichts mehr gesagt hatte. Hab dann diesen Eintag im Log gefunden:

2020-09-23_08:47:52 MieleConnection lastError: please set login, password, clientId and clientSecret
Musste alles neu eingeben, danach funktionierte es direkt wieder. Trotzdem seltsam.
Hat das noch jemand gehabt?

Grüße
Christian

Edit: Ich sehe gerade, es gibt schon zwei neue Versionen. Ich update erst einmal. Mal schauen, wie es sich dann verhält. Grüße
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 02 Oktober 2020, 15:29:27
Hi,

Hatte mich gewundert, das der Geschirrspüler nichts mehr gesagt hatte. Hab dann diesen Eintag im Log gefunden:

2020-09-23_08:47:52 MieleConnection lastError: please set login, password, clientId and clientSecret
Musste alles neu eingeben, danach funktionierte es direkt wieder. Trotzdem seltsam.
Hat das noch jemand gehabt?

Edit: Ich sehe gerade, es gibt schon zwei neue Versionen. Ich update erst einmal. Mal schauen, wie es sich dann verhält. Grüße

Kannst Du mal nachsehen, ob du ein rereadconfig gemacht hast? Das hat es nämlich in < 0.13 gelöscht.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: HotteFred am 02 Oktober 2020, 15:42:52
Das müsste ich im File_Log dazu sehen? Dann nein.

Viele Grüße
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: dfred12345 am 04 Oktober 2020, 22:19:40
Hallo Ich kann das Attribut Country Österreich nicht setzen, da der Umlaut "Ö" nicht dargestellt werden kann

Was mach ich hier falsch. VIELEN Dank für eure Hilfe.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 04 Oktober 2020, 22:39:21
Du machst vermutlich gar nichts falsch.

Ich gucke, dass ich morgen alle Sonderzeichen ersetze und ne neue Version release.

LG Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 05 Oktober 2020, 13:44:40
Hi,

ich habe gerade version 0.15.0 hochgeladen. Ich hab' jetzt alle Sonderzeichen durch ASCII-Zeichen in der Länderauswahl ersetzt.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: dfred12345 am 05 Oktober 2020, 21:35:06
Hallo Christian, erstmal vielen Dank für die Anpassung. Das hat soweit funktioniert. Ich bekomme aber trotzdem keine Verbindung hin.

Auf der Miele Developers Page kann ich mich mit meiner ClientID / ClientSecret / Email / Password und Ländersetting anmelden.

Diese Infos hab ich auch ins MieleAtHome Device eingetragen.

Was könnte ich noch Probieren?

Falls es hilft noch das Log:

2020.10.05 21:03:49 5: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:695) reply: err:, code:302, headers:HTTP/1.1 302 Found
Date: Mon, 05 Oct 2020 19:03:49 GMT
Content-Length: 0
Connection: close
Strict-Transport-Security: max-age=15724800; includeSubDomains
Location: https://api.mcs3.miele.com/thirdparty/login/?code=AT_509b5d0c0408d3111d11ca436dfe32e8&state=login
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: PUT, GET, POST, OPTIONS
Access-Control-Allow-Headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization, data:
2020.10.05 21:03:49 5: MieleConnection (MieleAtHome::scrapeGrantAccessPage:738) code not found
2020.10.05 21:03:49 2: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:718) Error: Bearer code not found, giving up


2020.10.05 21:14:01 5: MieleConnection (MieleAtHome::MAH_refreshAccessToken:553) called
2020.10.05 21:14:01 5: MieleConnection (MieleAtHome::MAH_doThirdpartyLoginRequest:595) called
2020.10.05 21:14:01 5: MieleConnection (MieleAtHome::MAH_onThirdpartyLoginReply:627) reply: err:, code:200, headers:HTTP/1.1 200 OK
Date: Mon, 05 Oct 2020 19:14:01 GMT
Content-Type: text/html
Content-Length: 2237
Connection: close
Strict-Transport-Security: max-age=15724800; includeSubDomains
Vary: Accept-Encoding
Content-Encoding: gzip
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: PUT, GET, POST, OPTIONS
Access-Control-Allow-Headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization, data:<html lang="de">
<head>
<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<meta charset="utf-8">
<!-- Suppress favicon request-->
<link rel="shortcut icon" type="image/x-icon"
href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAABILAAASCwAAAAAAAAAAAAAUAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/EwCL/xMAjP8TAIv/EgCL/xIAi/8TAIv/EgCL/xMAi/8SAIv/EwCL/xIAi/8TAIv/FACM/xQAjP8UAIz/FwON/yYUlf8bCY//KBaW/ysZmP8tG5j/JhSV/y4dmf8mFJX/KxmX/ygVlv8tG5j/JxSV/xQAjP8UAIz/EwCM/x4Lkf+BdsH/nJPO/7Ot2v+aks7/s63a/6Wd0/+9t9//lo3M/7Wv2/+noNT/vbff/5mQzf8mFJX/EwCL/xMAjP8cCJD/qaLV/8C64P+9uN//mpLO/4+GyP9pXLX/hnvE/3Fluv+1rtv/iH/F/4B2wf9zaLv/HQqR/xMAjP8UAIz/FwOO/zMhm/8mFZX/JxaV/y0bmP8fDZL/FwWO/xIAi/8VBI3/MiCa/yIRk/8SAIv/EgCL/xMAjP8UAIz/FACM/xQAjP8SAIv/EwCL/xMAi/8SAIv/EwCM/xQAjP8UAIz/FACM/xIAi/8TAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/FACM/xQAjP8UAIz/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==">
<!--Import Google Icon Font-->
<!--Import materialize.css-->
<!--Import own css-->
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link rel="stylesheet" href="/assets/css/materialize.min.css?1556550173384">
<link type="text/css" rel="stylesheet" href="/assets/css/mieleStyle.css?1556550173387"
media="screen,projection"/>
<!-- Import scrips -->
<!-- Compiled and minified JavaScript -->
<script src="/assets/js/materialize.min.js?1556550173386"></script>
<!--Hotfix for selection error on IOS 13, see MIELCLD3-4504-->
<script src="/assets/js/selectHotfix.js"></script>
<script>
document.addEventListener('DOMContentLoaded', function () {
M.FormSelect.init(document.querySelectorAll('select'));
});
</script>
</head>
<body id="mieleLoginSite">
<div class="container">
<div class="row">
<div class="col s12 m8 offset-m2 offset-l2 l8">
<div class="center">
<img class="responsive-img"
src="/assets/images/miele_logo.svg" width="150" alt="miele.com"/>
</div>
<h1 class="center mediumFont">Login</h1>
<form method="post" action="/oauth/auth">
<div class="input-field">
<i class="material-icons prefix">account_circle</i>
<input required id="e-mail" type="email" name="email">
<label for="e-mail">Email Address</label>
</div>
<div class="input-field">
<i class="material-icons prefix">https</i>
<input required id="password" type="password" name="password">
<label for="password">Password</label>
</div>
<!-- add here all hidden inputs -->
<input type="hidden" name="response_type" value="code">
<input type="hidden" name="redirect_uri" value="https://api.mcs3.miele.com/thirdparty/login/">
<input type="hidden" name="state" value="login">
<input type="hidden" name="client_id" value="MYDI">
<div class="input-field" style="margin-top: 25px;">
<i class="material-icons prefix no-margin">language</i>
<select required name="vgInformationSelector" size="5">
<option value="" disabled>Please select your country</option>
<option value="en-AU">Miele Australia</option>
<option value="nl-BE">Miele België</option>
<option value="en-CA">Miele Canada</option>
<option value="es-CL">Miele Chile</option>
<option value="hr-HR">Miele Croatia</option>
<option value="cs-CZ">Miele Czechia</option>
<option value="da-DK">Miele Danmark</option>
<option value="de-DE">Miele Deutschland</option>
<option value="et-EE">Miele Eesti</option>
<option value="es-ES">Miele España</option>
<option value="fr-FR">Miele France</option>
<option value="ko-KR">Miele Hanguk</option>
<option value="zh-HK">Miele Hong Kong, China</option>
<option value="en-IE">Miele Ireland</option>
<option value="en-IL">Miele Israel</option>
<option value="it-IT">Miele Italia</option>
<option value="el-CY">Miele Kypros</option>
<option value="lv-LV">Miele Latvija</option>
<option value="lt-LT">Miele Lietuva</option>
<option value="de-LU">Miele Luxemburg</option>
<option value="hu-HU">Miele Magyarország</option>
<option value="en-MY">Miele Malaysia</option>
<option value="es-MX">Miele México</option>
<option value="nl-NL">Miele Nederland</option>
<option value="en-NZ">Miele New Zealand</option>
<option value="ja-JP">Miele Nihon</option>
<option value="no-NO">Miele Norge</option>
<option value="pl-PL">Miele Polska</option>
<option value="pt-PT">Miele Portugual</option>
<option value="ro-RO">Miele România</option>
<option value="de-CH">Miele Schweiz</option>
<option value="en-SG">Miele Singapore</option>
<option value="sl-SI">Miele Slovenia</option>
<option value="sk-SK">Miele Slovensko</option>
<option value="en-ZA">Miele South Africa</option>
<option value="fi-FI">Miele Suomi</option>
<option value="sv-SE">Miele Sverige</option>
<option value="en-TH">Miele Thailand</option>
<option value="tr-TR">Miele Türkiye</option>
<option value="en-GB">Miele UK</option>
<option value="en-US">Miele USA</option>
<option value="en-AE">Miele United Arab Emirates</option>
<option value="zh-CN">Miele Zhōngguó, dàlù</option>
<option value="de-AT">Miele Österreich</option>
<option value="el-GR">Miele Ελλάδα</option>
<option value="ru-BY">Miele Беларуси</option>
<option value="bg-BG">Miele България</option>
<option value="ru-KZ">Miele Казахстан</option>
<option value="ru-RU">Miele Россия</option>
<option value="sr-RS">Miele Србија</option>
<option value="ru-UA">Miele Україна</option>
</select>
<label>Country</label>
</div>
<div class="center">
<button class="btn waves-effect waves-light miele-red"
type="submit">Submit</button>
</div>
</form>
</div>
</div>
</div>
</body>
</html>
2020.10.05 21:14:01 5: MieleConnection (MieleAtHome::MAH_doOauthLoginRequest:644) called
2020.10.05 21:14:01 5: MieleConnection (MieleAtHome::MAH_doOauthLoginRequest:666) country for /oauth/auth is de-AT
2020.10.05 21:14:02 5: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:695) reply: err:, code:302, headers:HTTP/1.1 302 Found
Date: Mon, 05 Oct 2020 19:14:02 GMT
Content-Length: 0
Connection: close
Strict-Transport-Security: max-age=15724800; includeSubDomains
Location: https://api.mcs3.miele.com/thirdparty/login/?code=AT_725d8e62e8bc09d506916cd3c81341ed&state=login
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: PUT, GET, POST, OPTIONS
Access-Control-Allow-Headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization, data:
2020.10.05 21:14:02 5: MieleConnection (MieleAtHome::scrapeGrantAccessPage:738) code not found
2020.10.05 21:14:02 2: MieleConnection (MieleAtHome::MAH_onOauthLoginReply:718) Error: Bearer code not found, giving up
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 05 Oktober 2020, 21:58:57
Weil das Modul ein Bearer Code in der Form: if ($headers =~ /(?s)code=(DE_[0-9a-f]+)/) {
sucht.

Anscheinend ist es aber hier AT_509b5d0c0408d3....
Du bist wahrscheinlich der erste, der ausserhalb Deutschland das Modul benutzt ;)

Versuch mal die Zeile 705 im Modul so zu ändern:
if ($headers =~ /(?s)code=(.._[0-9a-f]+)/) {
Dann ein "reload 48_MieleAtHome" und dann wieder probieren.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 05 Oktober 2020, 22:10:00
Alter,

Weil das Modul ein Bearer Code in der Form: if ($headers =~ /(?s)code=(DE_[0-9a-f]+)/) {
sucht.

Anscheinend ist es aber hier AT_509b5d0c0408d3....

ich bin so ein Dödel :D

Da hab' ich schon bei der ersten Implementierung, die ich ja mit Hilfe des HTTPMOD-Threads geschrieben habe, dran gedacht und ich dachte, das hätte ich schon ewig gefixt. Hab ich aber nicht :(. Tut mir leid. Der Fix von @amenomade sollte helfen.

Ich fix' es morgen :)

LG
Christian

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: amenomade am 05 Oktober 2020, 22:18:05
Sag bloß, dass ich Bugs in dem HTTPMOD geschrieben habe, die so "gefixt" werden sollten! ;) :D
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: dfred12345 am 05 Oktober 2020, 22:20:08
Es geht vielen Dank
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 05 Oktober 2020, 22:46:58
Sag bloß, dass ich Bugs in dem HTTPMOD geschrieben habe, die so "gefixt" werden sollten! ;) :D

Nee, du hast keine Bugs eingebaut. Die HTTPMOD Lösung ist ja eher was, was jeder für sich konfiguriert. Aber ein fertiges Modul sollte das schon flexibler können ...

Super, dass es jetzt geht 😎

LG
Christian
Titel: Antw:Neues [Beta-]Modul: Miele@Home
Beitrag von: dfred12345 am 06 Oktober 2020, 20:56:14
Hi,

ich habe gerade Version 0.6.0 hochgeladen. Jetzt werden erstmal alle ProcessActions unterstützt:
0x01 => "start",              # 1 START
0x02 => "stop",               # 2 STOP
0x03 => "pause",              # 3 PAUSE
0x04 => "startSuperFreezing", # 4 START SUPERFREEZING
0x05 => "stopSuperFreezing",  # 5 STOP SUPERFREEZING
0x06 => "startSuperCooling",  # 6 START SUPERCOOLING
0x07 => "stopSuperCooling",   # 7 STOP SUPERCOOLING

LG
Christian

Hallo Christian, ich habe ne Washing Machine leider funktionieren nicht alle ProcessActions (On/Off geht). Auf "set MieleWaschmaschine start" kommt folgende Meldung:
 'start' is currently not available. :( Was könnte der Grund sein?
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 06 Oktober 2020, 21:06:59
Hi,
'start' is currently not available. :( Was könnte der Grund sein?

Grundsätzlich ist es so, dass die API mitteilt, welche Aktionen gerade verfügbar sind. Ich würde jetzt davon ausgehen, dass in dem Moment das 'start' nicht verfügbar ist.

Entweder, die WaMa ist nicht in einem Zustand, dass du sie per API starten kannst (geht es denn per App?), oder vielleicht muss der aktuelle Zustand auch erst aktualisiert werden (was ich eher nicht glaube).

Geht es denn, wenn Du ein bisschen wartest?

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: dfred12345 am 06 Oktober 2020, 21:56:09
Ich habs nun. Bei der Waschmaschine muss man ein Programm Auswählen und einen "Smart Start" aktivieren, dann kommt "Start" "Stop". Es funktioniert aber nicht, wenn man Mobile Start anwählt.
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Roderich am 14 Oktober 2020, 20:08:12
Hallo,

mit Begeisterung habe ich unsere neue Miele Waschmaschine in Betrieb genommen.
Das Einrichten in FHEM hat soweit geklappt, dachte ich jedenfalls.
Es gibt Interaktion zwischen FHEM und der Maschine.
Mit Verbose 5 bekomme ich aber immer folgende Fehler:

Waschmaschine (MieleAtHome::MAH_onGetDeviceIdentAndStateReply:949) reply: err:, code:200
Waschmaschine (MieleAtHome::MAH_onGetDeviceActionsReply:1076) reply: err:, code:200

Es werden auch nur die Befehle set Waschmaschine on und update angezeigt.

Woran kann das liegen.

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: timmib am 15 Oktober 2020, 09:14:45
Super Sache. Das Auslesen funktioniert schonmal. Das Starten der Waschmaschiene teste ich die Tage. Wieder eine Bastellösung mehr, die ich durch ein ordentlichen Modul ablösen kann.  :)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 15 Oktober 2020, 09:27:45
Moin,
Mit Verbose 5 bekomme ich aber immer folgende Fehler:

Waschmaschine (MieleAtHome::MAH_onGetDeviceIdentAndStateReply:949) reply: err:, code:200
Waschmaschine (MieleAtHome::MAH_onGetDeviceActionsReply:1076) reply: err:, code:200

Das ist kein Fehler. Der Html-Code 200 bedeutet "OK". Das logging kommt, weil Du offenbar Loglevel 5 aktiviert hast.

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: Roderich am 15 Oktober 2020, 20:44:51
Hallo Christian,

vielen Dank. Dann kann ich verbose ja wieder abdrehen :-)
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: JoWiemann am 17 Oktober 2020, 16:46:51
Hallo,

seit einiger Zeit habe ich das Phänomen, dass der statusRaw meiner Waschmaschine unregelmäßig zwischen 1 und 255 pendelt. Da die Maschine bei "Aus" sich komplett abschaltet, also auch im WLAN nicht mehr angemeldet ist, ist dieses Pendeln eigentlich unsinnig. Um nicht permanent von meinen notify auf statusRaw genervt zu werden habe ich dieses Pendeln entsprechend abgefangen:

if ((statusRaw < 255 && statusRawAlt == statusRaw) || (statusRaw == 255 && statusRawAlt == 1)) {
   return;
} else {
   statusRawAlt = statusRaw;
}

Vielleicht könnte man ja etwas ähnliches im Modul hinterlegen.

Danke für das Modul und Grüße

Jörg
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: choenig am 17 Oktober 2020, 21:03:26
Hallo Jörg,
if ((statusRaw < 255 && statusRawAlt == statusRaw) || (statusRaw == 255 && statusRawAlt == 1)) {
   return;
} else {
   statusRawAlt = statusRaw;
}

Vielleicht könnte man ja etwas ähnliches im Modul hinterlegen.

Grundsätzlich gerne, ich würde aber vermutlich folgendes vorschlagen: So lange der Status 255 nur einmal kommt, würde ich das update vollständig ignorieren. Wenn es mehr als einen (oder vielleicht auch mehr als 2) gibt, würde ich ihn auch wieder durchreichen.

Das würde dem Prinzip folgen, wenn es einmal passiert, ist es ein komischer Zustand der API/Maschine. Wenn es mehrfach hintereinander passiert, könnte es ein Problem der Verbindung der Maschine sein. Das möchte der Benutzer dann wieder mitbekommen.

Passt Dir das?

LG
Christian
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: JoWiemann am 18 Oktober 2020, 18:31:49
Hallo Jörg,
Grundsätzlich gerne, ich würde aber vermutlich folgendes vorschlagen: So lange der Status 255 nur einmal kommt, würde ich das update vollständig ignorieren. Wenn es mehr als einen (oder vielleicht auch mehr als 2) gibt, würde ich ihn auch wieder durchreichen.

Das würde dem Prinzip folgen, wenn es einmal passiert, ist es ein komischer Zustand der API/Maschine. Wenn es mehrfach hintereinander passiert, könnte es ein Problem der Verbindung der Maschine sein. Das möchte der Benutzer dann wieder mitbekommen.

Passt Dir das?

LG
Christian

Hallo Christian,

grundsätzlich ja, nur macht die zweite Bedingung nicht genau das? Status 1 ist ja "Aus". Sofern bei allen Miele Geräte "Aus" == vom Strom und WLAN getrennt bedeutet kann kein 255 mehr kommen, wenn der letzte Status "Aus" war. Ist der letzte Status != "Aus wird das 255 ja durchgereicht. Oder verstehe ich mich selbst nicht?

Grüße Jörg
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: speedAmaster am 19 Oktober 2020, 22:36:06
hallo,
bei mir als Newbie hat das Modul auf Anhieb mit meiner Waschmaschine funktioniert!

Frage1: gibt es eine Möglichkeit zur Spracheinstallung? Bei mir ist der state: "In use (00:25)"....  (klar, wir können alle Englisch, aber Deutsch wäre schon "schöner")
Frage2: den "Start" kannn ich wohl von FHEM nur ausführen, wenn ich SmartStart (Programmwahl mir verzögertem Start (zB 16:00)) wähle..... bedeutet dies, dass ich somit nur die Wahl habe vor 16:00 zu Starten, ansonsten die Maschine um 16:00 startet..... als KOnsequenz muss ich zwar in FHEM diese Logik nicht nachbauen, kann die Maschine aber von FHEM nicht dazu bewegen erst um 17:00 zu Waschen..... korrekt?

SUPER MODUL - TOLLE ARBEIT und ich freue mich über die "offizielle" Freigabe!

VG
Bernd
Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: xerion am 20 Oktober 2020, 20:49:42
hallo,
bei mir als Newbie hat das Modul auf Anhieb mit meiner Waschmaschine funktioniert!

Frage1: gibt es eine Möglichkeit zur Spracheinstallung? Bei mir ist der state: "In use (00:25)"....  (klar, wir können alle Englisch, aber Deutsch wäre schon "schöner")
Frage2: den "Start" kannn ich wohl von FHEM nur ausführen, wenn ich SmartStart (Programmwahl mir verzögertem Start (zB 16:00)) wähle..... bedeutet dies, dass ich somit nur die Wahl habe vor 16:00 zu Starten, ansonsten die Maschine um 16:00 startet..... als KOnsequenz muss ich zwar in FHEM diese Logik nicht nachbauen, kann die Maschine aber von FHEM nicht dazu bewegen erst um 17:00 zu Waschen..... korrekt?

SUPER MODUL - TOLLE ARBEIT und ich freue mich über die "offizielle" Freigabe!

VG
Bernd

Hallo Bernd,

kleiner Tipp für den Anfang als Newbie manche Sachen kann man sich einfach erlesen ;-)
Schaue dir mal das attr <MIELE_MODUL> lang an.
Du kannst in der Waschmaschine Smart Start/Ende einstellen. Du muss den Zeitraum nur groß genug wählen und dann kannst du ja dazwischen das Signal per FHEM abschicken.

Titel: Antw:[Neues Modul] Miele@Home
Beitrag von: speedAmaster am 21 Oktober 2020, 21:09:31
ad1: Asche auf mein Haupt!
ad2: danke für die Bestätigung!

wann wird das Modul "offiziell"?