Ergonomische Version von 48_HomeConnect.pm

Begonnen von Prof. Dr. Peter Henning, 11 September 2022, 09:28:52

Vorheriges Thema - Nächstes Thema

RockFan

#135
Hallo pah,
Danke für das Weiterentwickeln :)

Ich musste unseren Trockner erstmal wieder ins WLAN bringen, da er sich gerne immer wieder mal daraus verabschiedet. Vor knapp einem Jahr hatte ich mit der damaligen Version Deiner Neuentwicklung ja nicht hinbekommen (siehe Post 66)
Das sieht jetzt besser aus.
Wenn ich die Programme mit verbose=5 abrufe (get Programs) bekomme ich:
2024.03.16 12:39:35 5: [HomeConnect_ResponseGetPrograms] WT7YH701: get programs response {
  "data": {
    "active": {
      "constraints": {
        "access": "readWrite"
      }
    },
    "programs": [{
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Cotton"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Synthetic"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Mix"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Dessous"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.TimeCold"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.TimeWarm"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Hygiene"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Super40"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Towels"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Outdoor"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Pillow"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Blankets"
    }, {
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.BusinessShirts"
    }],
    "selected": {
      "constraints": {
        "access": "readWrite"
      },
      "key": "LaundryCare.Dryer.Program.Cotton",
      "options": [{
        "key": "BSH.Common.Option.FinishInRelative",
        "value": 6720,
        "unit": "seconds"
      }, {
        "key": "LaundryCare.Dryer.Option.DryingTarget",
        "value": "LaundryCare.Dryer.EnumType.DryingTarget.CupboardDry"
      }, {
        "key": "LaundryCare.Dryer.Option.Gentle",
        "value": false
      }, {
        "key": "LaundryCare.Dryer.Option.WrinkleGuard",
        "value": "LaundryCare.Dryer.EnumType.WrinkleGuard.Min60"
      }, {
        "key": "BSH.Common.Option.EstimatedTotalProgramTime",
        "value": 6720,
        "unit": "seconds"
      }, {
        "key": "BSH.Common.Option.RemainingProgramTime",
        "value": 6720,
        "unit": "seconds"
      }, {
        "key": "BSH.Common.Option.RemainingProgramTimeIsEstimated",
        "value": true
      }]
    }
  }
}
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 1735.
2024.03.16 12:39:35 5: [HomeConnect_ReadEventChannel] WT7YH701: event channel searching for data, fileno:"76", nfound:"0", loopCounter:"1"
2024.03.16 12:39:35 5: [HomeConnect_ReadEventChannel] WT7YH701: event channel received no more data
2024.03.16 12:39:40 5: [HomeConnect_ReadEventChannel] WT7YH701: event channel searching for data, fileno:"76", nfound:"0", loopCounter:"1"
2024.03.16 12:39:40 5: [HomeConnect_ReadEventChannel] WT7YH701: event channel received no more data
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 1305.


Mir fällt noch auf, dass state immer offline anzeigt. Änderungen am Trockner, wie z.B das Schließen der Tür werden im Device aber aktualisiert.

Edit:
get ProgramOptions geht bei mir analog zu Daniel im vorigen Post auch nicht.

Viele Grüße
Dieter
Raspbian (Buster) auf Raspberry Pi 4 /  CUL + RFXTRX + TCM / FS20, FHT 80B, S300TH, Intertechno, DMX, Milight, EnOcean, Homematic, AMAD, Home Connect, MiSmartHome, Yeelight, ...

Prof. Dr. Peter Henning

#136
@Shadow3561: Hmm. Ging bei mir vor kurzem noch mit dem rootPrefix??? Habe ich jetzt mal geändert, das ist aber kein separater powerPrefix, sondern der "normale" optionPrefix.

@RockFan: Ah, sieh an, endlich mal ein paar Daten zum Dryer (ohne Washer...) Interessieren würde mich hierzu noch ein get ZZZ_Dump.

