HMCCU Reading Namen: Unterschied zwischen den Versionen
Zap (Diskussion | Beiträge) (HMCCU Readings) |
K (syntaxhighlight korrigiert) |
||
(5 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Arten von Readings | == 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: | |||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+ | ||
Anzeige der Reading Arten | |||
!Readings für | !Readings für | ||
!Anzeige | !Default Anzeige | ||
!Anzeige aktivieren mit | |||
!Aktualisierung | |||
|- | |- | ||
|Datenpunkte | |Datenpunkte | ||
| | |ja (Kanäle > 0) | ||
|ccuflags = showDeviceReadings (Kanal 0) | |||
|automatisch | |||
|- | |- | ||
|Konfigurationsparameter | |Konfigurationsparameter | ||
| | |nein | ||
|ccuflags = showMasterReadings | |||
|manuell | |||
|- | |||
|Verknüpfungen / Links | |||
|nein | |||
|ccuflags = showLinkReadings | |||
|manuell | |||
|- | |||
|Services | |||
|nein | |||
|ccuflags = showServiceReadings | |||
|manuell | |||
|- | |- | ||
|Gerätefunktionen | |Gerätefunktionen | ||
|immer | |ja | ||
|immer aktiv | |||
|automatisch | |||
|- | |- | ||
|Gerätestati | |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. | |||
{| class="wikitable" | |||
|+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: | |||
{| class="wikitable" | |||
|+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: | |||
{| 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> | |||
Filterung von Readings | |||
=== 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 == | |||
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:
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.
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:
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:
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.