2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-03-10 03:06:37 +00:00

38_netatmo.pm: 3 stations minimum for PUBLIC statistics

git-svn-id: https://svn.fhem.de/fhem/trunk@13582 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
moises 2017-03-02 21:59:42 +00:00
parent cea779c61d
commit ce9001e91e
2 changed files with 60 additions and 44 deletions

View File

@ -1,5 +1,6 @@
# Add changes at the top of the list. Keep it in ASCII, and 80-char wide.
# Do not insert empty lines here, update check depends on it.
- update: 38_netatmo.pm: 3 stations minimum for PUBLIC statistics
- update: 74_AMAD: new Version 2.6.11, add startDaydream and more media
commands
- update: 93_DbRep: V4.11.1, new options for timestamp_begin,timestamp_end

View File

@ -10,7 +10,7 @@
#
#
##############################################################################
# Release 07 / 2017-02-26
# Release 08 / 2017-03-02
package main;
@ -4403,6 +4403,8 @@ netatmo_parsePublic($$)
@readings_latitude = sort {$a <=> $b} @readings_latitude;
@readings_longitude = sort {$a <=> $b} @readings_longitude;
if(scalar(@readings_temperature) > 4)
{
for (my $i=0;$i<scalar(@readings_temperature)/10;$i++)
{
pop @readings_temperature;
@ -4412,6 +4414,9 @@ netatmo_parsePublic($$)
shift @readings_humidity;
shift @timestamps_temperature;
}
}
if(scalar(@readings_pressure) > 4)
{
for (my $i=0;$i<scalar(@readings_pressure)/10;$i++)
{
pop @readings_pressure;
@ -4419,7 +4424,10 @@ netatmo_parsePublic($$)
shift @readings_pressure;
shift @timestamps_pressure;
}
for (my $i=0;$i<scalar(@readings_rain)/25;$i++)
}
if(scalar(@readings_rain) > 4)
{
for (my $i=0;$i<scalar(@readings_rain)/20;$i++)
{
pop @readings_rain;
pop @readings_rain_1;
@ -4430,7 +4438,10 @@ netatmo_parsePublic($$)
shift @readings_rain_24;
shift @timestamps_rain;
}
for (my $i=0;$i<scalar(@readings_wind_strength)/50;$i++)
}
if(scalar(@readings_wind_strength) > 4)
{
for (my $i=0;$i<scalar(@readings_wind_strength)/25;$i++)
{
pop @readings_wind_strength;
pop @readings_gust_strength;
@ -4439,7 +4450,10 @@ netatmo_parsePublic($$)
shift @readings_gust_strength;
shift @timestamps_wind;
}
for (my $i=0;$i<2;$i++)
}
if(scalar(@readings_pressure) > 4)
{
for (my $i=0;$i<scalar(@readings_pressure)/20;$i++)
{
pop @readings_altitude;
pop @readings_latitude;
@ -4448,6 +4462,7 @@ netatmo_parsePublic($$)
shift @readings_latitude;
shift @readings_longitude;
}
}
my $avg_temperature = 0;
my $min_temperature = 100;
@ -4460,7 +4475,7 @@ netatmo_parsePublic($$)
}
my $avg_humidity = 0;
my $min_humidity = 100;
my $max_humidity = 0;
my $max_humidity = -100;
foreach my $val (@readings_humidity)
{
$avg_humidity += $val / scalar(@readings_humidity);
@ -4474,7 +4489,7 @@ netatmo_parsePublic($$)
}
my $avg_pressure = 0;
my $min_pressure = 2000;
my $max_pressure = 0;
my $max_pressure = -2000;
foreach my $val (@readings_pressure)
{
$avg_pressure += $val / scalar(@readings_pressure);
@ -4488,7 +4503,7 @@ netatmo_parsePublic($$)
}
my $avg_rain = 0;
my $min_rain = 1000;
my $max_rain = -10;
my $max_rain = -1000;
foreach my $val (@readings_rain)
{
$avg_rain += $val / scalar(@readings_rain);
@ -4497,7 +4512,7 @@ netatmo_parsePublic($$)
}
my $avg_rain_1 = 0;
my $min_rain_1 = 1000;
my $max_rain_1 = -10;
my $max_rain_1 = -1000;
foreach my $val (@readings_rain_1)
{
$avg_rain_1 += $val / scalar(@readings_rain_1);
@ -4506,7 +4521,7 @@ netatmo_parsePublic($$)
}
my $avg_rain_24 = 0;
my $min_rain_24 = 1000;
my $max_rain_24 = -10;
my $max_rain_24 = -1000;
foreach my $val (@readings_rain_24)
{
$avg_rain_24 += $val / scalar(@readings_rain_24);
@ -4521,7 +4536,7 @@ netatmo_parsePublic($$)
my $avg_wind = 0;
my $min_wind = 100;
my $max_wind = -10;
my $max_wind = -100;
foreach my $val (@readings_wind_strength)
{
$avg_wind += $val / scalar(@readings_wind_strength);
@ -4530,7 +4545,7 @@ netatmo_parsePublic($$)
}
my $avg_gust = 0;
my $min_gust = 100;
my $max_gust = -10;
my $max_gust = -100;
foreach my $val (@readings_gust_strength)
{
$avg_gust += $val / scalar(@readings_gust_strength);
@ -4569,7 +4584,7 @@ netatmo_parsePublic($$)
my $avg_altitude = 0;
my $min_altitude = 10000;
my $max_altitude = -1000;
my $max_altitude = -10000;
foreach my $val (@readings_altitude)
{
$avg_altitude += $val / scalar(@readings_altitude);