Ergonomische Version von 48_HomeConnect.pm

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

Vorheriges Thema - Nächstes Thema

87insane

Hey zusammen,

den Fehler habe ich bei meiner Spülmaschine auch.

Anbei aber mal ein devStateIcon für eine Spülmaschine:
{
my $ownstate = ReadingsVal($name,'state','ERR');
my $program = ReadingsVal($name,'tr_State2','ERR');
my $propercent = ReadingsVal($name,'ProgramProgress','ERR');
my $doorstate = ReadingsVal($name,'tr_DoorState','ERR');
my $pic = $ownstate =~ m,Run,
? 'scene_dishwasher@red'
: 'scene_dishwasher';
my $text = $ownstate =~ m,Run,
? "($propercent)"
: $doorstate eq "Tür offen"
? "$doorstate"
: "$ownstate";
my $text2 = $ownstate =~ m,Run,
? "$program"
: "";
"<div><a href=\"/fhem?cmd.dummy=set $name toggle&XHR=1\"></a>".FW_makeImage($pic)."
$text $text2
</div>"
}

Ich persönlich finde die kleine Übersicht innerhalb von FHEM ganz angenehm.


Was mir noch aufgefallen ist, ich habe einen Kochfeld, eine Spülmaschine und einen Backofen der Homeconnect kann.
Normal konnte ich alles schalten. In der hier gebotenen Version kann ich das nicht mehr. Ich habe weiter oben gelesen, dass die Befehle "verworfen" werden. Ggf kann ich etwas testen oder unterstützen? Wenn ja, bitte kurz melden und Info, was ich machen soll/testen soll.

Da ich diese Version vorhin erst aktiviert habe, habe ich bisher nur ein devStateIcon. Würde aber bei Bedarf, für die bei mir vorhandenen Geräte, noch welche nachliefern.

Gruß,
87Insane

Prof. Dr. Peter Henning

Die "kleine Übersicht" habe ich auch. Für die Spülmaschine sieht das so aus:

1. Attribut stateFormat setzen auf {my $open=ReadingsVal("SN55ZS49CE","tr_DoorState","");
sprintf("<p align=\"left\">\n%s\n<br/>%s\n%s</p>",
ReadingsVal("SN55ZS49CE","state",""),ReadingsVal("SN55ZS49CE","tr_State1",""),
(($open=~/offen/)?"<br/>".$open:""))}

2. Attribut devStateIcon setzen auf Offline:scene_dishwasher@red Aborting:scene_dishwasher@yellow Inactive:scene_dishwasher@black Ready:scene_dishwasher@blue Delayed.*:scene_dishwasher_delay@green Run.*:scene_dishwasher@green
Das resultiert in einer komfortablen zwei- bis dreizeiligen Anzeige, in welcher die erste Zeile ein eingefärbtes Icon ist, die zweite Zeile den Zustand darstellt. Und die dritte Zeile erscheint, wenn die Tür offen ist.

Dem entsprechend für die Waschmaschine:
1. {my $open=ReadingsVal("WAV28G43","tr_DoorState","");
sprintf("<p align=\"left\">\n%s\n<br/>%s\n%s</p>",
ReadingsVal("WAV28G43","state",""),ReadingsVal("WAV28G43","tr_State1",""),
(($open=~/offen/)?"<br/>".$open:""))}

2.Offline:scene_washing_machine@red Aborting:scene_washing_machine@yellow
Inactive:scene_washing_machine@black Finished:scene_washing_machine@orange
Ready:scene_washing_machine@blue Delayed.*:scene_washing_machine_delay@green
Run.*:scene_washing_machine@green

So, aber jetzt zur interessanten Frage: Schalten von Kochfeld und Backofen ? Den Backofen kann ich zwar mit dieser unsäglichen werbeverseuchten App einschalten, wenn der Schalter am Backofen entsprechend steht - aber nicht mit dem HomeConnect-Modul (übrigens auch nicht mit der Originalversion). Mit dem Modul funktioniert lediglich das Setzen das Setzen des Alarmtimers.

Und das Kochfeld kann ich auch mit der App nicht aus der Ferne steuern, das ist laut Angaben von BSH auch nicht vorgesehen - nachvollziehbare Sicherheitsbedenken. Und da wir in Deutschland leben, wo man gerne andere Menschen erzieht: Nein, das dürfte ich auch dann nicht, wenn ich BSH von allen Haftungsgründen befreien würde. Was aber immerhin funktioniert (und das auch mit dem Modul), ist das setzen des Alarmtimers.

Also, ganz ernsthafte Frage: Du konnest wirklich Backofen und Kochfeld steuern???

LG

pah

87insane

Füge doch bitte ein Bild deines devStateIcons an, das macht die Wahl einfacher für den Benutzer.

Also um das mal aufzudröseln:
Backofen: Hier kann ich alles über die App steuern und das geht über die leider hässlichen setter auch mit dem normalen Modul für Homeconnect.
Kochfeld: Ein fernstarte ist in DE nicht erlaubt und ging auch nicht. Danach geht aber alles. Also z.B. Zone xy hoch/runter regeln oder Bratsensor aktivieren usw. Am Kochfeld meine ich aber dies bestätigen zu müssen bei einigen Optionen.

Wie gesagt, teste ich auch gerne. Ich muss nur Instruktionen haben :)

Ggf. ist das auch eine Herstellerfrage. Meine Geräte sind alle von NEFF.
PS: Ich nutze die original App auf einem Android Gerät und bei mir ist die Werbung nur im unteren Teil auf der Startseite. Danach ist da keine Werbung.

Gruß,
87Insane

Prof. Dr. Peter Henning

