HMCCU Reading Namen: Unterschied zwischen den Versionen

Aus FHEMWiki
K (syntaxhighlight korrigiert)
 
(3 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 128: Zeile 128:
Per Default entsprechen die Namen der Readings den Namen der Datenpunkte / Parameter. Bei HMCCUDEV Devices wird die Kanalnummer vorangestellt, um identische Datenpunkte in mehreren Kanälen unterscheiden zu können. Die Namen der Readings können mit den Attributen '''ccureadingformat''', '''ccureadingname''' und '''ccuReadingPrefix''' beeinflusst werden.
Per Default entsprechen die Namen der Readings den Namen der Datenpunkte / Parameter. Bei HMCCUDEV Devices wird die Kanalnummer vorangestellt, um identische Datenpunkte in mehreren Kanälen unterscheiden zu können. Die Namen der Readings können mit den Attributen '''ccureadingformat''', '''ccureadingname''' und '''ccuReadingPrefix''' beeinflusst werden.


=== Das Attribut ccureadingformat ===
=== Reading Name Format - Attribut ccureadingformat ===
Die folgende Tabelle zeigt anhand des Datenpunktes "LEVEL" im Kanal 1 eines Gerätes "Thermostat-Bad", wie die Einstellung im Attribut '''ccureadingformat''' den Reading Namen beeinflusst:
Die folgende Tabelle zeigt anhand des Datenpunktes "LEVEL" im Kanal 1 eines Gerätes "Thermostat-Bad", wie die Einstellung im Attribut '''ccureadingformat''' den Reading Namen beeinflusst:
{| class="wikitable"
{| class="wikitable"
Zeile 159: Zeile 159:
Beispiel: "Wert_von_%c_%D" ergibt beim Datenpunkt 1.LEVEL den Reading Namen "Wert_von_1_LEVEL".
Beispiel: "Wert_von_%c_%D" ergibt beim Datenpunkt 1.LEVEL den Reading Namen "Wert_von_1_LEVEL".


=== Das Attribut ccuReadingPrefix ===
=== Reading Name Präfixe - Attribut ccuReadingPrefix ===
Um Readings für Datenpunkte und Konfigurationsparameter voneinander abzugrenzen, stellt HMCCU den Reading Namen für Konfigurationsparameter (einschließlich Verknüpfungen und Services) ein Präfix voran. Dieses Präfix kann mit dem Attribut ccuReadingPrefix beeinflusst werden:
Um Readings für Datenpunkte und Konfigurationsparameter voneinander abzugrenzen, stellt HMCCU den Reading Namen für Konfigurationsparameter (einschließlich Verknüpfungen und Services) ein Präfix voran. Dieses Präfix kann mit dem Attribut '''ccuReadingPrefix''' beeinflusst werden. Folgende Präfixe sind voreingestellt:
{| class="wikitable"
|+Reading Präfixe
!Parameter Art
!Parameter Set
!Präfix
|-
|Datenpunkt
|VALUES
|
|-
|Konfigurationsparameter
|MASTER
|R-
|-
|Links / Verknüpfungen
|LINK
|L-
|-
|Services
|SERVICE
|S-
|}
Das folgende Beispiel legt das Präfix "C-" für Konfigurationsparameter fest und entfernt das Präfix für Links:
<syntaxhighlight lang="perl">
attr myDev ccuReadingPrefix MASTER:C-,LINK:
</syntaxhighlight>
 
=== Readings umbenennen und unterdrücken - Attribut ccureadingname ===
Mit dem Attribut ccureadingname können Readings ersetzt, um ein zusätzliches Reading ergänzt oder mehrere Datenpunkte/Parameter zu einem Reading zusammengefasst werden.
 
Syntax zum Ersetzen von Readings:
 
ccureadingname [Kanal.]ReadingnameAlt:ReadingnameNeu
 
Syntax zum Hinzufügen von Readings:
 
ccureadingname [Kanal.]ReadingnameAlt:+ReadingnameNeu
 
Syntax zum Hinzufügen und Ersetzen von Readings:
 
ccureadingname [Kanal.]ReadingnameAlt:+ReadingnameNeu1,ReadingnameNeu2
 
Die Parameter ''Kanal'' und ''ReadingnameAlt'' sind reguläre Ausdrücke. Um Readings aus mehreren Kanälen zu einem neuen Reading zusammen zu fassen, wählt man einfach passende Ausdrücke für ''Kanal'' und ''ReadingNameAlt''.
 
Beispiel: Ein Reading "anyKeyPressed" soll anzeigen, ob auf einer Fernbedienung entweder die Taste 2 oder 4 (entsprechend Kanal 2 oder 4) gedrückt wurde. Ein Tastendruck wird über den Datenpunkt PRESS_SHORT signalisiert. Die Readings 2.PRESS_SHORT und 4.PRESS_SHORT sollen beibehalten werden ("+").
<syntaxhighlight lang="perl">
attr myDev ccureadingname [24].^PRESS_SHORT$:+anyKeyPressed
</syntaxhighlight>
Mehrere Ersetzungsregeln werden durch Semikolons getrennt. Beispiel:
<syntaxhighlight lang="perl">
attr myDev ccureadingname PRESS_SHORT:pressed;ACTUAL_TEMPERATURE:temperature
</syntaxhighlight>


== Filterung von Readings ==
== Filterung von Readings ==
Sofern keine Attribute zur Filterung von Readings definiert sind, werden in HMCCUDEV/HMCCUCHN Device
Sofern keine Attribute zur Filterung von Readings definiert sind, werden in HMCCUDEV/HMCCUCHN Devices Readings für alle Datenpunkte (Parameter Set VALUES) angezeigt. Die Datenpunkte und Parameter, die als Reading angezeigt werden sollen, können mit dem Attribut '''ccureadingfilter''' festgelegt werden.
 
[[Kategorie:HomeMatic Components]]

Aktuelle Version vom 4. November 2022, 19:29 Uhr

Arten von Readings

Die Module HMCCUDEV und HMCCUCHN kennen 6 verschiedene Arten von Readings. Einige werden immer, andere nur nach dem Setzen von Flags im Attribut ccuflags angezeigt. Die folgende Tabelle fasst die Reading Arten zusammen:

Anzeige der Reading Arten
Readings für Default Anzeige Anzeige aktivieren mit Aktualisierung
Datenpunkte ja (Kanäle > 0) ccuflags = showDeviceReadings (Kanal 0) automatisch
Konfigurationsparameter nein ccuflags = showMasterReadings manuell
Verknüpfungen / Links nein ccuflags = showLinkReadings manuell
Services nein ccuflags = showServiceReadings manuell
Gerätefunktionen ja immer aktiv automatisch
Gerätestati ja immer aktiv automatisch

Readings für Datenpunkte

Readings für Datenpunkte, Gerätefunktionen und Gerätestati werden automatisch aktualisiert, sofern die RPC Server konfiguriert und gestartet sind.

Readings für Datenpunkte werden per Voreinstellung immer angezeigt. Eine Ausnahme sind die Datenpunkte für den Statuskanal 0, über den jedes Homematic Device verfügt. Diese werden nur angezeigt, wenn im Attribut ccuflags das Flag "showDeviceReadings" gesetzt ist. Dies ist normalerweise nicht notwendig, da die wichtigsten Datenpunkte in Kanal 0 in den Gerätefunktions-Readings und den Gerätestatus-Reading "devstate" und "hmstate" angezeigt werden.

Gerätefunktions-Readings
Datenpunkt Kanal 0 Reading Bedeutung Werte Wert in Reading devstate
AES_KEY sign Verschlüsselung yes, no
LOW_BAT

LOWBAT

battery Batteriestatus low, ok
OPERATING_VOLTAGE voltage Batteriespannung Zahl
SABOTAGE

ERROR_SABOTAGE

sabotage Manipulationsversuch yes, no "sabotage"
UNREACH activity Erreichbarkeit active, dead "unreach"
STICKY_UNREACH Gerät war nicht erreichbar "stickyUnreach"
RSSI_DEVICE rssidevice Signalstärke Zahl
RSSI_PEER rssipeer Signalstärke Zahl
CONFIG_PENDING Konfiguration steht zur Übertragung an "cfgPending"
UPDATE_PENDING Firmware-Update steht zur Übertragung an "updPending"
DEVICE_IN_BOOTLOADER Gerät startet neu "boot"

Das Reading "devstate" enthält einen oder mehrere der angegebenen Werte (letzte Spalte), sofern der zugehörige Datenpunkt den Wert "true" annimmt. Mehrere Werte werden durch Komma getrennt. Beispiel: "stickyUnreach,cfgPending".

Readings für Konfigrationsparameter

Readings für Konfigurationsparameter, Verknüpfungen und Services werden nur angezeigt, sofern im Attribut ccuflags das entsprechende Flag "showXXXReadings" gesetzt ist (siehe Tabelle oben). Diese Readings müssen mit dem Befehl get config manuell abgefragt werden.

Namen von Readings

Per Default entsprechen die Namen der Readings den Namen der Datenpunkte / Parameter. Bei HMCCUDEV Devices wird die Kanalnummer vorangestellt, um identische Datenpunkte in mehreren Kanälen unterscheiden zu können. Die Namen der Readings können mit den Attributen ccureadingformat, ccureadingname und ccuReadingPrefix beeinflusst werden.

Reading Name Format - Attribut ccureadingformat

Die folgende Tabelle zeigt anhand des Datenpunktes "LEVEL" im Kanal 1 eines Gerätes "Thermostat-Bad", wie die Einstellung im Attribut ccureadingformat den Reading Namen beeinflusst:

Reading Name Formate
ccureadingformat Zusammensetzung Reading Name Reading HMCCUDEV Reading HMCCUCHN
datapoint Datenpunkt 1.LEVEL LEVEL
name Gerätename, Kanal, Datenpunkt Thermostat-Bad.1.LEVEL Thermostat-Bad.1.LEVEL
address Interface, Adresse, Kanal, Datenpunkt HmIP-RF.000393C99BFC08.1.LEVEL HmIP-RF.000393C99BFC08.1.LEVEL

Wenn an das Reading-Format das Kürzel "lc" angehängt wird, wird der Reading Name in Kleinbuchstaben umgewandelt. Zusätzlich zu den 3 fest vorgegebenen Formaten kann auch ein Reading-Format mit Platzhaltern definiert werden. Folgende Platzhalter sind möglich:

  • %a, %A - Adresse
  • %c - Kanal
  • %n, %N - Gerätename
  • %d, %D - Datenpunkt / Parameter

Beispiel: "Wert_von_%c_%D" ergibt beim Datenpunkt 1.LEVEL den Reading Namen "Wert_von_1_LEVEL".

Reading Name Präfixe - Attribut ccuReadingPrefix

Um Readings für Datenpunkte und Konfigurationsparameter voneinander abzugrenzen, stellt HMCCU den Reading Namen für Konfigurationsparameter (einschließlich Verknüpfungen und Services) ein Präfix voran. Dieses Präfix kann mit dem Attribut ccuReadingPrefix beeinflusst werden. Folgende Präfixe sind voreingestellt:

Reading Präfixe
Parameter Art Parameter Set Präfix
Datenpunkt VALUES
Konfigurationsparameter MASTER R-
Links / Verknüpfungen LINK L-
Services SERVICE S-

Das folgende Beispiel legt das Präfix "C-" für Konfigurationsparameter fest und entfernt das Präfix für Links:

attr myDev ccuReadingPrefix MASTER:C-,LINK:

Readings umbenennen und unterdrücken - Attribut ccureadingname

Mit dem Attribut ccureadingname können Readings ersetzt, um ein zusätzliches Reading ergänzt oder mehrere Datenpunkte/Parameter zu einem Reading zusammengefasst werden.

Syntax zum Ersetzen von Readings:

ccureadingname [Kanal.]ReadingnameAlt:ReadingnameNeu

Syntax zum Hinzufügen von Readings:

ccureadingname [Kanal.]ReadingnameAlt:+ReadingnameNeu

Syntax zum Hinzufügen und Ersetzen von Readings:

ccureadingname [Kanal.]ReadingnameAlt:+ReadingnameNeu1,ReadingnameNeu2

Die Parameter Kanal und ReadingnameAlt sind reguläre Ausdrücke. Um Readings aus mehreren Kanälen zu einem neuen Reading zusammen zu fassen, wählt man einfach passende Ausdrücke für Kanal und ReadingNameAlt.

Beispiel: Ein Reading "anyKeyPressed" soll anzeigen, ob auf einer Fernbedienung entweder die Taste 2 oder 4 (entsprechend Kanal 2 oder 4) gedrückt wurde. Ein Tastendruck wird über den Datenpunkt PRESS_SHORT signalisiert. Die Readings 2.PRESS_SHORT und 4.PRESS_SHORT sollen beibehalten werden ("+").

attr myDev ccureadingname [24].^PRESS_SHORT$:+anyKeyPressed

Mehrere Ersetzungsregeln werden durch Semikolons getrennt. Beispiel:

attr myDev ccureadingname PRESS_SHORT:pressed;ACTUAL_TEMPERATURE:temperature

Filterung von Readings

Sofern keine Attribute zur Filterung von Readings definiert sind, werden in HMCCUDEV/HMCCUCHN Devices Readings für alle Datenpunkte (Parameter Set VALUES) angezeigt. Die Datenpunkte und Parameter, die als Reading angezeigt werden sollen, können mit dem Attribut ccureadingfilter festgelegt werden.