2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-04-20 13:26:02 +00:00

FBAHAHTTP: allow rename of FBAHAHTTP device without manual fic (Forum #58064)

git-svn-id: https://svn.fhem.de/fhem/trunk@12520 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
rudolfkoenig 2016-11-07 09:41:47 +00:00
parent 570cb91579
commit 2a3bed339f
2 changed files with 28 additions and 0 deletions

View File

@ -18,6 +18,7 @@ FBAHAHTTP_Initialize($)
$hash->{SetFn} = "FBAHAHTTP_Set";
$hash->{AttrFn} = "FBAHAHTTP_Attr";
$hash->{ReadyFn} = "FBAHAHTTP_Ready";
$hash->{RenameFn} = "FBAHAHTTP_RenameFn";
$hash->{AttrList} = "dummy:1,0 fritzbox-user polltime async_delay ".
"disable:0,1 disabledForIntervals";
}
@ -89,6 +90,19 @@ FBAHAHTTP_connect($)
return undef;
}
sub
FBAHAHTTP_RenameFn($$)
{
my ($new, $old) = @_;
for my $d (devspec2array("TYPE=FBDECT")) {
my $hash = $defs{$d};
next if(!$hash);
$hash->{DEF} =~ s/^$old:/$new:/;
$attr{$d}{IODev} = $new if(AttrVal($d,"IODev","") eq $old);
}
FBDECT_renameIoDev($new, $old);
}
#####################################
sub
FBAHAHTTP_Poll($)

View File

@ -281,6 +281,20 @@ FBDECT_ParseHttp($$$)
return $hash->{NAME};
}
sub
FBDECT_renameIoDev($$) # Called from FBAHAHTTP
{
my ($new, $old) = @_;
my $dp = $modules{FBDECT}{defptr};
for my $ok (keys %{$dp}) {
my $nk = $ok;
$nk =~ s/^$old:/$new:/;
next if($nk eq $ok);
$dp->{$nk} = $dp->{$ok};
delete $dp->{$ok};
}
}
###################################
sub
FBDECT_Parse($$@)