mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-21 01:46:08 +00:00
96_Snapcast.pm:fixed bug in max vol
git-svn-id: https://svn.fhem.de/fhem/trunk@13205 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
02109e7457
commit
7dc429fcd4
@ -614,19 +614,21 @@ sub Snapcast_getVolumeConstraint{
|
|||||||
|
|
||||||
foreach my $c (@constraints){
|
foreach my $c (@constraints){
|
||||||
my ($cname,$list)= split(/\|/,$c);
|
my ($cname,$list)= split(/\|/,$c);
|
||||||
|
Log3 $name,3,"SNAP cname: $cname, list: $list";
|
||||||
if($cname eq $phase){
|
if($cname eq $phase){
|
||||||
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time+86400);
|
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time+86400);
|
||||||
|
my $tomorrow=sprintf("%04d",1900+$year)."-".sprintf("%02d",$mon+1)."-".sprintf("%02d",$mday)." ";
|
||||||
$list =~ s/^\s+//; # get rid of whitespaces
|
$list =~ s/^\s+//; # get rid of whitespaces
|
||||||
$list =~ s/\s+$//;
|
$list =~ s/\s+$//;
|
||||||
my @listelements=split(" ", $list);
|
my @listelements=split(" ", $list);
|
||||||
my $mindiff=time_str2num("$mday-$mon-$year 24:00:00"); # initialize mindiff with the remaining lenght of the day
|
my $mindiff=time_str2num($tomorrow."23:59:00"); # eine Tageslänge
|
||||||
for(my $i=0;$i<@listelements/2;$i++){
|
for(my $i=0;$i<@listelements/2;$i++){
|
||||||
my $diff=abstime2rel($listelements[$i*2].":00"); # whats the time difference between now the time given in the definition
|
my $diff=abstime2rel($listelements[$i*2].":00"); # wie lange sind wir weg von der SChaltzeit?
|
||||||
if(time_str2num("$mday-$mon-$year ".$diff)<$mindiff){$mindiff=time_str2num($diff);$value=$listelements[1+($i*2)];} # we are looking for the entry with the shortest time difference
|
if(time_str2num($tomorrow.$diff)<$mindiff){$mindiff=time_str2num($tomorrow.$diff);$value=$listelements[1+($i*2)];} # wir suchen die kleinste relative Zeit
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Log3 $name,3,"Snapcast $name reducing volume to $value";
|
readingsSingleUpdate($hash,"maxvol",$value,1);
|
||||||
return $value; # der aktuelle Auto-Wert wird zurückgegeben
|
return $value; # der aktuelle Auto-Wert wird zurückgegeben
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user