From a2eae603f8466a5ab46b51dfa7ef9aa0d9cd64a7 Mon Sep 17 00:00:00 2001 From: herrmannj <> Date: Wed, 2 Sep 2020 19:37:55 +0000 Subject: [PATCH] 00_Schellenberg.pm: timer improved git-svn-id: https://svn.fhem.de/fhem/trunk@22716 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/00_Schellenberg.pm | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/fhem/FHEM/00_Schellenberg.pm b/fhem/FHEM/00_Schellenberg.pm index acfec8461..9f8744fb0 100644 --- a/fhem/FHEM/00_Schellenberg.pm +++ b/fhem/FHEM/00_Schellenberg.pm @@ -129,6 +129,8 @@ sub Schellenberg_Init { sub Schellenberg_Undef { my ($hash) = @_; + + RemoveInternalTimer($hash, \&SSchellenberg_ResetPairTimer); DevIo_CloseDev($hash); return undef; }; @@ -143,21 +145,24 @@ sub Schellenberg_Set { } elsif ($cmd eq 'pair') { my $t = $args[0] || 60; return 'missing time (seconds)' if ($t !~ m/[0-9]+/); - - my sub resetPairTimer { - delete $hash->{'PAIRING'}; - return; - }; $hash->{'PAIRING'} = 1; - InternalTimer(Time::HiRes::time() + $t, \&resetPairTimer, {}); + InternalTimer(Time::HiRes::time() + $t, \&Schellenberg_ResetPairTimer, $hash); }; return; }; +sub Schellenberg_ResetPairTimer { + my ($hash) = @_; + + delete $hash->{'PAIRING'}; + return; +}; + sub Schellenberg_Ready { - my ($hash) = @_; - return DevIo_OpenDev($hash, 1, "Schellenberg_Init"); + my ($hash) = @_; + + return DevIo_OpenDev($hash, 1, "Schellenberg_Init"); };