98_vitoconnect.pm: installationID check at least length 2
git-svn-id: https://svn.fhem.de/fhem/trunk@29627 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
@@ -91,6 +91,7 @@ use FHEM::SynoModules::SMUtils qw (
|
|||||||
); # Hilfsroutinen Modul
|
); # Hilfsroutinen Modul
|
||||||
|
|
||||||
my %vNotesIntern = (
|
my %vNotesIntern = (
|
||||||
|
"0.7.0" => "06.02.2025 vitoconnect_installationID checked now for at least length 2, see https://forum.fhem.de/index.php?msg=1333072, error handling when setting attributs automatic introduced",
|
||||||
"0.6.3" => "04.02.2025 Small bug fixes, removed warnings",
|
"0.6.3" => "04.02.2025 Small bug fixes, removed warnings",
|
||||||
"0.6.2" => "28.01.2025 Very small bugfixes ",
|
"0.6.2" => "28.01.2025 Very small bugfixes ",
|
||||||
"0.6.1" => "28.01.2025 Rework of module documentation",
|
"0.6.1" => "28.01.2025 Rework of module documentation",
|
||||||
@@ -2691,15 +2692,15 @@ sub vitoconnect_Attr {
|
|||||||
# Zur Zeit kein prüfung, einfacher String
|
# Zur Zeit kein prüfung, einfacher String
|
||||||
if (length($attr_value) != 16) {
|
if (length($attr_value) != 16) {
|
||||||
my $err = "Invalid argument ".$attr_value." to ".$attr_name.". Must be 16 characters long.";
|
my $err = "Invalid argument ".$attr_value." to ".$attr_name.". Must be 16 characters long.";
|
||||||
Log(5,$name.", vitoconnect_Attr: ".$err);
|
Log(1,$name.", vitoconnect_Attr: ".$err);
|
||||||
return $err;
|
return $err;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elsif ($attr_name eq "vitoconnect_installationID") {
|
elsif ($attr_name eq "vitoconnect_installationID") {
|
||||||
# Zur Zeit kein prüfung, einfacher String
|
# Zur Zeit kein prüfung, einfacher String
|
||||||
if (length($attr_value) < 5) {
|
if (length($attr_value) < 2) {
|
||||||
my $err = "Invalid argument ".$attr_value." to ".$attr_name.". Must be at least 5 characters long.";
|
my $err = "Invalid argument ".$attr_value." to ".$attr_name.". Must be at least 2 characters long.";
|
||||||
Log(5,$name.", vitoconnect_Attr: ".$err);
|
Log(1,$name.", vitoconnect_Attr: ".$err);
|
||||||
return $err;
|
return $err;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3050,12 +3051,22 @@ sub vitoconnect_getGwCallback {
|
|||||||
return;
|
return;
|
||||||
} elsif ($num_devices == 1) {
|
} elsif ($num_devices == 1) {
|
||||||
readingsSingleUpdate($hash,"state","Genau ein Gateway/Device gefunden",1);
|
readingsSingleUpdate($hash,"state","Genau ein Gateway/Device gefunden",1);
|
||||||
|
|
||||||
my ($serial) = keys %devices;
|
my ($serial) = keys %devices;
|
||||||
my $installationId = $devices{$serial}->{installationId};
|
my $installationId = $devices{$serial}->{installationId};
|
||||||
Log3($name,4,$name." - getGW exactly one Device found set attr: instID: $installationId, serial $serial");
|
Log3($name,4,$name." - getGW exactly one Device found set attr: instID: $installationId, serial $serial");
|
||||||
CommandAttr (undef, "$name vitoconnect_installationID $installationId");
|
my $result;
|
||||||
CommandAttr (undef, "$name vitoconnect_serial $serial");
|
$result = CommandAttr (undef, "$name vitoconnect_installationID $installationId");
|
||||||
|
if ($result) {
|
||||||
|
Log3($name, 1, "Error setting vitoconnect_installationID: $result");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$result = CommandAttr (undef, "$name vitoconnect_serial $serial");
|
||||||
|
if ($result) {
|
||||||
|
Log3($name, 1, "Error setting vitoconnect_serial: $result");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Log3($name, 4, "Successfully set vitoconnect_serial and vitoconnect_installationID attributes for $name");
|
||||||
} else {
|
} else {
|
||||||
readingsSingleUpdate($hash,"state","Mehrere Gateways/Devices gefunden, bitte eines auswählen über selectDevice",1);
|
readingsSingleUpdate($hash,"state","Mehrere Gateways/Devices gefunden, bitte eines auswählen über selectDevice",1);
|
||||||
return;
|
return;
|
||||||
@@ -3656,7 +3667,7 @@ sub vitoconnect_action {
|
|||||||
}
|
}
|
||||||
else { # Befehl korrekt ausgeführt
|
else { # Befehl korrekt ausgeführt
|
||||||
readingsSingleUpdate($hash,"Aktion_Status","OK: ".$opt." ".$Text,1); # Reading 'Aktion_Status' setzen
|
readingsSingleUpdate($hash,"Aktion_Status","OK: ".$opt." ".$Text,1); # Reading 'Aktion_Status' setzen
|
||||||
# Log3($name,1,$name.",vitoconnect_action: set name:".$name." opt:".$opt." text:".$Text.", korrekt ausgefuehrt: ".$err." :: ".$msg); # TODO: Wieder weg machen $err
|
#Log3($name,1,$name.",vitoconnect_action: set name:".$name." opt:".$opt." text:".$Text.", korrekt ausgefuehrt: ".$err." :: ".$msg); # TODO: Wieder weg machen $err
|
||||||
Log3($name,3,$name.",vitoconnect_action: set name:".$name." opt:".$opt." text:".$Text.", korrekt ausgefuehrt");
|
Log3($name,3,$name.",vitoconnect_action: set name:".$name." opt:".$opt." text:".$Text.", korrekt ausgefuehrt");
|
||||||
|
|
||||||
# Spezial Readings update
|
# Spezial Readings update
|
||||||
@@ -3668,7 +3679,7 @@ sub vitoconnect_action {
|
|||||||
$Text = "1";
|
$Text = "1";
|
||||||
}
|
}
|
||||||
readingsSingleUpdate($hash,$opt,$Text,1); # Reading updaten
|
readingsSingleUpdate($hash,$opt,$Text,1); # Reading updaten
|
||||||
# Log3($name,1,$name.",vitoconnect_action: reading upd1 hash:".$hash." opt:".$opt." text:".$Text); # TODO: Wieder weg machen $err
|
#Log3($name,1,$name.",vitoconnect_action: reading upd1 hash:".$hash." opt:".$opt." text:".$Text); # TODO: Wieder weg machen $err
|
||||||
|
|
||||||
# Spezial Readings update, activate mit temperatur siehe brenner Vitoladens300C
|
# Spezial Readings update, activate mit temperatur siehe brenner Vitoladens300C
|
||||||
if ($feature =~ /(.*)\.deactivate/) {
|
if ($feature =~ /(.*)\.deactivate/) {
|
||||||
@@ -3678,7 +3689,7 @@ sub vitoconnect_action {
|
|||||||
$Text = "1";
|
$Text = "1";
|
||||||
}
|
}
|
||||||
readingsSingleUpdate($hash,$opt,$Text,1); # Reading updaten
|
readingsSingleUpdate($hash,$opt,$Text,1); # Reading updaten
|
||||||
# Log3($name,1,$name.",vitoconnect_action: reading upd2 hash:".$hash." opt:".$opt." text:".$Text); # TODO: Wieder weg machen $err
|
#Log3($name,1,$name.",vitoconnect_action: reading upd2 hash:".$hash." opt:".$opt." text:".$Text); # TODO: Wieder weg machen $err
|
||||||
|
|
||||||
|
|
||||||
Log3($name,4,$name.",vitoconnect_action: set feature:".$feature." data:".$data.", korrekt ausgefuehrt"); #4
|
Log3($name,4,$name.",vitoconnect_action: set feature:".$feature." data:".$data.", korrekt ausgefuehrt"); #4
|
||||||
|
|||||||
Reference in New Issue
Block a user