Hallo,
anbei ein kurzer Patch, damit in der Datenbank auch für das FBDECT Device die Felder Value und Unit passend gefüllt werden. Wäre schön wenn das noch jemand testen und ggf. mit in 93_DbLog.pm übernehmen könnte.
(Aufpassen muss dann natürlich jeder, der den Werte heute erst in der Definition im gplot File trennt ...)
--- 93_DbLog.pm 2014-01-19 12:29:46.634855787 +0100
+++ 93_DbLog.pm.CHANGED 2014-01-19 12:28:20.067574173 +0100
@@ -159,6 +159,14 @@
}
}
+ # FBDECT
+ elsif (($type eq "FBDECT")) {
+ if ( $value=~/([\.\d]+)\s([a-z])/i ) {
+ $value = $1;
+ $unit = $2;
+ }
+ }
+
# MAX
elsif(($type eq "MAX")) {
$unit= "°C" if(lc($reading) =~ m/temp/);
Vielleicht sollte man das ganze noch etwas generischer lösen, statt wie heute jedes Device einzeln zu behandeln oder habe ich da was missverstanden?!
Gruß
Jan
eingecheckt
Funktioniert, bei energy macht er aus Wh jedoch anscheinend W.
Zitat von: Markus M. am 26 Januar 2014, 22:15:35
Funktioniert, bei energy macht er aus Wh jedoch anscheinend W.
Ersetze mal bitte im Modul die 3Zeile von oben durch folgendes:
if ( $value=~/([\.\d]+)\s([a-z]+)/i ) {
Funktioniert es jetzt?
Da hab ich wohl nicht genau genug hingeschaut, die RegEx trifft nur einen Buchstaben nach dem Whitespace richtig. Das Plus nach der Buchstabengruppe sollte dann solange zuschlagen bis kein Buchstabe mehr kommt. Eventuell sollten noch die Anker für Anfang und Ende des Strings mit rein, also:
if ( $value=~/^([\.\d]+)\s([a-z]+)$/i ) {
Dann hätte die RegEx im Zweifel gar nicht gegriffen.
Bei mir liefert 93_DbLog seit dem heutigen Update keine Daten mehr fürs Plotten. Wenn ich die Version davor einspiele, funktioniert alles wie gehabt.
Hat das irgendwas mit Euren Basteleien hier zu tun?
Hallo Betateilchen,
mit dieser Bastelei im speziellen kann es meiner Meinung nach nichts zu tun haben, wenn ich mir die aktuelle SVN Version und ihren Vorgänger mal anschaue, dann haben aber noch wesentlich mehr Änderungen am Modul stattgefunden ;-)
Um zumindest meinen marginalen Patch als Fehlerquelle auszuschließen, kannst du ihn ja mal auf die zuletzt funktionierende Version (hab den Diff auf Version vom 2014-01-19) anwenden (ggf. das Plus in der RegEx noch ergänzen).
Gruß
Jan
keine Sorge, hat nix mit Deinem Patch zu tun ;)
Zum DbLog-Problem seit dem Update generell gibts ja schon einen anderen Thread, ich bin nicht der Einzige, der es bemerkt hat.