Feature-Vorschlag für eventTypes

Begonnen von cwagner, 29 April 2014, 07:50:50

Vorheriges Thema - Nächstes Thema

cwagner

Das Modul eventTypes ist ohne Filterung durch einen RegEx ja ein echter Jäger und Sammler. Jedes Event, das im System zu erlauschen ist, wird gesammelt. Dafür schätze ich es sehr, weil es mir hilft, bei Filelogs oder bei anderen Modulen die echte Schreibweise eines von einem bestimmten Modul erzeugten Readings zu erkennen.
Aber natürlich gibt es auch ein Kommen und Gehen bei Modulen und Readings.

Mir fehlt bei eventTypes ein set <eventTypes> clear um im laufenden Betrieb die Sammlung zu "Nullen". "flush" schreibt den aktuellen Stand in die Datei eventTypes.txt. Get listet sie mir auf den Schirm und clear würde sie eben leeren.

Bisher kenne ich nur den Weg, FHEM zu stoppen, auf der Console die eventTypes.txt zu löschen und dann FHEM neu zu starten.

Liebe ich falsch?


Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

#2
Zitat von: cwagner am 29 April 2014, 07:50:50
Mir fehlt bei eventTypes ein set <eventTypes> clear um im laufenden Betrieb die Sammlung zu "Nullen". "flush" schreibt den aktuellen Stand in die Datei eventTypes.txt.

Was willst Du genau löschen? Den Inhalt der bestehenden Datei oder die Daten, die fhem aktuell im Speicher hält und irgendwann in die Datei schreiben würde?

Änderungswünsche für das Modul 91_eventTypes gehören laut Maintainer.txt übrigens (warum auch immer) in den Forumbereich "Frontends" und nicht in Anfängerfragen. Hier liest Rudi nur ganz selten.

FHEM/91_eventTypes.pm        rudolfkoenig         http://forum.fhem.de Frontends
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Änderungsvorschlag:


###################################
sub
eventTypes_Set($@)
{
  my ($hash, @a) = @_;
  return eventTypes_Shutdown($hash, $hash->{NAME}) if($a[1] eq "flush");
  return $modules{eventTypes}{ldata} = undef if($a[1] eq "clear");
  return "Unknown argument $a[1], choose one of flush:noArg clear:noArg";
}
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

#4
http://forum.fhem.de/index.php/topic,23024.0.html


Noch ein Tipp von mir: Wenn Du die Datei, in die eventTypes schreiben soll, mit der Endung .cfg (oder .holiday oder .layout) und im Verzeichnis ./FHEM anlegst, was an sich nicht viel Sinn macht, siehst Du die Datei unter "Edit Files" im Frontend und kannst sie dort sogar aus fhem heraus bearbeiten.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Die Änderung kommt morgen per regulärem fhem-update.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

cwagner

Hallo,  :),

das ging ja superschnell, hätte ich gar nicht mit gerechnet. Auch die anderen Vorschläge waren schon hilfreich, aber so ist es natürlich schlüssig und systemkonform, wie ich finde.

Vielen Dank für diese gute Tat im ausklingenden April!

Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

betateilchen

Zitat von: cwagner am 29 April 2014, 18:56:51
das ging ja superschnell, hätte ich gar nicht mit gerechnet.

ich auch nicht :)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!