all events with same timestamp
performance improvement?
This commit is contained in:
parent
505de090f2
commit
91dc626e4c
@ -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'}));
|
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";
|
$hash->{LastRequest}="error";
|
||||||
}else{
|
}else{
|
||||||
|
readingsBeginUpdate($hash);
|
||||||
foreach my $zone ( @$decoded_data ){
|
foreach my $zone ( @$decoded_data ){
|
||||||
my $zoneid = $zone->{'id'};
|
my $zoneid = $zone->{'id'};
|
||||||
Log3 $name, 5, "TadoAPI $name" . ": " . "Set Reading Update for Zone $zoneid ";
|
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);
|
my ($temperature, $humidity, $desiredTemp, $currentHeatingPower, $overlay, $zoneName ) = TadoAPI_GetZoneReadingsById($hash, $zoneid);
|
||||||
|
|
||||||
# updates zone readings
|
# updates zone readings
|
||||||
readingsBeginUpdate($hash);
|
|
||||||
readingsBulkUpdate($hash, "Temperatur_" . $zoneName, $temperature);
|
readingsBulkUpdate($hash, "Temperatur_" . $zoneName, $temperature);
|
||||||
readingsBulkUpdate($hash, "Luftfeuchtigkeit_" . $zoneName, $humidity);
|
readingsBulkUpdate($hash, "Luftfeuchtigkeit_" . $zoneName, $humidity);
|
||||||
readingsBulkUpdate($hash, "Heizleistung_" . $zoneName, $currentHeatingPower);
|
readingsBulkUpdate($hash, "Heizleistung_" . $zoneName, $currentHeatingPower);
|
||||||
readingsBulkUpdate($hash, "OverlayType_" . $zoneName, $overlay);
|
readingsBulkUpdate($hash, "OverlayType_" . $zoneName, $overlay);
|
||||||
readingsBulkUpdate($hash, "DesiredTemp_" . $zoneName, $desiredTemp);
|
readingsBulkUpdate($hash, "DesiredTemp_" . $zoneName, $desiredTemp);
|
||||||
readingsEndUpdate( $hash, 0 );
|
|
||||||
|
|
||||||
# iterate through all devices in zone
|
# iterate through all devices in zone
|
||||||
my $devices = $zone->{'devices'};
|
my $devices = $zone->{'devices'};
|
||||||
foreach my $device ( @$devices ){
|
foreach my $device ( @$devices ){
|
||||||
readingsBeginUpdate($hash);
|
|
||||||
readingsBulkUpdate($hash, "Battery_" . $device->{'serialNo'}, $device->{'batteryState'});
|
readingsBulkUpdate($hash, "Battery_" . $device->{'serialNo'}, $device->{'batteryState'});
|
||||||
readingsEndUpdate( $hash, 1 );
|
|
||||||
$hash->{LastRequest}="OK";
|
$hash->{LastRequest}="OK";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
readingsEndUpdate( $hash, 1 );
|
||||||
}
|
}
|
||||||
my $zonecount = TadoAPI_GetZoneCount($hash);
|
my $zonecount = TadoAPI_GetZoneCount($hash);
|
||||||
readingsBeginUpdate($hash);
|
readingsBeginUpdate($hash);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user