Compare commits

..

3 Commits
2.1 ... master

Author SHA1 Message Date
be340b36d4 README.md aktualisiert
doku for define updated
2025-04-07 07:29:18 +00:00
265f0d4ffa define check improved - homeID in define removed 2025-04-07 09:25:31 +02:00
f0697c82f7 README.md aktualisiert
homeID beim define nicht mehr benötigt / verwendet -> entfernt
2025-04-07 07:04:55 +00:00
2 changed files with 19 additions and 23 deletions

View File

@ -1,5 +1,5 @@
#===============================================================================
# $Id: 98_TadoAPI.pm 107 2025-03-10 06:15:20Z psycho160 $
# $Id: 98_TadoAPI.pm 107 2025-04-07 06:15:20Z psycho160 $
#
# FILE: 98_TadoAPI.pm
# - for oauth2 (2025)
@ -87,9 +87,8 @@ sub TadoAPI_Init {
my $def = shift;
my @args = split( "[ \t][ \t]*", $def );
my $u =
"wrong syntax: define <name> TadoAPI <device_code>";
my $u = "wrong syntax: define <name> TadoAPI <device_code>";
return $u if ( int(@args) < 2 );
return;
}
@ -103,18 +102,19 @@ sub TadoAPI_Define {
my $type = shift @a;
my $tokenFileName = $tokenFile . "_" . $name;
my ( $user, $homeID ) = @a;
my ( $dev_code ) = @a;
Log3 $name, 3, "TadoAPI_Define $name: called ";
defined $user ? ($hash->{STATE} = "defined") : ($hash->{DEF} = "no_device_code_set");
my $u = "wrong define syntax: define <name> TadoAPI";
return $u if ( int(@a) > 1 );
defined $dev_code ? ($hash->{STATE} = "defined") : ($hash->{DEF} = "no_device_code_set");
# Initialize the device
return $@ unless ( FHEM::Meta::SetInternals($hash) );
$hash->{TOKEN_FILE} = $tokenFileName;
$hash->{TADO_USER} = $user;
my @args = ($homeID);
$hash->{TADO_DEV_CODE} = $dev_code;
if ($main::init_done) {
@ -122,7 +122,7 @@ sub TadoAPI_Define {
return TadoAPI_Catch($@) if $@;
}
if ( defined($user) && $user ne "no_device_code_set" ) {
if ( defined($dev_code) && $dev_code ne "no_device_code_set" ) {
TadoAPI_CheckStatus($hash);
TadoAPI_NewTokenRequest($hash);
@ -130,15 +130,11 @@ sub TadoAPI_Define {
RemoveInternalTimer($hash);
InternalTimer( gettimeofday() + 15, "TadoAPI_Update", $hash, 0 );
if ( defined($homeID) && $homeID ne "" ) {
$attr{$name}{homeID} = $homeID;
}
else {
my $id = TadoAPI_GetHomeId($hash);
if ( defined($id) && $id ne "" ) {
$attr{$name}{homeID} = $id;
}
my $id = TadoAPI_GetHomeId($hash);
if ( defined($id) && $id ne "" ) {
$attr{$name}{homeID} = $id;
}
}
else {
$hash->{STATE} = "no_device_code_set";
@ -517,7 +513,7 @@ sub TadoAPI_RegisterNewDevice {
sub TadoAPI_NewTokenRequest {
my $hash = shift;
my $name = $hash->{NAME};
my $device_code = $hash->{TADO_USER};
my $device_code = $hash->{TADO_DEV_CODE};
my $tokenFileName = $tokenFile . "_" . $name;
my $Token = undef;

View File

@ -40,13 +40,10 @@ Für Fragen / Anliegen bin ich im FHEM-Forum (https://forum.fhem.de/index.php/to
In FHEM wird das Modul mit folgenden Schritten definiert:
Wenn man noch keinen `device_code` hat
Wenn man noch keinen `device_code` hat (Standard)
* `define <name> TadoAPI`
sonst kann man ihn gleich mitgeben mit:
`define <name> TadoAPI [<device_code>] [<homeID>]`
### Wichtig: Device einrichten
@ -57,6 +54,9 @@ Danach muss man das FHEM Device bei tado registrieren. ->
* `device_code` beim DEF in FHEM einfügen
* Fertig
Optional: Wenn man schon einen Device Code hat, kann man ihn gleich mitgeben mit:
`define <name> TadoAPI <device_code>`
<img src="https://git.wolfmajer.at/Public/FHEM-Tado/raw/branch/master/doc/define.png" width="500" />