Ich habe diese Änderungen mal eingebaut, anbei die nächste Testversion. Die sollte jetzt sowohl settings, als auch programs und programOptions für Eure Geräte holen können.


LG

pah

Shadow3561

#137
EDIT:
Mein GS holt die settings wieder nicht.
Zeile 1677
   if($settings eq ""){

Was hälst du von ein paar Änderungen das state betreffend?
Ich habe bei mir noch ein paar Dinge in die {AttrList} eingebaut um das "state" an die unterschiedlichen Bedürfnisse von Usern an zu passen.

                       "show_end_time:0,1 " .           #fertig in
                       "show_end:0,1 " .                #fertig um
                       "show_progress:0,1 " .            #Fortschritt in %
                       "type:Washer,Dishwasher " .        #beeinflusst program

Anbei ein Bild vom Waschtrockner.
Wenn type = Dischwascher dann steht nur das Programm ohne Temp und U/min

Ich denke, dass es die Benutzerfreundlichkeit erhöht. Man kann sein state je nach device und gusto anpassen ohne mit userReadings oder stateFormat arbeiten zu müssen.


Prof. Dr. Peter Henning

Dafür gibt es doch die drei Readings tr_State1, tr_State2, tr_State3.

Wenn meine Chefin fragt "Wie lange braucht die Waschmaschine", wird tr_State2 abgespielt.
Wenn sie fragt "Wie ist der Status der Waschmaschine", wird tr_State3 abgespielt.

Die Skripte zum automatischen Einschalten habe ich unten schon veröffentlicht. Die komfortable Sprachsteuerung (auch der obigen Befehle) macht bei mir das Modul Babble, an dem "hinten" ein Rivescript-Chatbo dranhängt. Die Rivescript-Konfiguration stelle ich auch gerne zur Verfügung, wenn jemand das implementieren will.

LG

pah

Shadow3561

#139
Noch einmal zu Verhalten des "get Settings"

Lasse ich Zeile 1677 wie sie ist dann werden die settings vom Kochfeld und vom Waschtrockner abgerufen,
jedoch nicht die vom Geschirrspüler.
Hier das Log vom Geschirrspüler.

2024.03.16 19:42:20 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel searching for data, fileno:"19", nfound:"0", loopCounter:"1"
2024.03.16 19:42:20 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel received no more data
2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel searching for data, fileno:"19", nfound:"1", loopCounter:"1"
2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel len:"52", received:"2e
event:KEEP-ALIVE
data:
id:013080530166000676


"
2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel unknown: 2e

2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel unknown: event:KEEP-ALIVE

2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel unknown: id:013080530166000676

2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel unknown:

2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel unknown:

2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel searching for data, fileno:"19", nfound:"0", loopCounter:"2"
2024.03.16 19:42:25 5: [HomeConnect_ReadEventChannel] SMV8YCX03E_new: event channel received no more data

Ändere ich Zeile 1677 ne->eq
dann wird das "get settings" vom Geschirrspüler ausgeführt jedoch nicht Kochfeld und Waschtrockner.


ZitatDafür gibt es doch die drei Readings tr_State1, tr_State2, tr_State3.

Wenn meine Chefin fragt "Wie lange braucht die Waschmaschine", wird tr_State2 abgespielt.
Wenn sie fragt "Wie ist der Status der Waschmaschine", wird tr_State3 abgespielt.

Nicht jeder lässt sich die Zeiten mittels Sprachansage vorlesen.
Es war ja auch nur eine Anregung

EDIT:
Habe es jetzt erst mal so gelöst
  if($settings ne ""){
    $hash->{data}->{settings} = \%localsettings;
    $hash->{settings}         = $settings;
    #$hash->{setlist}          = $setshtml;
  }elsif($settings eq ""){
    $hash->{data}->{settings} = \%localsettings;
    $hash->{settings}         = $settings;
    #$hash->{setlist}          = $setshtml;
  }else

Damit lassen sich jetzt für alle 3 Geräte das "get Settings" ausführen und läuft durch.


Prof. Dr. Peter Henning

Hmmmm. Muss ich mir morgen ansehen, heute zu müde.

Und die drei States sind ja nicht nur zum Vorlesen. Sondern auch für die Anzeige via Telegram.

LG

pah

RockFan

#141
Zitat von: Prof. Dr. Peter Henning am 16 März 2024, 18:16:15@Shadow3561: Hmm. Ging bei mir vor kurzem noch mit dem rootPrefix??? Habe ich jetzt mal geändert, das ist aber kein separater powerPrefix, sondern der "normale" optionPrefix.

@RockFan: Ah, sieh an, endlich mal ein paar Daten zum Dryer (ohne Washer...) Interessieren würde mich hierzu noch ein get ZZZ_Dump.

Ich habe diese Änderungen mal eingebaut, anbei die nächste Testversion. Die sollte jetzt sowohl settings, als auch programs und programOptions für Eure Geräte holen können.


LG

pah

Ich finde nur ein set ZZZ_Dump (kein get) und bekomme damit folgendes:
Device WT7YH701 of type Dryer has
settings: $VAR1 = {
          'PowerState' => [
                            'BSH.Common.Setting',
                            'BSH.Common.EnumType.PowerState.',
                            'On',
                            undef
                          ]
        };

options: $VAR1 = undef;

transtable: $VAR1 = {};

poweroff: $VAR1 = 'PowerOff';

Das Resultat von get programOptions ist nach wie vor eine Fehlermeldung, die auch im Log steht:
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 1329.
2024.03.16 21:33:09 1: [HomeConnect_GetProgramOptions] WT7YH701: device not powered on, cannot determine options

Update:
get Programs liefert nun weniger:
2024.03.16 21:36:42 5: [HomeConnect_ResponseGetPrograms] WT7YH701: get programs response {
  "data": {
    "active": {
      "constraints": {
        "access": "read"
      },
      "key": "LaundryCare.Dryer.Program.Cotton",
      "options": [{
        "key": "LaundryCare.Dryer.Option.DryingTarget",
        "value": "LaundryCare.Dryer.EnumType.DryingTarget.CupboardDry"
      }, {
        "key": "LaundryCare.Dryer.Option.Gentle",
        "value": false
      }, {
        "key": "LaundryCare.Dryer.Option.WrinkleGuard",
        "value": "LaundryCare.Dryer.EnumType.WrinkleGuard.Min60"
      }, {
        "key": "BSH.Common.Option.ProgramProgress",
        "value": 100,
        "unit": "%"
      }, {
        "key": "LaundryCare.Dryer.Option.ProcessPhase",
        "value": "LaundryCare.Dryer.EnumType.ProcessPhase.FinishedAntiCrease"
      }, {
        "key": "BSH.Common.Option.RemainingProgramTimeIsEstimated",
        "value": true
      }]
    },
    "programs": [{
      "constraints": {
        "execution": "selectandstart"
      },
      "key": "LaundryCare.Dryer.Program.Cotton"
    }],
    "selected": {
      "constraints": {
        "access": "read"
      },
      "key": "LaundryCare.Dryer.Program.Cotton",
      "options": [{
        "key": "LaundryCare.Dryer.Option.DryingTarget",
        "value": "LaundryCare.Dryer.EnumType.DryingTarget.CupboardDry"
      }, {
        "key": "LaundryCare.Dryer.Option.Gentle",
        "value": false
      }, {
        "key": "LaundryCare.Dryer.Option.WrinkleGuard",
        "value": "LaundryCare.Dryer.EnumType.WrinkleGuard.Min60"
      }, {
        "key": "BSH.Common.Option.RemainingProgramTimeIsEstimated",
        "value": true
      }]
    }
  }
}

Und get Settings:
2024.03.16 21:37:16 4: WT7YH701: response {
  "data": {
    "settings": [{
      "key": "BSH.Common.Setting.PowerState",
      "value": "BSH.Common.EnumType.PowerState.On"
    }]
  }
}
2024.03.16 21:37:16 5: [HomeConnect_ResponseGetSettings] WT7YH701: get settings response {
  "data": {
    "settings": [{
      "key": "BSH.Common.Setting.PowerState",
      "value": "BSH.Common.EnumType.PowerState.On"
    }]
  }
}
2024.03.16 21:37:16 1: [HomeConnect_ResponseGetSettings] WT7YH701: no settings found


Viele Grüße
Dieter
Raspbian (Buster) auf Raspberry Pi 4 /  CUL + RFXTRX + TCM / FS20, FHT 80B, S300TH, Intertechno, DMX, Milight, EnOcean, Homematic, AMAD, Home Connect, MiSmartHome, Yeelight, ...

Prof. Dr. Peter Henning

#142
@RockFan: klar, set ZZZ_Dump. Wie schon geschrieben, war es etwas zu spät...

Ergebnis: Leider falsche Reihenfolge, die Sachen waren alle noch leer. Außerdem war, den Daten nach zu schließen, noch ein Programm aktiv und die Wäsche noch drin. Das ist auch so eine nette Eigenschaft der Schnittstelle: Wenn ein Programm aktiv ist, kann man nicht abfragen, welche Programme die Kiste kennt.

Wie wirr dieses ganze BSH Interface ist, sieht man in den Daten unter anderem daran, dass der "ProgramProgress", also der Prozentsatz des durchgelaufenen Programms, als "Option" auftaucht.

Es muss (derzeit noch) zuerst get settings ausgeführt werden, dann get programs. Und erst wenn ein Programm ausgewählt wurde, kann man dessen Options abfragen.


@Shadow3561: Ich habe jetzt endlich verstanden, woran das lag - die settings sind nämlich korrekterweise leer, wenn nur "Power Off" erlaubt ist... Sollte jetzt endgültig behoben sein.

LG

pah

Shadow3561

#143
Funktioniert.

Leider habe ich ein neues Problem.
Der GS hat eine Taste Favorit. Diese kann man individuell in der App mit Programmen belegen. Bei mir ist dort vorspülen drauf, da es bei uns öfter nötig ist.
Im Modul wird dann auch fein $hash->{programs} mit PreRinse belegt.
Jetzt starte ich den GS per Fernstart wenn die PV genug Leistung bringt mit "set GV startProgram".
Das klappt mit allen Programmen ausser Favorit, da dieses als PreRinse im hash hinterlegt ist.
Bis vor kurzem wurde es noch als Favorit.001 hinterlegt und es gab kein PreRinse.
Ich denke BSH hat dort was verändert.

Nur leider steht es in den readings incl. Prefix.

EDIT:
seit heute ist im tr_DoorState ein Fehler in den Umlauten.
Habe noch einmal die Version von gestern eingespielt, da passt es.

Prof. Dr. Peter Henning

#144
So, es gibt eine neue Version. Erstens beseitigt diese die ärgerliche Fehlermeldung, falls ein Gerät sofort und ohne vorherige Auswahl einer Verzögerung gestartet werden soll.

Zweitens kann man, wenn man ein User-Attribut extraPrograms mit "attr <device> userattr extraPrograms" anlegt und dieses mit experimentellen Programmnamen wie z.B. "att <device> extraPrograms Favorite.001" belegt, testweise den Aufruf weiterer (eventuell heruntergeladener) Programme ausprobieren.

Allerdings sieht es bisher so aus, dass Favoriten ebenso wie heruntergeladene Programme NUR über die App oder eventuell direkt am Gerät gestartet werden können - nicht über das API.

LG

pah


Shadow3561

#145
ZitatAllerdings sieht es bisher so aus, dass Favoriten ebenso wie heruntergeladene Programme NUR über die App oder eventuell direkt am Gerät gestartet werden können - nicht über das API.

Das trifft so zumindest nicht auf meine Maschine zu.
Die heruntergeladenen Programme lassen sich problemlos über FHEM starten. Nur die Favorit-Taste kann man nicht ansteuern.
Zu Erklärung:
Ist auf die Favorit-Taste ,,PreRinse" gelegt, kann man das Program PreRinse nur starten wenn man selectedProgram PreRinse ausführt.
Über selectedProgram Favorit.001 ist das starten jedoch nicht möglich.

Grüße,
Daniel

Prof. Dr. Peter Henning

Stimmt, hattest du ja im anderen Thread geschrieben.

LG

pah

DerTom71

Ich habe das Modul aus Post #144 probiert. Die Spühlmaschine funktioniert gut.
Mein Kühlschrank wird mit dem Modul nicht richtig erkannt. (In den Internals ist der prefix ohne Inhalt.)
[HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type
Der ZZZ_Dump:
Device KIF81HOD0 of type  has
settings: $VAR1 = {
          'SetpointTemperatureRefrigerator' => [
                                                 'Refrigeration.FridgeFreezer.Setting',
                                                 'Refrigeration.FridgeFreezer.Setting',
                                                 8,
                                                 "\x{c2}\x{b0}C"
                                               ],
          'SuperModeRefrigerator' => [
                                       'Refrigeration.FridgeFreezer.Setting',
                                       'Refrigeration.FridgeFreezer.Setting',
                                       bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
                                       undef
                                     ],
          'AssistantForceFridge' => [
                                      'Refrigeration.Common.Setting.Door',
                                      'Refrigeration.Common.EnumType.Door.AssistantForce.',
                                      'LowForce',
                                      undef
                                    ],
          'AssistantFridge' => [
                                 'Refrigeration.Common.Setting.Door',
                                 'Refrigeration.Common.Setting.Door',
                                 bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
                                 undef
                               ],
          'PowerState' => [
                            'BSH.Common.Setting',
                            'BSH.Common.EnumType.PowerState.',
                            'On',
                            undef
                          ]
        };

options: $VAR1 = undef;

transtable: $VAR1 = undef;

poweroff: $VAR1 = undef;



Prof. Dr. Peter Henning

Schau ich mir gerne an ... ab Dienstag wieder.

LG

pah

DerTom71

Nochmal zu meinem Kühlschrank: 3 meiner Geräte bekommen ein Prefix. Der Kühlschrank (KIF81HOD0) aber nicht. Das LOG nach einem FHEM-Neustart:
2024.04.12 22:17:01.929 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 609.
2024.04.12 22:17:01.929 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 610.
2024.04.12 22:17:01.929 1: PERL WARNING: Use of uninitialized value $type in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 636.
2024.04.12 22:17:01.929 1: PERL WARNING: Use of uninitialized value in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 654.
2024.04.12 22:17:01.929 1: PERL WARNING: Use of uninitialized value $type in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 666.
2024.04.12 22:17:01.929 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type
2024.04.12 22:17:01.930 1: PERL WARNING: Use of uninitialized value $type in hash element at ./FHEM/48_HomeConnect.pm line 667.
2024.04.12 22:17:01.930 1: PERL WARNING: Use of uninitialized value $availableSets in string ne at ./FHEM/48_HomeConnect.pm line 726.
2024.04.12 22:17:01.930 1: [HomeConnect] SBT8YC801E: set command: init
2024.04.12 22:17:01.930 1: PERL WARNING: Use of uninitialized value $availableSets in index at ./FHEM/48_HomeConnect.pm line 834.
2024.04.12 22:17:01.938 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type
2024.04.12 22:17:01.939 1: [HomeConnect_Set] HBG976MB1: no settings defined, replacing by default settings for type
2024.04.12 22:17:01.939 1: [HomeConnect] HBG976MB1: set command: init
2024.04.12 22:17:01.949 1: [HomeConnect_Set] HBG976MB1: no settings defined, replacing by default settings for type
2024.04.12 22:17:01.950 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type
2024.04.12 22:17:01.950 1: [HomeConnect] PXX895D66E: set command: init
2024.04.12 22:17:01.958 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type
2024.04.12 22:17:01.959 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type
2024.04.12 22:17:01.960 1: [HomeConnect] KIF81HOD0: set command: init
2024.04.12 22:17:01.967 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type
2024.04.12 22:17:01.991 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type
2024.04.12 22:17:02.008 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type
2024.04.12 22:17:02.012 1: [HomeConnect_Set] HBG976MB1: no settings defined, replacing by default settings for type
2024.04.12 22:17:02.022 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type
2024.04.12 22:17:02.370 1: [HomeConnect_ResponseInit] HBG976MB1: defined as HomeConnect Oven Bosch HBG976MB1
2024.04.12 22:17:02.435 1: [HomeConnect_ResponseInit] PXX895D66E: defined as HomeConnect Hob Bosch PXX895D66E
2024.04.12 22:17:02.439 1: [HomeConnect_GetPrograms] PXX895D66E: device in PowerState Off, cannot determine programs
2024.04.12 22:17:02.795 1: [HomeConnect_ResponseInit] SBT8YC801E: defined as HomeConnect Dishwasher Bosch SBT8YC801E
2024.04.12 22:17:02.799 1: [HomeConnect_GetPrograms] SBT8YC801E: device in PowerState Off, cannot determine programs
2024.04.12 22:17:02.813 1: [HomeConnect_ResponseInit] KIF81HOD0: defined as HomeConnect Refrigerator Bosch KIF81HOD0
2024.04.12 22:17:03.388 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 2055.
2024.04.12 22:17:03.393 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type Refrigerator
2024.04.12 22:17:03.394 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type Refrigerator
2024.04.12 22:17:03.394 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 1829.
2024.04.12 22:17:03.400 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type Refrigerator
2024.04.12 22:17:03.400 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type Refrigerator
2024.04.12 22:17:03.418 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 1398.
2024.04.12 22:17:03.424 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type Refrigerator
2024.04.12 22:17:03.424 1: [HomeConnect_Set] KIF81HOD0: no settings defined, replacing by default settings for type Refrigerator
2024.04.12 22:17:03.429 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 1529.
2024.04.12 22:17:03.429 1: [HomeConnect_ResponseGetPrograms] KIF81HOD0: no programs found
2024.04.12 22:17:04.258 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type Dishwasher
2024.04.12 22:17:04.258 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type Dishwasher
2024.04.12 22:17:04.264 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type Dishwasher
2024.04.12 22:17:04.265 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type Dishwasher
2024.04.12 22:17:04.273 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type Dishwasher
2024.04.12 22:17:04.273 1: [HomeConnect_Set] SBT8YC801E: no settings defined, replacing by default settings for type Dishwasher
2024.04.12 22:17:04.989 1: [HomeConnect_Set] HBG976MB1: no settings defined, replacing by default settings for type Oven
2024.04.12 22:17:04.991 1: [HomeConnect_Set] HBG976MB1: no settings defined, replacing by default settings for type Oven
2024.04.12 22:17:05.750 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type Hob
2024.04.12 22:17:05.752 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type Hob
2024.04.12 22:17:05.759 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type Hob
2024.04.12 22:17:05.759 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type Hob
2024.04.12 22:17:05.766 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type Hob
2024.04.12 22:17:05.767 1: [HomeConnect_Set] PXX895D66E: no settings defined, replacing by default settings for type Hob
2024.04.12 22:17:07.810 1: [HomeConnect_ReadEventChannel] SBT8YC801E: ProgramAborted = Present
2024.04.12 22:17:07.834 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 2344
.