mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-22 08:11:44 +00:00
LUXTRONIK: docu
git-svn-id: https://svn.fhem.de/fhem/trunk@7396 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
008f064789
commit
8223ff2242
@ -251,24 +251,25 @@ LUXTRONIK2_Set($$@)
|
|||||||
# LUXTRONIK2_Log $hash, 3, $resultStr;
|
# LUXTRONIK2_Log $hash, 3, $resultStr;
|
||||||
return $resultStr;
|
return $resultStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
elsif($cmd eq 'INTERVAL' && int(@_)==4 ) {
|
elsif($cmd eq 'INTERVAL' && int(@_)==4 ) {
|
||||||
$val = 30 if( $val < 30 );
|
$val = 30 if( $val < 30 );
|
||||||
$hash->{INTERVAL}=$val;
|
$hash->{INTERVAL}=$val;
|
||||||
return "Polling interval set to $val seconds.";
|
return "Polling interval set to $val seconds.";
|
||||||
}
|
}
|
||||||
|
|
||||||
elsif($cmd eq 'activeTariff' && int(@_)==4 ) {
|
elsif($cmd eq 'activeTariff' && int(@_)==4 ) {
|
||||||
$val = 0 if( $val < 1 || $val > 9 );
|
$val = 0 if( $val < 1 || $val > 9 );
|
||||||
readingsSingleUpdate($hash,"activeTariff",$val, 1);
|
readingsSingleUpdate($hash,"activeTariff",$val, 1);
|
||||||
$hash->{LOCAL} = 1;
|
$hash->{LOCAL} = 1;
|
||||||
LUXTRONIK2_GetUpdate($hash);
|
LUXTRONIK2_GetUpdate($hash);
|
||||||
$hash->{LOCAL} = 0;
|
$hash->{LOCAL} = 0;
|
||||||
return "$name: activeTariff set to $val.";
|
Log3 $name, 3, "LUXTRONIK2: set $name $cmd $val";
|
||||||
|
return undef;
|
||||||
}
|
}
|
||||||
|
|
||||||
#Check Firmware and Set-Paramter-lock
|
#Check Firmware and Set-Parameter-lock
|
||||||
if ($cmd eq 'synchronizeClockHeatPump' ||
|
if ( $cmd =~ /^(synchronizeClockHeatPump|hotWaterTemperatureTarget|opModeHotWater)$/i )
|
||||||
$cmd eq 'hotWaterTemperatureTarget' ||
|
|
||||||
$cmd eq 'opModeHotWater')
|
|
||||||
{
|
{
|
||||||
my $firmware = ReadingsVal($name,"firmware","");
|
my $firmware = ReadingsVal($name,"firmware","");
|
||||||
my $firmwareCheck = LUXTRONIK2_checkFirmware($firmware);
|
my $firmwareCheck = LUXTRONIK2_checkFirmware($firmware);
|
||||||
@ -294,10 +295,12 @@ LUXTRONIK2_Set($$@)
|
|||||||
$hash->{LOCAL} = 0;
|
$hash->{LOCAL} = 0;
|
||||||
LUXTRONIK2_Log $name, 3, $resultStr;
|
LUXTRONIK2_Log $name, 3, $resultStr;
|
||||||
return $resultStr;
|
return $resultStr;
|
||||||
|
|
||||||
} elsif(int(@_)==4 &&
|
} elsif(int(@_)==4 &&
|
||||||
($cmd eq 'hotWaterTemperatureTarget'
|
($cmd eq 'hotWaterTemperatureTarget'
|
||||||
|| $cmd eq 'opModeHotWater'
|
|| $cmd eq 'opModeHotWater'
|
||||||
|| $cmd eq 'returnTemperatureSetBack')) {
|
|| $cmd eq 'returnTemperatureSetBack')) {
|
||||||
|
Log3 $name, 3, "LUXTRONIK2: set $name $cmd $val";
|
||||||
$hash->{LOCAL} = 1;
|
$hash->{LOCAL} = 1;
|
||||||
$resultStr = LUXTRONIK2_SetParameter ($hash, $cmd, $val);
|
$resultStr = LUXTRONIK2_SetParameter ($hash, $cmd, $val);
|
||||||
$hash->{LOCAL} = 0;
|
$hash->{LOCAL} = 0;
|
||||||
@ -1087,7 +1090,9 @@ LUXTRONIK2_SetParameter($$$)
|
|||||||
if(AttrVal($name, "allowSetParameter", 0) != 1) {
|
if(AttrVal($name, "allowSetParameter", 0) != 1) {
|
||||||
return $name." Error: Setting of parameters not allowed. Please set attribut 'allowSetParameter' to 1";
|
return $name." Error: Setting of parameters not allowed. Please set attribut 'allowSetParameter' to 1";
|
||||||
}
|
}
|
||||||
if ($parameterName eq "hotWaterTemperatureTarget") {
|
|
||||||
|
if ($parameterName eq "hotWaterTemperatureTarget")
|
||||||
|
{
|
||||||
#parameter number
|
#parameter number
|
||||||
$setParameter = 2;
|
$setParameter = 2;
|
||||||
#limit temperature range
|
#limit temperature range
|
||||||
@ -1097,14 +1102,18 @@ LUXTRONIK2_SetParameter($$$)
|
|||||||
$setValue = int($realValue * 2) * 5;
|
$setValue = int($realValue * 2) * 5;
|
||||||
$realValue = $setValue / 10;
|
$realValue = $setValue / 10;
|
||||||
}
|
}
|
||||||
elsif ($parameterName eq "opModeHotWater") {
|
|
||||||
|
elsif ($parameterName eq "opModeHotWater")
|
||||||
|
{
|
||||||
if (! exists($opMode{$realValue})) {
|
if (! exists($opMode{$realValue})) {
|
||||||
return "$name Error: Wrong parameter given for opModeHotWater, use Automatik,Party,Off"
|
return "$name Error: Wrong parameter given for opModeHotWater, use Automatik,Party,Off"
|
||||||
}
|
}
|
||||||
$setParameter = 4;
|
$setParameter = 4;
|
||||||
$setValue = $opMode{$realValue};
|
$setValue = $opMode{$realValue};
|
||||||
}
|
}
|
||||||
elsif ($parameterName eq "returnTemperatureSetBack") {
|
|
||||||
|
elsif ($parameterName eq "returnTemperatureSetBack")
|
||||||
|
{
|
||||||
#parameter number
|
#parameter number
|
||||||
$setParameter = 1;
|
$setParameter = 1;
|
||||||
#limit temperature range
|
#limit temperature range
|
||||||
@ -1114,7 +1123,8 @@ LUXTRONIK2_SetParameter($$$)
|
|||||||
$setValue = int($realValue * 2) * 5;
|
$setValue = int($realValue * 2) * 5;
|
||||||
$realValue = $setValue / 10;
|
$realValue = $setValue / 10;
|
||||||
}
|
}
|
||||||
else {
|
else
|
||||||
|
{
|
||||||
return "$name LUXTRONIK2_SetParameter-Error: unknown parameter $parameterName";
|
return "$name LUXTRONIK2_SetParameter-Error: unknown parameter $parameterName";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1162,7 +1172,7 @@ LUXTRONIK2_SetParameter($$$)
|
|||||||
|
|
||||||
readingsSingleUpdate($hash,$parameterName,$realValue,1);
|
readingsSingleUpdate($hash,$parameterName,$realValue,1);
|
||||||
|
|
||||||
return "$name: Parameter $parameterName set to $realValue";
|
return undef;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -245,20 +245,21 @@ JSONMETER_Set($$@)
|
|||||||
my ($hash, $name, $cmd, $val) = @_;
|
my ($hash, $name, $cmd, $val) = @_;
|
||||||
my $resultStr = "";
|
my $resultStr = "";
|
||||||
|
|
||||||
if($cmd eq 'statusRequest') {
|
if(lc $cmd eq 'update') {
|
||||||
$hash->{LOCAL} = 1;
|
$hash->{LOCAL} = 1;
|
||||||
JSONMETER_GetUpdate($hash);
|
JSONMETER_GetUpdate($hash);
|
||||||
$hash->{LOCAL} = 0;
|
$hash->{LOCAL} = 0;
|
||||||
return undef;
|
return undef;
|
||||||
}
|
}
|
||||||
elsif($cmd eq 'restartJsonAnalysis') {
|
elsif(lc $cmd eq 'restartjsonanalysis') {
|
||||||
$hash->{fhem}{jsonInterpreter} = "";
|
$hash->{fhem}{jsonInterpreter} = "";
|
||||||
$hash->{LOCAL} = 1;
|
$hash->{LOCAL} = 1;
|
||||||
JSONMETER_GetUpdate($hash);
|
JSONMETER_GetUpdate($hash);
|
||||||
$hash->{LOCAL} = 0;
|
$hash->{LOCAL} = 0;
|
||||||
|
Log3 $name, 3, "JSONMETER: set $name $cmd";
|
||||||
return undef;
|
return undef;
|
||||||
}
|
}
|
||||||
elsif ($cmd eq 'resetStatistics') {
|
elsif (lc $cmd eq 'resetstatistics') {
|
||||||
if ($val =~ /all|statElectricityConsumed\.\.\.|statElectricityConsumedTariff\.\.\.|statElectricityPower\.\.\./) {
|
if ($val =~ /all|statElectricityConsumed\.\.\.|statElectricityConsumedTariff\.\.\.|statElectricityPower\.\.\./) {
|
||||||
my $regExp;
|
my $regExp;
|
||||||
if ($val eq "all") { $regExp = "stat"; }
|
if ($val eq "all") { $regExp = "stat"; }
|
||||||
@ -273,20 +274,22 @@ JSONMETER_Set($$@)
|
|||||||
WriteStatefile();
|
WriteStatefile();
|
||||||
return $resultStr;
|
return $resultStr;
|
||||||
}
|
}
|
||||||
elsif($cmd eq 'INTERVAL' && int(@_)==4 ) {
|
elsif(lc $cmd eq 'interval' && int(@_)==4 ) {
|
||||||
$val = 10 if( $val < 10 );
|
$val = 10 if( $val < 10 );
|
||||||
$hash->{INTERVAL}=$val;
|
$hash->{INTERVAL}=$val;
|
||||||
return "$name: Polling interval set to $val seconds.";
|
Log3 $name, 3, "JSONMETER: set $name $cmd $val";
|
||||||
|
return undef;
|
||||||
}
|
}
|
||||||
elsif($cmd eq 'activeTariff' && int(@_)==4 ) {
|
elsif(lc $cmd eq 'activetariff' && int(@_)==4 ) {
|
||||||
$val = 0 if( $val < 1 || $val > 9 );
|
$val = 0 if( $val < 1 || $val > 9 );
|
||||||
readingsSingleUpdate($hash,"activeTariff",$val, 1);
|
readingsSingleUpdate($hash,"activeTariff",$val, 1);
|
||||||
$hash->{LOCAL} = 1;
|
$hash->{LOCAL} = 1;
|
||||||
JSONMETER_GetUpdate($hash);
|
JSONMETER_GetUpdate($hash);
|
||||||
$hash->{LOCAL} = 0;
|
$hash->{LOCAL} = 0;
|
||||||
return "$name: activeTariff set to $val.";
|
Log3 $name, 3, "JSONMETER: set $name $cmd $val";
|
||||||
|
return undef;
|
||||||
}
|
}
|
||||||
my $list = "statusRequest:noArg"
|
my $list = "update:noArg"
|
||||||
." activeTariff:0,1,2,3,4,5,6,7,8,9"
|
." activeTariff:0,1,2,3,4,5,6,7,8,9"
|
||||||
." resetStatistics:all,statElectricityConsumed...,statElectricityConsumedTariff...,statElectricityPower..."
|
." resetStatistics:all,statElectricityConsumed...,statElectricityConsumedTariff...,statElectricityPower..."
|
||||||
." restartJsonAnalysis:noArg"
|
." restartJsonAnalysis:noArg"
|
||||||
|
@ -925,8 +925,10 @@ sub statistics_doStatisticDurationSingle ($$$$$$)
|
|||||||
# Store current reading as last reading, Reset current reading
|
# Store current reading as last reading, Reset current reading
|
||||||
if ($saveLast) {
|
if ($saveLast) {
|
||||||
readingsBulkUpdate($dev, $statReadingName . "Last", $result, 1);
|
readingsBulkUpdate($dev, $statReadingName . "Last", $result, 1);
|
||||||
statistics_Log $hash, 5, "Set '".$statReadingName . "Last = $result'";
|
statistics_Log $hash, 4, "Set '".$statReadingName . "Last = $result'";
|
||||||
$result = "$state: 00:00:00 ".$state."_Count: 1";
|
$result = $state.": 00:00:00 ".$state."_Count: 1";
|
||||||
|
$hidden{$state.":"} = 0;
|
||||||
|
$hidden{$state."_Count:"} = 1;
|
||||||
$hidden{"showDate:"} = 0;
|
$hidden{"showDate:"} = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user