[Neues Modul] Miele@Home

Begonnen von choenig, 14 Juni 2020, 11:08:17

Vorheriges Thema - Nächstes Thema

choenig

Hi,

... dann ist das wohl ein Bug im Modul  :-\

Lässt sich bei Zeiten sicherlich fixen, die habe ich aber kurzfristig nicht. Funktioniert der Workaround denn bei dir?

LG
Christian

mlau

Fix war einfach:

--- 48_MieleAtHome.pm~  2021-09-26 19:41:49.000000000 +0200
+++ 48_MieleAtHome.pm   2021-10-01 14:14:32.912303892 +0200
@@ -387,8 +387,8 @@ sub MAH_SetFn($$@)
                return undef;
        }
        elsif( $cmd eq 'autocreate' ) {
-               return "autocreate needs a valid ACCESS_TOKEN, please try again" if (MAH_getAccessToken($hash) == "");
-               return "use $cmd without arguments" if(@args != 0);
+               return "autocreate needs a valid ACCESS_TOKEN, please try again" if (MAH_getAccessToken($hash) eq "");
+               return "use $cmd without arguments" if(@args ne 0);
                InternalTimer(gettimeofday()+0, "MAH_autocreate", $hash);
                return undef;
        }

JoWiemann

Zitat von: mlau am 01 Oktober 2021, 14:19:28
Fix war einfach:

--- 48_MieleAtHome.pm~  2021-09-26 19:41:49.000000000 +0200
+++ 48_MieleAtHome.pm   2021-10-01 14:14:32.912303892 +0200
@@ -387,8 +387,8 @@ sub MAH_SetFn($$@)
                return undef;
        }
        elsif( $cmd eq 'autocreate' ) {
-               return "autocreate needs a valid ACCESS_TOKEN, please try again" if (MAH_getAccessToken($hash) == "");
-               return "use $cmd without arguments" if(@args != 0);
+               return "autocreate needs a valid ACCESS_TOKEN, please try again" if (MAH_getAccessToken($hash) eq "");
+               return "use $cmd without arguments" if(@args ne 0);
                InternalTimer(gettimeofday()+0, "MAH_autocreate", $hash);
                return undef;
        }


Hiermit: return "use $cmd without arguments" if(@args ne 0); habe ich ein Problem ne,eq usw wirkt auf Zeichenketten, ==,!= auf Zahlen.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

mlau

Zitat von: JoWiemann am 01 Oktober 2021, 14:32:41
Hiermit: return "use $cmd without arguments" if(@args ne 0); habe ich ein Problem ne,eq usw wirkt auf Zeichenketten, ==,!= auf Zahlen.

Grüße Jörg

Tut mir Leid, das war noch bevor ich mehr als Null von Perl wusste :)
Lt. Perlmonks geht "ne" auch auf Zahlen, ist aber "teurer" weil die Zahlen in Strings konvertiert werden und dann die Strings verglichen werden.

mlau

Neuer Fix:

Das Token ist ein String, daher Vergleich mit "eq" nötig.


--- 48_MieleAtHome.pm~  2021-10-01 16:19:16.000000000 +0200
+++ 48_MieleAtHome.pm   2021-10-01 16:20:26.844077980 +0200
@@ -387,7 +387,7 @@ sub MAH_SetFn($$@)
                return undef;
        }
        elsif( $cmd eq 'autocreate' ) {
-               return "autocreate needs a valid ACCESS_TOKEN, please try again" if (MAH_getAccessToken($hash) == "");
+               return "autocreate needs a valid ACCESS_TOKEN, please try again" if (MAH_getAccessToken($hash) eq "");
                return "use $cmd without arguments" if(@args != 0);
                InternalTimer(gettimeofday()+0, "MAH_autocreate", $hash);
                return undef;

bamm-bamm

Ob wohl jemand die gefixte Version "einchecken" kann?

choenig

Hi,

hab's eingecheckt, ist ab morgen früh im update.

Vielen Dank @mlau und @JoWiemann :)

LG
Christian

bamm-bamm

Vielen Dank an alle Beteiligte. :)
Autocreate funktioniert jetzt (manuell war aber auch ohne Probleme möglich). Schön, daß "Miele@Home" noch weiterhin gepflegt wird. Ich hatte schon befürchtet, mit der Anschaffung des Miele Gerätes aufs falsche Pferd gesetzt zu haben, da es ja noch ein Konkurrenzprotokoll (auch von FEHM unterstützt).
Es sollen bei mir ja nach und nach weitere Geräte folgen.
Gruß,
Andreas S.

juemuc

Hallo Christian,

erst einmal vielen Dank für das Modul. Hiermit ist es mir möglich unsere neue Kühl-Gefrierkombination in Fhem einzubinden. Laut API-Dokumentation sollte es auch möglich sein die Temperatur(en) zu beeinflussen. Allerdings gibt es hierzu kein set. Ist das nur (noch) nicht implementiert oder habe ich etwas übersehen?

