diff --git a/FHEM/11_OWDevice.pm b/FHEM/11_OWDevice.pm index c270e2ffd..f3e2ab2b7 100644 --- a/FHEM/11_OWDevice.pm +++ b/FHEM/11_OWDevice.pm @@ -565,8 +565,18 @@ OWDevice_Set($@) OWDevice_WriteValue($hash,$cmdname,$value); readingsSingleUpdate($hash,$cmdname,$value,1); return undef; + } elsif ($cmdname eq "interval") { + return "Wrong interval format: Only digits are allowed!" + if($value !~ m/^\d+$/); + if($value == $hash->{fhem}{interval}) { + return "new interval is equal to old interval."; + } else { + RemoveInternalTimer($hash); + $hash->{fhem}{interval}= $value; + InternalTimer(int(gettimeofday())+$hash->{fhem}{interval}, "OWDevice_UpdateValues", $hash, 0) + } } else { - return "Unknown argument $cmdname, choose one of " . join(" ", @setters); + return "Unknown argument $cmdname, choose one of interval " . join(" ", @setters); } } @@ -741,16 +751,21 @@ OWDevice_Define($$) Set