diff --git a/73_GardenaSmartBridge.pm b/73_GardenaSmartBridge.pm index 188b382..b92cd24 100644 --- a/73_GardenaSmartBridge.pm +++ b/73_GardenaSmartBridge.pm @@ -64,7 +64,7 @@ eval "use JSON;1" or $missingModul .= "JSON "; ###todo Hier fehlt noch Modulabfrage für ssl -my $version = "0.0.22"; +my $version = "0.0.25"; @@ -149,6 +149,7 @@ sub GardenaSmartBridge_Define($$) { $attr{$name}{room} = "GardenaSmart" if( !defined( $attr{$name}{room} ) ); readingsSingleUpdate($hash,'state','initialized',1); + readingsSingleUpdate($hash,'token','none',1); Log3 $name, 3, "GardenaSmartBridge ($name) - defined GardenaSmartBridge and crypt your credentials"; @@ -371,6 +372,7 @@ sub GardenaSmartBridge_ResponseProcessing($$) { GardenaSmartBridge_Write($hash,undef,undef,undef); Log3 $name, 3, "GardenaSmartBridge ($name) - fetch locations id"; + readingsSingleUpdate($hash,'token',$hash->{helper}{session_id},1); return; diff --git a/74_GardenaSmartDevice.pm b/74_GardenaSmartDevice.pm index 05355f2..90d05b6 100644 --- a/74_GardenaSmartDevice.pm +++ b/74_GardenaSmartDevice.pm @@ -62,7 +62,7 @@ eval "use Encode qw(encode encode_utf8 decode_utf8);1" or $missingModul .= "Enco eval "use JSON;1" or $missingModul .= "JSON "; -my $version = "0.0.22"; +my $version = "0.0.25"; @@ -153,6 +153,7 @@ sub GardenaSmartDevice_Define($$) { $attr{$name}{model} = $category if( not defined( $attr{$name}{model} ) ); Log3 $name, 3, "GardenaSmartDevice ($name) - defined GardenaSmartDevice with DEVICEID: $deviceId"; + readingsSingleUpdate($hash,'state','initialized',1); $modules{GardenaSmartDevice}{defptr}{$deviceId} = $hash; @@ -305,6 +306,12 @@ sub GardenaSmartDevice_WriteReadings($$) { $abilities--; } while ($abilities >= 0); + + readingsBulkUpdateIfChanged($hash,'state',ReadingsVal($name,'mower-status','readingsValError')) if( AttrVal($name,'model','unknown') eq 'mower' ); + readingsBulkUpdateIfChanged($hash,'state',(ReadingsVal($name,'outlet-valve_open','readingsValError') == 1 ? "open" : "closed")) if( AttrVal($name,'model','unknown') eq 'watering_computer' ); + + readingsBulkUpdateIfChanged($hash,'state','T: ' . ReadingsVal($name,'ambient_temperature-temperature','readingsValError') . '°C, H: ' . ReadingsVal($name,'humidity-humidity','readingsValError') . '%, Light: ' . ReadingsVal($name,'ambient_temperature-temperature','readingsValError') . 'lux') if( AttrVal($name,'model','unknown') eq 'sensor' ); + readingsEndUpdate( $hash, 1 ); Log3 $name, 4, "GardenaSmartDevice ($name) - readings was written}";