all events with same timestamp

performance improvement?
This commit is contained in:
Philipp Wo 2019-12-10 18:07:41 +01:00
parent 505de090f2
commit 91dc626e4c
1 changed files with 2 additions and 5 deletions

View File

@ -766,6 +766,7 @@ sub TadoAPI_UpdateAllZoneReadingsCallback($){
Log3 $name, 3, "TadoAPI $name" . ": " . "UpdateAllZonesCallback: Error in decoded data, Code: " . $decoded_data->{'errors'}->[0]->{'code'} if (exists($decoded_data->{'errors'}->[0]->{'code'}));
$hash->{LastRequest}="error";
}else{
readingsBeginUpdate($hash);
foreach my $zone ( @$decoded_data ){
my $zoneid = $zone->{'id'};
Log3 $name, 5, "TadoAPI $name" . ": " . "Set Reading Update for Zone $zoneid ";
@ -773,24 +774,20 @@ sub TadoAPI_UpdateAllZoneReadingsCallback($){
my ($temperature, $humidity, $desiredTemp, $currentHeatingPower, $overlay, $zoneName ) = TadoAPI_GetZoneReadingsById($hash, $zoneid);
# updates zone readings
readingsBeginUpdate($hash);
readingsBulkUpdate($hash, "Temperatur_" . $zoneName, $temperature);
readingsBulkUpdate($hash, "Luftfeuchtigkeit_" . $zoneName, $humidity);
readingsBulkUpdate($hash, "Heizleistung_" . $zoneName, $currentHeatingPower);
readingsBulkUpdate($hash, "OverlayType_" . $zoneName, $overlay);
readingsBulkUpdate($hash, "DesiredTemp_" . $zoneName, $desiredTemp);
readingsEndUpdate( $hash, 0 );
# iterate through all devices in zone
my $devices = $zone->{'devices'};
foreach my $device ( @$devices ){
readingsBeginUpdate($hash);
readingsBulkUpdate($hash, "Battery_" . $device->{'serialNo'}, $device->{'batteryState'});
readingsEndUpdate( $hash, 1 );
$hash->{LastRequest}="OK";
}
}
readingsEndUpdate( $hash, 1 );
}
my $zonecount = TadoAPI_GetZoneCount($hash);
readingsBeginUpdate($hash);