From 02b92dbd4bef532c203523c60a8b5b063d7e3e5a Mon Sep 17 00:00:00 2001
From: martinp876 <>
Date: Sun, 1 Aug 2021 18:53:15 +0000
Subject: [PATCH] HMInfo:commandref Attribute, ClearG msgError bugfix
git-svn-id: https://svn.fhem.de/fhem/trunk@24816 2b470e98-0d58-463d-a4d8-8e2adae1ed80
---
fhem/FHEM/98_HMinfo.pm | 68 +++++++++++++++++++++---------------------
1 file changed, 34 insertions(+), 34 deletions(-)
diff --git a/fhem/FHEM/98_HMinfo.pm b/fhem/FHEM/98_HMinfo.pm
index 0891cc4e0..cae65af93 100644
--- a/fhem/FHEM/98_HMinfo.pm
+++ b/fhem/FHEM/98_HMinfo.pm
@@ -98,6 +98,7 @@ sub HMinfo_Define($$){#########################################################
;
$hash->{nb}{cnt} = 0;
$modules{HMinfo}{helper}{initDone} = 0;
+ notifyRegexpChanged($hash,"global",0);
HMinfo_init();
return;
}
@@ -432,7 +433,7 @@ sub HMinfo_status($){##########################################################
push @updates,"ERR__protocol:" .join(",",sort map {"$_:$protE{$_}"} grep {$protE{$_}} sort keys(%protE));
push @updates,"W__protocol:" .join(",",sort map {"$_:$protW{$_}"} grep {$protW{$_}} sort keys(%protW));
- my @tpu = devspec2array("TYPE=CUL_HM:FILTER=state=unreachable");
+ my @tpu = devspec2array("TYPE=CUL_HM:FILTER=DEF=......:FILTER=state=unreachable");
push @updates,"ERR__unreachable:".scalar(@tpu);
push @updates,"I_autoReadPend:" .scalar @{$modules{CUL_HM}{helper}{qReqConf}};
# ------- what about rssi low readings ------
@@ -551,7 +552,7 @@ sub HMinfo_regCheck(@) { ######################################################
) # content is already displayed
);
}
- push @regChPend,$eName if (keys %{$ehash->{helper}{shadowReg}});
+ push @regChPend,$eName.":" if (keys %{$ehash->{helper}{shadowReg}});
}
push @regMissing,$eName.":\t".join(",",@mReg) if (scalar @mReg);
@@ -1016,9 +1017,8 @@ sub HMinfo_listOfTempTemplates() { ############################################
$defs{$n}{helper}{weekplanList} = \@tmpl;
if ($modules{CUL_HM}{AttrList}){
- my $lst = "none,defaultWeekplan,".join(",",@tmpl);
- $modules{CUL_HM}{AttrList} =~ s/ tempListTmpl(.*? )/ tempListTmpl:$lst /;
- $modules{CUL_HM}{tempListTmplLst} = $lst;
+ $modules{CUL_HM}{tempListTmplLst} = "none,defaultWeekplan,".join(",",sort @tmpl);
+ CUL_HM_AttrInit($modules{CUL_HM});
}
return ;
}
@@ -1869,9 +1869,9 @@ sub HMinfo_SetFn($@) {#########################################################
}
}
if ($type eq "msgErrors"){#clear message events for all devices which has problems
- my @devL = split(",",InternalVal($hash->{NAME},"W__protoNames",""));
- push @devL,split(",",InternalVal($hash->{NAME},"CRI__protoNames",""));
- push @devL,split(",",InternalVal($hash->{NAME},"ERR__protoNames",""));
+ my @devL = split(",",InternalVal($hash->{NAME},"iW__protoNames" ,""));
+ push @devL,split(",",InternalVal($hash->{NAME},"iCRI__protoNames",""));
+ push @devL,split(",",InternalVal($hash->{NAME},"iERR__protocol" ,""));
foreach my $dName (HMinfo_noDup(@devL)){
CUL_HM_Set($defs{$dName},$dName,"clear","msgEvents");
@@ -3744,7 +3744,7 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
Attributes
- - sumStatus
+ - sumStatus
Warnings: list of readings that shall be screend and counted based on current presence.
I.e. counter is the number of entities with this reading and the same value.
Readings to be searched are separated by comma.
@@ -3759,7 +3759,7 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
Note: counter with '0' value will not be reported. HMinfo will find all present values autonomously
Setting is meant to give user a fast overview of parameter that are expected to be system critical
- - sumERROR
+
- sumERROR
Similar to sumStatus but with a focus on error conditions in the system.
Here user can add readingvalues that are not displayed. I.e. the value is the
good-condition that will not be counted.
@@ -3777,7 +3777,7 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
ERR_Activity dead:5
- autoUpdate
+ autoUpdate
retriggers the command update periodically.
Example:
@@ -3785,14 +3785,14 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
will trigger the update every 10 min
- autoArchive
+ autoArchive
if set fhem will update the configFile each time the new data is available.
The update will happen with autoUpdate. It will not
work it autoUpdate is not used.
see also archConfig
- hmAutoReadScan
+ hmAutoReadScan
defines the time in seconds CUL_HM tries to schedule the next autoRead
from the queue. Despite this timer FHEM will take care that only one device from the queue will be
handled at one point in time. With this timer user can stretch timing even further - to up to 300sec
@@ -3800,45 +3800,45 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
Setting to 1 still obeys the "only one at a time" prinzip.
Note that compressing will increase message load while stretch will extent waiting time.
- hmIoMaxDly
+ hmIoMaxDly
max time in seconds CUL_HM stacks messages if the IO device is not ready to send.
If the IO device will not reappear in time all command will be deleted and IOErr will be reported.
Note: commands will be executed after the IO device reappears - which could lead to unexpected
activity long after command issue.
default is 60sec. max value is 3600sec
- configDir
+ configDir
default directory where to store and load configuration files from.
This path is used as long as the path is not given in a filename of
a given command.
It is used by commands like tempList or saveConfig
- configFilename
+ configFilename
default filename used by
saveConfig,
purgeConfig,
loadConfig
verifyConfig
- configTempFile<;configTempFile2><;configTempFile3>
+ configTempFile<;configTempFile2><;configTempFile3>
Liste of Templfiles (weekplan) which are considered in HMInfo and CUL_HM
Files are comma separated. The first file is default. Its name may be skipped when setting a tempalte.
- hmManualOper
+ hmManualOper
set to 1 will prevent any automatic operation, update or default settings
in CUL_HM.
- hmDefaults
+ hmDefaults
set default params for HM devices. Multiple attributes are possible, comma separated.
example:
attr hm hmDefaults hmProtocolEvents:0_off,rssiLog:0
- verbCULHM
+ verbCULHM
set verbose logging for a special action for any CUL_HM entity.
allSet: all set commands to be executed.
allGet: all get requests to be executed.
- autoLoadArchive
+ autoLoadArchive
if set the register config will be loaded after reboot automatically. See loadConfig for details
@@ -4214,7 +4214,7 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
Attribute
- - sumStatus
+ - sumStatus
erzeugt eine Liste von Warnungen. Die zu untersuchenden Readings werden mittels Komma separiert angegeben.
Die Readings werden, so vorhanden, von allen Instanzen ausgewertet, gezählt und getrennt nach Readings mit
gleichem Inhalt ausgegeben.
@@ -4229,7 +4229,7 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
Anmerkung: Zähler mit Werten von '0' werden nicht angezeigt. HMinfo findet alle vorhanden Werte selbstständig.
Das Setzen des Attributes ermöglicht einen schnellen Überblick über systemkritische Werte.
- - sumERROR
+
- sumERROR
Ähnlich sumStatus, jedoch mit dem Fokus auf signifikante Fehler.
Hier können Reading Werte angegeben werden, die dazu führen, dass diese nicht angezeigt werden.
Damit kann beispielsweise verhindert werden, dass der zu erwartende Normalwert oder ein anderer nicht
@@ -4246,7 +4246,7 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
ERR_Activity dead:5
- autoUpdate
+ autoUpdate
führt den Befehl periodisch aus.
Beispiel:
@@ -4254,55 +4254,55 @@ sub HMinfo_noDup(@) {#return list with no duplicates###########################
führt den Befehl alle 10 Minuten aus
- autoArchive
+ autoArchive
Sobald neue Daten verfügbar sind, wird das configFile aktualisiert.
Für die Aktualisierung ist autoUpdate zwingend erforderlich.
siehe auch archConfig
- hmAutoReadScan
+ hmAutoReadScan
definiert die Zeit in Sekunden bis zum nächsten autoRead durch CUL_HM. Trotz dieses Zeitwertes stellt
FHEM sicher, dass zu einem Zeitpunkt immer nur ein Gerät gelesen wird, auch wenn der Minimalwert von 1
Sekunde eingestellt ist. Mit dem Timer kann der Zeitabstand
ausgeweitet werden - bis zu 300 Sekunden zwischen zwei Ausführungen.
Das Herabsetzen erhöht die Funkbelastung, Heraufsetzen erhöht die Wartzezeit.
- hmIoMaxDly
+ hmIoMaxDly
maximale Zeit in Sekunden für die CUL_HM Meldungen puffert, wenn das Gerät nicht sendebereit ist.
Ist das Gerät nicht wieder rechtzeitig sendebereit, werden die gepufferten Meldungen verworfen und
IOErr ausgelöst.
Hinweis: Durch die Pufferung kann es vorkommen, dass Aktivität lange nach dem Absetzen des Befehls stattfindet.
Standard ist 60 Sekunden, maximaler Wert ist 3600 Sekunden.
- configDir
+ configDir
Verzeichnis für das Speichern und Lesen der Konfigurationsdateien, sofern in einem Befehl nur ein Dateiname ohne
Pfad angegen wurde.
Verwendung beispielsweise bei tempList oder saveConfig
- configFilename
+ configFilename
Standard Dateiname zur Verwendung von
saveConfig,
purgeConfig,
loadConfig
- configTempFile<;configTempFile2><;configTempFile3>
+ configTempFile<;configTempFile2><;configTempFile3>
Liste der Templfiles (weekplan) welche in HM berücksichtigt werden
Die Files werden kommasepariert eingegeben. Das erste File ist der Default. Dessen Name muss beim Template nicht eingegeben werden.
- hmManualOper
+ hmManualOper
auf 1 gesetzt, verhindert dieses Attribut jede automatische Aktion oder Aktualisierung seitens CUL_HM.
- hmDefaults
+ hmDefaults
setzt default Atribute fuer HM devices. Mehrere Attribute sind moeglich, Komma separiert.
Beispiel:
attr hm hmDefaults hmProtocolEvents:0_off,rssiLog:0
- verbCULHM
+ verbCULHM
set verbose logging fuer ausgewaehlte aktionen von allen CUL_HM entities.
allSet: alle set Kommandos fertig zur Ausführung.
allGet: alle get Anfragen fertig zur Ausführung.
- autoLoadArchive
+ autoLoadArchive
das Register Archive sowie Templates werden nach reboot automatischgeladen.
Siehe loadConfig fuer details