diff --git a/73_AMADCommBridge.pm b/73_AMADCommBridge.pm index 4ea7e1e..29d1778 100644 --- a/73_AMADCommBridge.pm +++ b/73_AMADCommBridge.pm @@ -544,19 +544,27 @@ sub AMADCommBridge_Open($) { my $port = $hash->{PORT}; - # Oeffnen des TCP Sockets - my $ret = TcpServer_Open( $hash, $port, "global" ); + if( not defined($hash->{FD}) and (! $hash->{FD}) ) { + # Oeffnen des TCP Sockets + my $ret = TcpServer_Open( $hash, $port, "global" ); - if( $ret && !$init_done ) { + if( $ret && !$init_done ) { - Log3 $name, 3, "AMADCommBridge ($name) - $ret. Exiting."; - exit(1); + Log3 $name, 3, "AMADCommBridge ($name) - $ret. Exiting."; + exit(1); + } + + readingsSingleUpdate ( $hash, "state", "opened", 1 ) if( defined($hash->{FD}) ); + Log3 $name, 3, "AMADCommBridge ($name) - Socket opened."; + + return $ret; + + } else { + + Log3 $name, 3, "AMADCommBridge ($name) - Socket already opened"; } - readingsSingleUpdate ( $hash, "state", "opened", 1 ) if( defined($hash->{FD}) ); - Log3 $name, 3, "AMADCommBridge ($name) - Socket opened."; - - return $ret; + return; } sub AMADCommBridge_Close($) { diff --git a/74_AMADDevice.pm b/74_AMADDevice.pm index 7f33100..b73f9f6 100644 --- a/74_AMADDevice.pm +++ b/74_AMADDevice.pm @@ -902,7 +902,7 @@ sub AMADDevice_decrypt($) {

@@ -916,7 +916,7 @@ sub AMADDevice_decrypt($) {

Beispiel:
In diesem Fall wird ein AMADDevice von Hand angelegt. Die AMAD_ID, hier 123456, muß auch exakt so als globale Variable in Automagic eingetragen sein.