From 2d4f7e4f7c57ca71d0b7b84bce65e88f5f408000 Mon Sep 17 00:00:00 2001 From: markusbloch Date: Wed, 13 Feb 2013 22:02:53 +0000 Subject: [PATCH] fixing dead PRESENCE devices in case of a broken network connection when disabled git-svn-id: https://svn.fhem.de/fhem/trunk@2720 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/73_PRESENCE.pm | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/fhem/FHEM/73_PRESENCE.pm b/fhem/FHEM/73_PRESENCE.pm index bb6e9f729..251659687 100755 --- a/fhem/FHEM/73_PRESENCE.pm +++ b/fhem/FHEM/73_PRESENCE.pm @@ -196,9 +196,16 @@ PRESENCE_Attr(@) if($a[3] eq "0") { $hash->{helper}{DISABLED} = 0; - if(defined($hash->{FD})) + if(defined($hash->{DeviceName})) { - PRESENCE_DoInit($hash); + if(defined($hash->{FD})) + { + PRESENCE_DoInit($hash); + } + else + { + DevIo_OpenDev($hash, 0, "PRESENCE_DoInit"); + } } else { @@ -223,9 +230,16 @@ PRESENCE_Attr(@) elsif($a[0] eq "del" && $a[2] eq "disable") { $hash->{helper}{DISABLED} = 0; - if(defined($hash->{FD})) + if(defined($hash->{DeviceName})) { - PRESENCE_DoInit($hash); + if(defined($hash->{FD})) + { + PRESENCE_DoInit($hash); + } + else + { + DevIo_OpenDev($hash, 0, "PRESENCE_DoInit"); + } } else {