#63
Du darfst diesen Dateianhang nicht ansehen.
Werbung: Nicht nur auf der Startseite, sondern auch im Menü unten

Das mit dem Steuern scheint tatsächlich eine Frage des Herstellers zu sein  >:(

OK, muss jetzt in die Vorlesung, ich bleibe dran.


LG

pah

87insane

#64
Kann ich etwas beisteuern? Die o.g. Geräte stehen mir zur Verfügung und ich könnte das ein oder andere testen...

PS: Woher kommen bei dir die Icons für .*_delay?

Prof. Dr. Peter Henning

#65
Icons: Selbst gemacht. Habe ich weiter unten auch gepostet.

Edit: So, ich habe mal versucht, das Thema mit den fehlenden Settings in den Griff zu bekommen. BSH möchte ja, dass man die Fähigkeiten jedes Gerätes erst abfragt, bevor man etwas steuert. OK, prima - aber ein paar Defaults sollten in jedem Falle da sein. Teste das gerade noch, wird dann hier publiziert.

LG

pah

RockFan

Hallo pah,

Danke für die Mühen für die vielen Änderungen hier!

Nachdem ich endlich mein Problem mit dem Login lösen konnte (Kein set LoginNecessary nach Logout) bin ich jetzt auch dabei unseren Siemens Wäschetrockner umzustellen.

Leider bekomme ich einige Fehlermeldungen im Log:

2023.05.14 14:12:17 4: myHomeConnectConnection: request /api/homeappliances
2023.05.14 14:12:17 4: myHomeConnectConnection: no token refresh needed
2023.05.14 14:12:17 4: myHomeConnectConnection: requestAfterToken https://api.home-connect.com/api/homeappliances
2023.05.14 14:12:18 4: myHomeConnectConnection: response {
  "data": {
    "homeappliances": [{
      "brand": "Siemens",
      "connected": true,
      "enumber": "WT7YH701/02",
      "haId": "SIEMENS-WT7YH701-68A40E11A618",
      "name": "Trockner",
      "type": "Dryer",
      "vib": "WT7YH701"
    }]
  }
}
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 529.
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 530.
Use of uninitialized value $type in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 556.
Use of uninitialized value in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 574.
2023.05.14 14:12:43 1: [HomeConnect_Set] WT7YH701: no settings defined, please execute Get WT7YH701 Settings

Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 529.
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 530.
Use of uninitialized value $type in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 556.
Use of uninitialized value in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 574.
2023.05.14 14:12:53 1: [HomeConnect_Set] WT7YH701: no settings defined, please execute Get WT7YH701 Settings
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 529.
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 530.
Use of uninitialized value $type in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 556.
Use of uninitialized value in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 574.
2023.05.14 14:12:53 1: [HomeConnect_Set] WT7YH701: no settings defined, please execute Get WT7YH701 Settings
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 529.
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 530.
Use of uninitialized value $type in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 556.
Use of uninitialized value in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 574.
2023.05.14 14:13:02 1: [HomeConnect_Set] WT7YH701: no settings defined, please execute Get WT7YH701 Settings
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 529.
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 530.
Use of uninitialized value $type in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 556.
Use of uninitialized value in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 574.
2023.05.14 14:13:02 1: [HomeConnect_Set] WT7YH701: no settings defined, please execute Get WT7YH701 Settings
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 529.
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 530.
Use of uninitialized value $type in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 556.
Use of uninitialized value in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 574.
2023.05.14 14:13:02 1: [HomeConnect_Set] WT7YH701: no settings defined, please execute Get WT7YH701 Settings
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 529.
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 530.
Use of uninitialized value $type in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 556.
Use of uninitialized value in pattern match (m//) at ./FHEM/48_HomeConnect.pm line 574.
2023.05.14 14:13:02 1: [HomeConnect_Set] WT7YH701: no settings defined, please execute Get WT7YH701 Settings

Wenn ich get Settings aufrufe, bringt das leider wenig.

Weitere etwas abweichende Logeinträge:

2023.05.14 14:14:40 1: [HomeConnect_DDtoHash] WT7YH701: setting device dependent things
Use of uninitialized value $type in hash element at ./FHEM/48_HomeConnect.pm line 451.
Use of uninitialized value $type in hash element at ./FHEM/48_HomeConnect.pm line 453.
Use of uninitialized value $type in hash element at ./FHEM/48_HomeConnect.pm line 460.
Use of uninitialized value $type in hash element at ./FHEM/48_HomeConnect.pm line 463.
Use of uninitialized value in concatenation (.) or string at ./FHEM/48_HomeConnect.pm line 1454.

Ich verwende Version 1.0beta2. Das sollte die aktuellste Version sein oder liege ich falsch?

Was läuft bei mir anders/verkehrt?


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

Nun, einen Wäschetrockner hatten wir bisher noch nicht im Test...

OK, die Sache mit den Settings habe ich inzwischen im Griff - wenn gar keine vorhanden sind, werden Defaults genommen.Es ist zwar von BSH nett gedacht, dass man alle Daten immer erst vom gerät holen soll - aber deren Cloud ist so instabil, dass man sich darauf eben nicht verlassen kann.

Ich kann derzeit noch nicht sagen, ob ich noch in der kommenden Woche eine neue Beta-Version schaffe. Wenn nicht, sieht es für die beiden folgenden Wochen düster aus: Erst LEARNTEC, dann 1 Woche Urlaub.

Also drückt die Daumen, dass ich in dieser Woche nicht zu viele nervige Termine wahrnehmen muss...

LG

pah

RockFan

Danke für die schnelle Antwort.
Keine Hektik :)

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, ...