Viele Grüße
Jürgen   
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

choenig

#174
Hallo Jürgen,

Zitat von: juemuc am 17 Oktober 2021, 19:55:43

erst einmal vielen Dank für das Modul. Hiermit ist es mir möglich unsere neue Kühl-Gefrierkombination in Fhem einzubinden. Laut API-Dokumentation sollte es auch möglich sein die Temperatur(en) zu beeinflussen. Allerdings gibt es hierzu kein set. Ist das nur (noch) nicht implementiert oder habe ich etwas übersehen?

Du hast nix übersehen, das habe ich noch nicht implementiert, da ich kein passendes Gerät habe.

Im Anhang [EDIT: removed] findest Du eine Version, in der ich `set mode` und `set targetTemperature_zoneX` implementiert habe. Ich habe sie in meiner Testumgebung getestet, mehr aber auch nicht. Ich würde mich freuen, wenn Du sie mal ausprobieren könntest und mit mitteilen könntest, ob es tut, oder eben nicht ;-).

LG
Christian

juemuc

Hallo Christian,

super. Ich werde es gleich morgen testen und dann hier berichten  ;D

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

juemuc

Hallo Christian,

ich konnte nicht warten  ;)

Vorweg: Es sieht gut aus. Trotzdem hätte ich einen Änderungswunsch, sofern dies möglich ist.

Kann der Schieber auf den aktuellen Wert eingestellt werden? Bei der Zone1 steht der Wert auf 1, die aktuelle Einstellung ist aber 5. Das gleiche gilt für Zone2. Hier steht der Wert auf -26 obwohl die Einstellung im Gerät auf -18 steht.

Hast Du zusätzlich den "mode" zur Verfügung gestellt?  Hier kann man nur "sabbathMode" auswählen. Das passt aus meiner Sicht nicht. Den "sabathMode" müsste man ein- bzw. ausschalten können. Dies gilt auch für weitere Modi.
Kann ich Dir weitere Infos liefern?

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

juemuc

Hallo Christian,

laut Miele-App sind die Werte für Zone1 von 3 - 9 und bei Zone2 von -26 - -15. Einen Modus kann man hier nicht einstellen. Leider kann ich aktuell die Einstellungen am Gerät nicht überprüfen.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

choenig

Hi,

Zitat von: juemuc am 18 Oktober 2021, 21:48:29
ich konnte nicht warten  ;)

Sehr schön :)

Zitat von: juemuc am 18 Oktober 2021, 21:48:29
Vorweg: Es sieht gut aus. Trotzdem hätte ich einen Änderungswunsch, sofern dies möglich ist.

Kann der Schieber auf den aktuellen Wert eingestellt werden? Bei der Zone1 steht der Wert auf 1, die aktuelle Einstellung ist aber 5. Das gleiche gilt für Zone2. Hier steht der Wert auf -26 obwohl die Einstellung im Gerät auf -18 steht.

Das kann ich mir mal angucken, befürchte aber, dass das nicht geht. Hintergrund ist, das FHEM das aus einem Reading mit gleichem Namen generiert, der aber nicht besteht. Was steht denn bei Dir im Reading `targetTemperature`?

Du kannst mal verbose auf 5 stellen und mir die Ausgaben zukommen lassen, gerne per PN (insbes. die Antworten vom Server nach einem `set update`).

Zitat von: juemuc am 18 Oktober 2021, 21:48:29
Hast Du zusätzlich den "mode" zur Verfügung gestellt?  Hier kann man nur "sabbathMode" auswählen. Das passt aus meiner Sicht nicht. Den "sabathMode" müsste man ein- bzw. ausschalten können. Dies gilt auch für weitere Modi.
Kann ich Dir weitere Infos liefern?

Ja, habe ich. Kann es sein, dass Du die andere Option bekommst, wenn du den Sabbat-Modus aktiviert hast (und danach ein update gelaufen ist)? Die Miele-API teilt mir immer mit, was gerade möglich ist, und dann kann man nicht auf "Normal" umschalten, wenn man schon auf "Normal" ist.

LG
Christian

choenig

Hi Jürgen,

Zitat von: juemuc am 18 Oktober 2021, 21:53:09
laut Miele-App sind die Werte für Zone1 von 3 - 9 und bei Zone2 von -26 - -15. Einen Modus kann man hier nicht einstellen. Leider kann ich aktuell die Einstellungen am Gerät nicht überprüfen.

Auch hier verwende ich die Bereiche, die vom Gerät kommen ... es sei denn, ich habe Debug-Code mit eingebaut ... mal gucken ... nein, hab' ich nicht ;-).

Hilfreich ist hier ein Auszug aus dem Log mit verbose 5, insbesondere mit `MAH_onGetDeviceActionsReply`.

LG
Christian