mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-27 10:37:13 +00:00
correct templist handling
git-svn-id: https://svn.fhem.de/fhem/trunk@5298 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
be947f5bad
commit
6f76fb4cb8
@ -3710,7 +3710,7 @@ sub CUL_HM_Set($@) {#+++++++++++++++++ set command+++++++++++++++++++++++++++++
|
|||||||
Log3 $name,2,"CUL_HM fwUpdate started for $name";
|
Log3 $name,2,"CUL_HM fwUpdate started for $name";
|
||||||
CUL_HM_SndCmd($hash, sprintf("%02X",$modules{CUL_HM}{helper}{updateNbr})
|
CUL_HM_SndCmd($hash, sprintf("%02X",$modules{CUL_HM}{helper}{updateNbr})
|
||||||
."3011$id${dst}CA");
|
."3011$id${dst}CA");
|
||||||
# InternalTimer(gettimeofday()+0.3,"CUL_HM_FWupdateSim",$dst.$id."00",0);
|
#InternalTimer(gettimeofday()+0.3,"CUL_HM_FWupdateSim",$dst."00000000",0);
|
||||||
}
|
}
|
||||||
elsif($cmd eq "postEvent") { ################################################
|
elsif($cmd eq "postEvent") { ################################################
|
||||||
my (undef,undef,$cond) = @a;
|
my (undef,undef,$cond) = @a;
|
||||||
@ -4680,6 +4680,7 @@ sub CUL_HM_FWupdateSteps($){#steps for FW update
|
|||||||
$modules{CUL_HM}{helper}{updateStep}++;
|
$modules{CUL_HM}{helper}{updateStep}++;
|
||||||
$modules{CUL_HM}{helper}{updateNbr} = $mNo;
|
$modules{CUL_HM}{helper}{updateNbr} = $mNo;
|
||||||
RemoveInternalTimer("fail:notInBootLoader");
|
RemoveInternalTimer("fail:notInBootLoader");
|
||||||
|
#InternalTimer(gettimeofday()+0.3,"CUL_HM_FWupdateSim","${dst}${id}00",0);
|
||||||
InternalTimer(gettimeofday()+5,"CUL_HM_FWupdateEnd","fail:SpeedChangeFailed",0);
|
InternalTimer(gettimeofday()+5,"CUL_HM_FWupdateEnd","fail:SpeedChangeFailed",0);
|
||||||
}
|
}
|
||||||
else{# check response - start programming
|
else{# check response - start programming
|
||||||
@ -4750,7 +4751,13 @@ sub CUL_HM_FWupdateSim($){#end FW Simulation
|
|||||||
my $msg = shift;
|
my $msg = shift;
|
||||||
my $ioName = $defs{$modules{CUL_HM}{helper}{updatingName}}->{IODev}->{NAME};
|
my $ioName = $defs{$modules{CUL_HM}{helper}{updatingName}}->{IODev}->{NAME};
|
||||||
my $mNo = sprintf("%02X",$modules{CUL_HM}{helper}{updateNbr});
|
my $mNo = sprintf("%02X",$modules{CUL_HM}{helper}{updateNbr});
|
||||||
CUL_HM_Parse($defs{$ioName},"A00${mNo}8002$msg");
|
if (0 == $modules{CUL_HM}{helper}{updateStep}){
|
||||||
|
CUL_HM_Parse($defs{$ioName},"A00${mNo}0010$msg");
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
Log3 "",5,"FWupdate simulate No:$mNo";
|
||||||
|
CUL_HM_Parse($defs{$ioName},"A00${mNo}8002$msg");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -523,14 +523,14 @@ sub HMinfo_tempList(@) { ######################################################
|
|||||||
}
|
}
|
||||||
push @elAll,@el;
|
push @elAll,@el;
|
||||||
}
|
}
|
||||||
elsif(@el && $_ =~ m/tempList(P[123])?[SMFWT].*\>/){
|
elsif(@el && $_ =~ m/R_(P[123])?_?._tempList[SMFWT].*\>/){
|
||||||
my ($tln,$val) = ($1,$2)if($_ =~ m/(.*)>(.*)/);
|
my ($tln,$val) = ($1,$2)if($_ =~ m/(.*)>(.*)/);
|
||||||
$tln =~ s/ //g;
|
$tln =~ s/ //g;
|
||||||
$val =~ s/ //g;
|
$val =~ s/ //g;
|
||||||
foreach my $eN(@el){
|
foreach my $eN(@el){
|
||||||
my $valR = ReadingsVal($eN,$tln,"");
|
my $valR = ReadingsVal($eN,$tln,"");
|
||||||
$valR =~ s/ //g;
|
$valR =~ s/ //g;
|
||||||
push @entryFail,$eN." :".$tln if ($valR ne $val);
|
push (@entryFail,$eN." :".$tln) if ($valR ne $val);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -547,8 +547,8 @@ sub HMinfo_tempList(@) { ######################################################
|
|||||||
my @exec = ();
|
my @exec = ();
|
||||||
while(<aSave>){
|
while(<aSave>){
|
||||||
chomp;
|
chomp;
|
||||||
if($_ =~ m/^entities:/){
|
my $line = $_;
|
||||||
my $line = $_;
|
if($line =~ m/^entities:/){
|
||||||
$line =~s/.*://;
|
$line =~s/.*://;
|
||||||
@el = ();
|
@el = ();
|
||||||
foreach (split(",",$line)){
|
foreach (split(",",$line)){
|
||||||
@ -559,26 +559,26 @@ sub HMinfo_tempList(@) { ######################################################
|
|||||||
push @entryNF,$_;
|
push @entryNF,$_;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
foreach (@exec){
|
|
||||||
my @param = split(" ",$_);
|
|
||||||
CUL_HM_Set($defs{$param[0]},@param);
|
|
||||||
}
|
|
||||||
push @elAll,@el;
|
push @elAll,@el;
|
||||||
}
|
}
|
||||||
elsif(@el && $_ =~ m/tempList(P[123])?[SMFWT].*\>/){
|
elsif(@el && $line =~ m/R_(P[123])?_?._tempList[SMFWT].*\>/){
|
||||||
my ($tln,$val) = ($1,$2)if($_ =~ m/(.*)>(.*)/);
|
my ($tln,$val) = ($1,$2)if($line =~ m/(.*)>(.*)/);
|
||||||
$tln =~ s/ //g;
|
$tln =~ s/ //g;
|
||||||
$val =~ tr/ +/ /;
|
$val =~ tr/ +/ /;
|
||||||
$val =~ s/^ //;
|
$val =~ s/^ //;
|
||||||
$val =~ s/ $//;
|
$val =~ s/ $//;
|
||||||
@exec = ();
|
@exec = ();
|
||||||
foreach my $eN(@el){
|
foreach my $eN(@el){
|
||||||
if ($tln =~ m/tempList(P.)/){
|
if ($tln =~ m/(P.)_._tempList/){
|
||||||
$val = lc($1)." ".$val;
|
$val = lc($1)." ".$val;
|
||||||
$tln =~ s/P.//;
|
|
||||||
}
|
}
|
||||||
|
$tln =~ s/R_(P._)?._//;
|
||||||
my $x = CUL_HM_Set($defs{$eN},$eN,$tln,"prep",split(" ",$val));
|
my $x = CUL_HM_Set($defs{$eN},$eN,$tln,"prep",split(" ",$val));
|
||||||
push @entryFail,$eN." :".$tln." respose:$x" if ($x != 1);
|
if ($x ne "1"){
|
||||||
|
my $list =$line;
|
||||||
|
$list =~ s/\>.*//;
|
||||||
|
push @entryFail,$eN." :".$list." respose:$x";
|
||||||
|
}
|
||||||
push @exec,$eN." ".$tln." exec ".$val;
|
push @exec,$eN." ".$tln." exec ".$val;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -628,7 +628,7 @@ sub HMinfo_tempListTmpl(@) { ##################################################
|
|||||||
$found = 1 if ($defs{$_} && $_ eq $tmpl);
|
$found = 1 if ($defs{$_} && $_ eq $tmpl);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elsif($found != 1 && $_ =~ m/tempList(P[123])?[SMFWT].*\>/){
|
elsif($found != 1 && $_ =~ m/R_(P[123])?_?._tempList[SMFWT].*\>/){
|
||||||
my ($tln,$val) = ($1,$2)if($_ =~ m/(.*)>(.*)/);
|
my ($tln,$val) = ($1,$2)if($_ =~ m/(.*)>(.*)/);
|
||||||
$tln =~ s/ //g;
|
$tln =~ s/ //g;
|
||||||
$val =~ tr/ +/ /;
|
$val =~ tr/ +/ /;
|
||||||
@ -636,19 +636,21 @@ sub HMinfo_tempListTmpl(@) { ##################################################
|
|||||||
$val =~ s/ $//;
|
$val =~ s/ $//;
|
||||||
@exec = ();
|
@exec = ();
|
||||||
foreach my $eN(@el){
|
foreach my $eN(@el){
|
||||||
|
if ($tln =~ m/(P.)_._tempList/){
|
||||||
|
$val = lc($1)." ".$val;
|
||||||
|
}
|
||||||
|
$tln =~ s/R_(P._)?._//;
|
||||||
my $x = CUL_HM_Set($defs{$eN},$eN,$tln,"prep",split(" ",$val));
|
my $x = CUL_HM_Set($defs{$eN},$eN,$tln,"prep",split(" ",$val));
|
||||||
push @entryFail,$eN." :".$tln." respose:$x" if ($x != 1);
|
push @entryFail,$eN." :".$tln." respose:$x" if ($x ne "1");
|
||||||
push @exec,$eN." ".$tln." exec ".$val;
|
push @exec,$eN." ".$tln." exec ".$val;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (@exec){
|
|
||||||
my @param = split(" ",$_);
|
|
||||||
CUL_HM_Set($defs{$param[0]},@param);
|
|
||||||
}
|
|
||||||
|
|
||||||
$ret = "failed Entries:\n " .join("\n ",@entryFail) if (scalar@entryFail);
|
$ret = "failed Entries:\n " .join("\n ",@entryFail) if (scalar@entryFail);
|
||||||
}
|
}
|
||||||
|
foreach (@exec){
|
||||||
|
my @param = split(" ",$_);
|
||||||
|
CUL_HM_Set($defs{$param[0]},@param);
|
||||||
|
}
|
||||||
close(aSave);
|
close(aSave);
|
||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user