Autor Thema: patch um event-on-change-reading um einen threshold zu erweitern  (Gelesen 10096 mal)

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4647
    • tech_LogBuch
Antw:patch um event-on-change-reading um einen threshold zu erweitern
« Antwort #30 am: 08 Juni 2014, 11:59:22 »
ich sehe die jetzige Lösung als ein (akzeptabler) Kompromis.
Nicht ganz sauber, wenn man aus einem Elfenbeinturm runter schaut ;)
Aber auch sehr nützlich.
Also was wäre denn besser?
Gar nichts machen? Sicher nicht...
X-mal in jedem einzelnen Device/Modul implementieren? Das ist noch 'dreckiger'...
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17230
  • s/fhem\.cfg/configDB/g
Antw:patch um event-on-change-reading um einen threshold zu erweitern
« Antwort #31 am: 08 Juni 2014, 12:07:46 »
Ich hatte Zweifel, daher hab ich (höflich) gefragt. Am Ende bin ich aber eher bestätigt:
...
again: das macht den Kohl nicht fett, aber um den Ball dann auch zurückzuspielen, da gibt es größere Baustellen.

*unterschreib*

(und es gibt wichtigere Baustellen, bei denen sich Änderungen wirklich "lohnen" würden!)
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Lesen gefährdet die Unwissenheit!

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 20744
Antw:patch um event-on-change-reading um einen threshold zu erweitern
« Antwort #32 am: 03 November 2014, 19:40:42 »
hallo rudi,

du hattest in meinen ursprünglichen patch noch ein zeile eingebaut die den value auf zahlen beschränkt:$value =~ s/[^\d\.\-]//g; # We expect only numbers here.dies führt in manchen per versionen dazu das $1 aus der regex davor die den threshold wert extrahiert zurück gesetzt wird und der threshold nicht greift.

der folgende kleine patch behebt das problem:--- fhem.pl 2014-11-03 19:32:14.000000000 +0100
+++ fhem.pl 2014-11-03 19:32:22.000000000 +0100
@@ -3653,12 +3653,13 @@
     my $threshold_reached = 1;
     if( $eocr
         && $eocrv[0] =~ m/.*:(.*)/ ) {
+      my $threshold = $1;
 
       $value =~ s/[^\d\.\-]//g; # We expect only numbers here.
       my $last_value = $hash->{".attreocr-threshold$reading"};
       if( !defined($last_value) ) {
         $hash->{".attreocr-threshold$reading"} = $value;
-      } elsif( abs($value-$last_value) < $1 ) {
+      } elsif( abs($value-$last_value) < $threshold ) {
         $threshold_reached = 0;
       } else {
         $hash->{".attreocr-threshold$reading"} = $value;

da würde einige anwender glücklich machen :)
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 24243
Antw:patch um event-on-change-reading um einen threshold zu erweitern
« Antwort #33 am: 03 November 2014, 23:25:31 »
Na dann will ich mal nicht im Weg stehen: habs eingecheckt.