2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-02-01 07:19:24 +00:00

10_CUL_HM: state handling for RT secondary channels

git-svn-id: https://svn.fhem.de/fhem/trunk@8475 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
martinp876 2015-04-25 09:45:03 +00:00
parent bce8d5964d
commit 0f4e4fce81
2 changed files with 10 additions and 10 deletions

View File

@ -6020,6 +6020,12 @@ sub CUL_HM_ID2PeerList ($$$) {
CUL_HM_UpdtReadSingle($hash,"state","peered",0); CUL_HM_UpdtReadSingle($hash,"state","peered",0);
} }
} }
elsif( ($md =~ m/HM-CC-RT-DN/ && $chn=~ m/(03|06)/)
||($md eq "HM-TC-IT-WM-W-EU" && $chn=~ m/(03|06)/)){
if (AttrVal($hash,"state","unpeered") eq "unpeered"){
CUL_HM_UpdtReadSingle($hash,"state","unknown",0);
}
}
} }
else{ else{
delete $hash->{READINGS}{peerList}; delete $hash->{READINGS}{peerList};
@ -7349,7 +7355,7 @@ sub CUL_HM_qEntity($$){ # add to queue
my $devN = CUL_HM_getDeviceName($name); my $devN = CUL_HM_getDeviceName($name);
return if (AttrVal($devN,"subType","") eq "virtual"); return if (AttrVal($devN,"subType","") eq "virtual");
return if ($defs{$devN}{helper}{q}{$q} eq "00"); #already requesting all $name = $devN if ($defs{$devN}{helper}{q}{$q} eq "00"); #already requesting all
if ($devN eq $name){#config for all device if ($devN eq $name){#config for all device
$defs{$devN}{helper}{q}{$q}="00"; $defs{$devN}{helper}{q}{$q}="00";
} }

View File

@ -1613,13 +1613,13 @@ sub HMinfo_loadConfig($@) {####################################################
$filter = "." if (!$filter); $filter = "." if (!$filter);
my $ret; my $ret;
open(aSave, "$fName") || return("Can't open $fName: $!"); open(rFile, "$fName") || return("Can't open $fName: $!");
my @el = (); my @el = ();
my @elincmpl = (); my @elincmpl = ();
my @entryNF = (); my @entryNF = ();
my %changes; my %changes;
my @rUpdate; my @rUpdate;
while(<aSave>){ while(<rFile>){
chomp; chomp;
my $line = $_; my $line = $_;
$line =~ s/\r//g; $line =~ s/\r//g;
@ -1670,7 +1670,7 @@ sub HMinfo_loadConfig($@) {####################################################
$defs{$eN}{READINGS}{$reg}{VAL} !~ m/00:00/); $defs{$eN}{READINGS}{$reg}{VAL} !~ m/00:00/);
} }
} }
close(aSave); close(rFile);
foreach my $eN (keys %changes){ foreach my $eN (keys %changes){
foreach my $reg (keys %{$changes{$eN}}){ foreach my $reg (keys %{$changes{$eN}}){
$defs{$eN}{READINGS}{$reg}{VAL} = $changes{$eN}{$reg}; $defs{$eN}{READINGS}{$reg}{VAL} = $changes{$eN}{$reg};
@ -1752,14 +1752,8 @@ sub HMinfo_saveConfig($) {#####################################################
my ($param) = @_; my ($param) = @_;
my ($id,$fN,$opt,$filter,$strict) = split ",",$param; my ($id,$fN,$opt,$filter,$strict) = split ",",$param;
$strict = "" if (!defined $strict); $strict = "" if (!defined $strict);
my @entities;
foreach my $dName (HMinfo_getEntities($opt."dv",$filter)){ foreach my $dName (HMinfo_getEntities($opt."dv",$filter)){
CUL_HM_Get($defs{$dName},$dName,"saveConfig",$fN,$strict); CUL_HM_Get($defs{$dName},$dName,"saveConfig",$fN,$strict);
push @entities,$dName;
foreach my $chnId (CUL_HM_getAssChnIds($dName)){
my $dName = CUL_HM_id2Name($chnId);
push @entities, $dName if($dName !~ m/_chn:/);
}
} }
HMinfo_purgeConfig($param) if (-e $fN && 200000 < -s $fN);# auto purge if file to big HMinfo_purgeConfig($param) if (-e $fN && 200000 < -s $fN);# auto purge if file to big
return $id; return $id;