2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-04-21 07:56:03 +00:00

HMInfo: remove test routines

git-svn-id: https://svn.fhem.de/fhem/trunk@10026 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
martinp876 2015-11-28 09:53:59 +00:00
parent 7946c2fdb9
commit 6f8d613d4b

View File

@ -1140,7 +1140,7 @@ sub HMinfo_GetFn($@) {#########################################################
$ret = "";
}
else{
$ret = HMinfo_configCheck (join(",",("$name;;",$opt,$filter)));
(undef,undef,undef,$ret) = split(";",HMinfo_configCheck (join(",",("$name;;",$opt,$filter))),4);
$ret =~s/-ret-/\n/g;
}
}
@ -1211,57 +1211,6 @@ sub HMinfo_GetFn($@) {#########################################################
"HMinfo_bpAbort", "$name:0");
$hash->{nb}{$id}{$_} = $bl->{$_} foreach (keys %{$bl});
$ret = "";
###################
# # devicenameFilter
# my $RegReply = "";
# my @noReg;
# foreach my $dName (HMinfo_getEntities($opt."v",$filter)){
# my $regs = CUL_HM_Get(CUL_HM_name2Hash($dName),$dName,"reg","all");
# if ($regs !~ m/[0-6]:/){
# push @noReg,$dName;
# next;
# }
# my ($peerOld,$ptOld,$ptLine,$peerLine) = ("","",pack('A23',""),pack('A23',""));
# foreach my $reg (split("\n",$regs)){
# my ($peer,$h1) = split ("\t",$reg);
# $peer =~s/ //g;
# if ($peer !~ m/3:/){
# $RegReply .= $reg."\n";
# next;
# }
# next if (!$h1);
# $peer =~s/3://;
# my ($regN,$h2) = split (":",$h1);
# my ($pt,$rN) = unpack 'A2A*',$regN;
# if (!defined($hash->{helper}{r}{$rN})){
# $hash->{helper}{r}{$rN}{v} = "";
# $hash->{helper}{r}{$rN}{u} = pack('A5',"");
# }
# my ($val,$unit) = split (" ",$h2);
# $hash->{helper}{r}{$rN}{v} .= pack('A16',$val);
# $hash->{helper}{r}{$rN}{u} = pack('A5',"[".$unit."]") if ($unit);
# if ($pt ne $ptOld){
# $ptLine .= pack('A16',$pt);
# $ptOld = $pt;
# }
# if ($peer ne $peerOld){
# $peerLine .= pack('A32',$peer);
# $peerOld = $peer;
# }
# }
# $RegReply .= $peerLine."\n".$ptLine."\n";
# foreach my $rN (sort keys %{$hash->{helper}{r}}){
# $hash->{helper}{r}{$rN} =~ s/( o..)/$1 /g
# if($rN =~ m/^MultiExec /); #shift thhis reading since it does not appear for short
# $RegReply .= pack ('A18',$rN)
# .$hash->{helper}{r}{$rN}{u}
# .$hash->{helper}{r}{$rN}{v}
# ."\n";
# }
# delete $hash->{helper}{r};
# }
# $ret = "No regs found for:".join(",",sort @noReg)."\n\n"
# .$RegReply;
}
elsif($cmd eq "param") {##print param ----------------------------------
my @paramList;
@ -1323,10 +1272,10 @@ sub HMinfo_GetFn($@) {#########################################################
)
.join"\n ", @model;
}
elsif($cmd eq "overview") {
my @entities = HMinfo_getEntities($opt."d",$filter);
return HMI_overview(\@entities,\@a);
}
# elsif($cmd eq "overview") {
# my @entities = HMinfo_getEntities($opt."d",$filter);
# return HMI_overview(\@entities,\@a);
# }
elsif($cmd eq "help") {
$ret = HMInfo_help();
@ -1491,32 +1440,32 @@ sub HMinfo_SetFn($@) {#########################################################
sub HMInfo_help(){ ############################################################
return " Unknown argument choose one of "
."\n ---checks---"
."\n get configCheck [<typeFilter>] # perform regCheck and regCheck"
."\n get regCheck [<typeFilter>] # find incomplete or inconsistant register readings"
."\n get peerCheck [<typeFilter>] # find incomplete or inconsistant peer lists"
."\n get configCheck [-typeFilter-] # perform regCheck and regCheck"
."\n get regCheck [-typeFilter-] # find incomplete or inconsistant register readings"
."\n get peerCheck [-typeFilter-] # find incomplete or inconsistant peer lists"
."\n ---actions---"
."\n set saveConfig [<typeFilter>] [<file>] # stores peers and register with saveConfig"
."\n set archConfig [-a] [<file>] # as saveConfig but only if data of entity is complete"
."\n set purgeConfig [<file>] # purge content of saved configfile "
."\n set loadConfig [<typeFilter>] <file> # restores register and peer readings if missing"
."\n set verifyConfig [<typeFilter>] <file> # compare curent date with configfile,report differences"
."\n set autoReadReg [<typeFilter>] # trigger update readings if attr autoReadReg is set"
."\n set tempList [<typeFilter>][save|restore|verify|status|genPlot][<filename>]# handle tempList of thermostat devices"
."\n set saveConfig [-typeFilter-] [-file-] # stores peers and register with saveConfig"
."\n set archConfig [-a] [-file-] # as saveConfig but only if data of entity is complete"
."\n set purgeConfig [-file-] # purge content of saved configfile "
."\n set loadConfig [-typeFilter-] -file- # restores register and peer readings if missing"
."\n set verifyConfig [-typeFilter-] -file- # compare curent date with configfile,report differences"
."\n set autoReadReg [-typeFilter-] # trigger update readings if attr autoReadReg is set"
."\n set tempList [-typeFilter-][save|restore|verify|status|genPlot][-filename-]# handle tempList of thermostat devices"
."\n ---infos---"
."\n set update # update HMindfo counts"
."\n get register [<typeFilter>] # devicefilter parse devicename. Partial strings supported"
."\n get peerXref [<typeFilter>] # peer cross-reference"
."\n get models [<typeFilter>] # list of models incl native parameter"
."\n get protoEvents [<typeFilter>] [short|long] # protocol status - names can be filtered"
."\n get register [-typeFilter-] # devicefilter parse devicename. Partial strings supported"
."\n get peerXref [-typeFilter-] # peer cross-reference"
."\n get models [-typeFilter-] # list of models incl native parameter"
."\n get protoEvents [-typeFilter-] [short|long] # protocol status - names can be filtered"
."\n get msgStat # view message statistic"
."\n get param [<typeFilter>] [<param1>] [<param2>] ... # displays params for all entities as table"
."\n get rssi [<typeFilter>] # displays receive level of the HM devices"
."\n get param [-typeFilter-] [-param1-] [-param2-] ... # displays params for all entities as table"
."\n get rssi [-typeFilter-] # displays receive level of the HM devices"
."\n last: most recent"
."\n avg: average overall"
."\n range: min to max value"
."\n count: number of events in calculation"
."\n ---clear status---"
."\n set clear [<typeFilter>] [Protocol|readings|msgStat|register|rssi]"
."\n set clear [-typeFilter-] [Protocol|readings|msgStat|register|rssi]"
."\n Protocol # delete all protocol-events"
."\n readings # delete all readings"
."\n register # delete all register-readings"
@ -1526,27 +1475,27 @@ sub HMInfo_help(){ ############################################################
."\n ---help---"
."\n get help #"
."\n ***footnote***"
."\n [<nameFilter>] : only matiching names are processed - partial names are possible"
."\n [<modelsFilter>] : any match in the output are searched. "
."\n [-nameFilter-] : only matiching names are processed - partial names are possible"
."\n [-modelsFilter-] : any match in the output are searched. "
."\n"
."\n set cpRegs <src:peer> <dst:peer>"
."\n set cpRegs -src:peer- -dst:peer-"
."\n copy register for a channel or behavior of channel/peer"
."\n set templateDef <templateName> <param1[:<param2>...] <description> <reg1>:<val1> [<reg2>:<val2>] ... "
."\n set templateDef -templateName- -param1[:-param2-...] -description- -reg1-:-val1- [-reg2-:-val2-] ... "
."\n define a template"
."\n set templateSet <entity> <templateName> <peer:[long|short]> [<param1> ...] "
."\n set templateSet -entity- -templateName- -peer:[long|short]- [-param1- ...] "
."\n write register according to a given template"
."\n set templateDel <entity> <templateName> <peer:[long|short]> "
."\n set templateDel -entity- -templateName- -peer:[long|short]- "
."\n remove a template set"
."\n set templateExe <templateName>"
."\n set templateExe -templateName-"
."\n write all assigned templates to the file"
."\n get templateUsg <templateName>"
."\n get templateUsg -templateName-"
."\n show template usage"
."\n get templateChk [<typeFilter>] <templateName> <peer:[long|short]> [<param1> ...] "
."\n get templateChk [-typeFilter-] -templateName- -peer:[long|short]- [-param1- ...] "
."\n compare whether register match the template values"
."\n get templateList [<templateName>] # gives a list of templates or a description of the named template"
."\n get templateList [-templateName-] # gives a list of templates or a description of the named template"
."\n list all currently defined templates or the structure of a given template"
."\n ======= typeFilter options: supress class of devices ===="
."\n set <name> <cmd> [-dcasev] [-f <filter>] [params]"
."\n set -name- -cmd- [-dcasev] [-f -filter-] [params]"
."\n entities according to list will be processed"
."\n d - device :include devices"
."\n c - channels :include channels"
@ -1934,16 +1883,19 @@ sub HMinfo_configCheck ($){ ###################################################
next if ($tr eq "unused");
push @tlr,"$e: $tr" if($tr);
}
$ret .= "\n\n templist mismatch \n ".join("\n ",@tlr) if (@tlr);
$ret .= "\n\n templateCheck: \n";
$ret .= "\n\n templist mismatch \n ".join("\n ",sort @tlr) if (@tlr);
@tlr = ();
foreach my $dName (HMinfo_getEntities($opt."v",$filter)){
next if (!defined $defs{$dName}{helper}{tmpl});
foreach (keys %{$defs{$dName}{helper}{tmpl}}){
my ($p,$t)=split(">",$_);
my $tck = HMinfo_templateChk($dName,$t,$p,split(" ",$defs{$dName}{helper}{tmpl}{$_}));
$ret .= "\n ".$tck if ($tck);
push @tlr,$tck if ($tck);
}
}
$ret .= "\n\n template mismatch \n ".join("\n ",sort @tlr) if (@tlr);
$ret =~ s/\n/-ret-/g; # replace return with a placeholder - we cannot transfere direct
return "$id;$ret";
}
@ -2413,62 +2365,62 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
# $p1: regexp to select devicenames
# $p2: list of internals, readings and attributes to be displayed. Comma-separated, case sensitive.
#
#use vars qw($FW_encoding); #for handover from fhemweb
sub HMI_overview(@) {
my ($p1,$paramList)=@_;
my @dd = @{$p1};
my @p2l = ("DEF","peerList");
if (!defined($paramList)){
@p2l=@{$paramList};
}
######### prepare html
my $html ='<html><table class="block wide">'."\n"
.'<style> .HMIdev { border-top:3px solid #555555; width:10%; }'
.' .HMIchn { width:10%; }'
.'</style>'
."\n"
.'<tr><th>Device/Channel</th><th>'
.join('</th><th>',@p2l)
."</th></tr>\n";
######### loop for output
my $row=0;
foreach my $d (sort @dd) {
$html.=HMI_output($defs{$d},1,$row++,\@p2l);
foreach my $c (CUL_HM_getAssChnNames($d)) {
$html.=HMI_output($defs{$c},2,$row++,\@p2l);
}
}
$html.="</table></html>\n";
return ('text/html; charset=UTF-8',$html);
} #end sub HMI_overview
sub HMI_output(@) {
my ($hash,$lvl,$drow,$l)=@_;
my @list = @{$l};
my $n=$hash->{NAME};
my $class= ($lvl==1)?'HMIdev':'HMIchn';
######### device/channel
my $html.='<tr class = "'
.(($drow/2==int($drow/2))?"even":"odd")
."\"><td class=\"$class\">"
.($lvl==2?"&nbsp&nbsp&nbsp":"")
."<a href=\"$FW_ME?detail=$n\">$n<\/a>"
.'</td>';
######### further values
foreach my $p (@list) {
$html.="<td class=\"$class\">";
foreach my $pp (split(',',CUL_HM_Get($defs{$n},$n,"param",$p))) {
$pp =~ s/(.*)/<a href=\"$FW_ME?detail=$1\">$1<\/a>/ if (defined($defs{$pp}));
$pp = "" if($pp eq "undefined");
$html.=$pp.', ' if ($pp !~ /HASH.*/);
}
$_ =~ s/(.*), $/$1/;
$html.='</td>';
}
$html.="</tr>\n";
return $html;
} #end sub HMI_output
# use vars qw($FW_encoding); #for handover from fhemweb
# sub HMI_overview(@) {
# my ($p1,$paramList)=@_;
# my @dd = @{$p1};
# my @p2l = ("DEF","peerList");
# if (!defined($paramList)){
# @p2l=@{$paramList};
# }
# ######### prepare html
# my $html ='<html><table class="block wide">'."\n"
# .'<style> .HMIdev { border-top:3px solid #555555; width:10%; }'
# .' .HMIchn { width:10%; }'
# .'</style>'
# ."\n"
# .'<tr><th>Device/Channel</th><th>'
# .join('</th><th>',@p2l)
# ."</th></tr>\n";
# ######### loop for output
# my $row=0;
# foreach my $d (sort @dd) {
# $html.=HMI_output($defs{$d},1,$row++,\@p2l);
# foreach my $c (CUL_HM_getAssChnNames($d)) {
# $html.=HMI_output($defs{$c},2,$row++,\@p2l);
# }
# }
# $html.="</table></html>\n";
# return ('text/html; charset=UTF-8',$html);
# } #end sub HMI_overview
#
# sub HMI_output(@) {
# my ($hash,$lvl,$drow,$l)=@_;
# my @list = @{$l};
# my $n=$hash->{NAME};
# my $class= ($lvl==1)?'HMIdev':'HMIchn';
# ######### device/channel
# my $html.='<tr class = "'
# .(($drow/2==int($drow/2))?"even":"odd")
# ."\"><td class=\"$class\">"
# .($lvl==2?"&nbsp&nbsp&nbsp":"")
# ."<a href=\"$FW_ME?detail=$n\">$n<\/a>"
# .'</td>';
# ######### further values
#
# foreach my $p (@list) {
# $html.="<td class=\"$class\">";
# foreach my $pp (split(',',CUL_HM_Get($defs{$n},$n,"param",$p))) {
# $pp =~ s/(.*)/<a href=\"$FW_ME?detail=$1\">$1<\/a>/ if (defined($defs{$pp}));
# $pp = "" if($pp eq "undefined");
# $html.=$pp.', ' if ($pp !~ /HASH.*/);
# }
# $_ =~ s/(.*), $/$1/;
# $html.='</td>';
# }
# $html.="</tr>\n";
# return $html;
# } #end sub HMI_output
1;