Log-File ERROR (controls_homeconnect.txt) und WARNING (Perl)

Begonnen von Sascha_F, 19 Januar 2020, 17:57:01

Vorheriges Thema - Nächstes Thema

Sascha_F

Hi zusammen,

zwei Dinge habe ich, bei denen ich mal eure Hilfe brauche:

1. FHEM-Log (ERROR):

FHEM::Meta::__GetUpdatedata: ERROR: Invalid datetime range in FHEM/controls_homeconnect.txt: UPD 2018-08-22_11:09:90 31134 FHEM/48_HomeConnect.pm

In der "controls_homeconnect.txt" ist der Timestamp für die 48_HomeConnect.pm falsch (UPD 2018-08-22_11:09:90 31134 FHEM/48_HomeConnect.pm)

Hatte ich im git schon mal als issue eröffnet - wurde ggf. übersehen --> ist doch aber sicher keine Absicht, nehme ich mal an.


2. FHEM-Log (WARNING):

PERL WARNING: Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^{ <-- HERE .*}$/ at ./FHEM/48_HomeConnectConnection.pm line 189, <$fh> line 6004.
PERL WARNING: Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^{ <-- HERE .*}$/ at ./FHEM/48_HomeConnectConnection.pm line 283, <$fh> line 6004.


Ich hab's versucht zu verstehen - auch mit vielen anderen Threads, aber irgendwie hänge ich da in der Luft...   "Unescaped left brace in regex is deprecated" gibt es ja schon länger. Aus den Threads meine ich herausgelesen zu haben, dass in der Vergangenheit schon viele Module angepasst werden mussten bzw. wurden. Ist hier auch etwas zu tun?


Ach ja: Warum sind die *.pm denn eigentlich nicht "in FHEM enthalten"? Ich dachte immer, dass neue Module nur nicht enthalten sind, bis sie die richtige 'Reife' haben - einen gewissen Reifegrad müssten sie doch aber mittlerweile besitzen, oder nicht?

Danke und viele Grüße
Sascha

crazyeddie

Hallo Sascha,

ich habe die beiden Textdateien von Hand angepasst, damit die Fehlermeldungen verschwinden - also Zeit auf 12:10:00 gesetzt und die beiden Klammern entfernt. Danach konnte ich FHEM auch erstmals mit Home Connect verbinden, wobei ich nicht weiß ob es daran oder an einem anderen Fehler lag - habe es lange nicht mehr probiert.

Gruß
crazyeddie

Sascha_F

Hi crazyeddie!

Das mit der Änderung der Zeit hatte ich auch schon im Kopf - dachte nur, dass es ggf. Sinn macht, die Datei selbst korrigiert bereit zu stellen. Aber das Interesse dafür scheint nicht so riesig zu sein --> oder außer uns beiden verwendet niemand Homeconnect^^

Du hast in der 48_HomeConnectConnection.pm einfach nur die Klammern gelöscht (also die nachfolgend rot markierten)?

[Zeile 189]
if( $data !~ m/^{.*}$/m ) {
Log3 $name, 2, "$name invalid json detected: >>$data<<";
return "Invalid get token response";
}

und

[Zeile 283]
if( $data !~ m/^{.*}$/m ) {
Log3 $name, 2, "$name: invalid json detected: >>$data<<";
} else {


Und: Nur gelöscht oder durch Leerzeichen ersetzt? Sorry, aber irgendwie komme ich in die Syntax nicht wirklich gut rein... :-/

Viele Grüße
Sascha

crazyeddie

Nein, ich habe nur die markierte linke Klammer gelöscht wie in der Fehlermeldung angezeigt, kein Leerzeichen gesetzt:

marked by <-- HERE in m/^{ <-- HERE .*}$/

Von der Syntax hab ich null Ahnung, hab nur gemacht was in der Fehlermeldung stand ;)

Sascha_F


swhome

Hallo, ich denke der korrekte Fix wäre ein backslash vor der geschweiften Klammer. Hab das mal entsprechend geändert.
Im Einsatz: FHEM auf Raspberry Pi mit 350 devices, hauptsächlich Homematic Wired und HM-Heizungsregler, dazu diverse Eigenbauten für Fussbodenheizung und LED Beleuchtung. Und jetzt mit Alexa!