00_HMUARTLGW Eventerzeugung "load"

Begonnen von fhemxperte, 11 Oktober 2017, 23:22:20

Vorheriges Thema - Nächstes Thema

fhemxperte

Moin zusammen,

ich habe mal eine Frage, warum wurde das Modul so geschrieben, dass das Reading "load" kein Event erzeugt? Hat das einen bestimmten Grund?

Ich habe die Zeile
readingsSingleUpdate($hash, "load", $load, 0);
für mich persönlich so geändert, dass ein Event erzeugt wird
readingsSingleUpdate($hash, "load", $load, 1);

Ich würde mich freuen, wenn dies eventuell angepasst werden könnte. Aktuell habe ich ein AT Device laufen, damit dieses ein userreading aktualisiert und dieses ein Event wirft. Finde ich relativ umständlich.

Würde mich freuen eine Antwort zu bekommen (im Developer Bereich durfte ich leider nichts posten).

Gruß,
Micha

nils_

Zitat von: fhemxperte am 11 Oktober 2017, 23:22:20
Würde mich freuen eine Antwort zu bekommen (im Developer Bereich durfte ich leider nichts posten).

dann wäre es vermutlich noch besser im für das Modul vorgesehenen Bereich zu posten :)
(da schaut vermutlich der modulauthor eher vorbei)


siehe https://svn.fhem.de/trac/browser/trunk/fhem/MAINTAINER.txt
FHEM/00_HMUARTLGW.pm         mgernoth             HomeMatic


du kannst diesen beitrag auch dorthin verschieben.
viele Wege in FHEM es gibt!

Wetterhexe

mir würde ein load event aktuell auch sehr helfen ... bin gerade auf der Suche nach unerklärlich hohen IO Lasten.
Für den Moment behelfe ich mir mit der lokalen Änderung die Micha gepostet hat.

LG, Tina

fhemxperte

Ich habe mir einen Workaround gebaut, der die Zeile in der Datei automatisiert nach jedem Update (egal ob geändert oder nicht) fixed:

in die myUtils:

sub sshCommand($$) {
my($devicename,$befehl) = @_;
Log 3, $devicename.": Execute shell command [".$befehl."]";
my ($result) = `$befehl`;
}


ein Notify erstellen:

# Fix modules after update
define N_AfterUpdateFixModules notify global:UPDATE {\
sshCommand($SELF,"sed -i -- 's/readingsSingleUpdate(\$hash, \"load\", \$load, 0)/readingsSingleUpdate(\$hash, \"load\", \$load, 1)/g' /opt/fhem/FHEM/00_HMUARTLGW.pm");;\
\
}
attr N_AfterUpdateFixModules DbLogExclude .*
attr N_AfterUpdateFixModules devStateIcon inactive:ios-off:active .*:ios-on-green:inactive
attr N_AfterUpdateFixModules group Systemstart
attr N_AfterUpdateFixModules icon system_fhem
attr N_AfterUpdateFixModules room 9_9_System


eventuell benötigt das ja auch noch irgendjemand.

mgernoth

#4
Hallo,

Zitat von: fhemxperte am 11 Oktober 2017, 23:22:20
ich habe mal eine Frage, warum wurde das Modul so geschrieben, dass das Reading "load" kein Event erzeugt? Hat das einen bestimmten Grund?

Ja, das erzeugt im Normalfall zuviel unnötige Last auf den Systemen.
Ich werde mal überlegen, das per Attribut konfigurierbar zu machen.

EDIT: Ab morgen gibts dann ein "loadEvents"-Attribut, mit dem die Events aktiviert werden können.

Viele Grüße
  Michael

fhemxperte