block access to the api if no password set

This commit is contained in:
Philipp Wo 2019-11-23 20:22:41 +01:00
parent 773da536ca
commit 841eebaa69
1 changed files with 23 additions and 0 deletions

View File

@ -134,6 +134,8 @@ sub TadoAPI_Define($$)
$attr{$name}{homeID} = $id;
}
}
}else{
$hash->{STATE}="no password set";
}
return undef;
}
@ -155,6 +157,18 @@ sub TadoAPI_Set(@) {
return "Unknown argument $a[1], choose one of " . join(" ", @cmds);
}
if (($cmd ne "password"))
{
my $pwd = TadoAPI_readPassword($name);
unless (defined $pwd)
{
$message = "Error: no tado password set. Please define it with 'set $name password Your_tado_Password'";
Log3 $name,2,"$name, $message";
$hash->{STATE}="no password set";
return $message;
}
}
if( $cmd eq 'setGeo' ) {
return "Need at least two parameters (mobileID, Setting)" if(@a < 4);
if( $a[3] eq "on" ) {
@ -245,6 +259,15 @@ sub TadoAPI_Get(@) {
return "Unknown argument $a[1], choose one of " . join(" ", @cmds);
}
my $pwd = TadoAPI_readPassword($name);
unless (defined $pwd)
{
$message = "Error: no tado password set. Please define it with 'set $name password Your_tado_Password'";
Log3 $name,2,"$name, $message";
$hash->{STATE}="no password set";
return $message;
}
if($cmd =~ /\Qget\E/) {
COMMAND_HANDLER: {