Modul 95_Alarm.pm

Begonnen von Prof. Dr. Peter Henning, 09 Januar 2021, 10:44:29

Vorheriges Thema - Nächstes Thema

dkalass

Hallo Herr Prof. Dr. Peter Henning,

mich überrascht der ungehörige Ton von Ihnen!
Diese Einträge stammen doch aus dem Modul, oder?

define alarm0.off.N notify (TFClose.warn:yes)|(Cancel:on) {main::Alarm_Exec("Alarmanlage",0,"$NAME","$EVENT","off")}
setuuid alarm0.off.N 63d2438a-f33f-24ff-b0d3-b1c6b008ba6d103b
attr alarm0.off.N group alarmNotifier
attr alarm0.off.N room Alarm
define alarm0.on.N notify (BK.F:open)|(HM_MOD_EM_8_PEQ1916517_1:open)|(HM_MOD_EM_8_PEQ1916517_2:open)|(HM_MOD_EM_8_PEQ1916517_3:open)|(HM_MOD_EM_8_PEQ1916517_4:open)|(HM_MOD_EM_8_PEQ1916517_5:open)|(HM_MOD_EM_8_PEQ1916517_6:open)|(HM_MOD_EM_8_PEQ1916517_7:open)|(HM_MOD_EM_8_PEQ1916517_8:open)|(TFOpen.warn:.*) {main::Alarm_Exec("Alarmanlage",0,"$NAME","$EVENT","on")}
setuuid alarm0.on.N 63d2438b-f33f-24ff-03a1-7a80436174c4a058
attr alarm0.on.N group alarmNotifier
attr alarm0.on.N room Alarm

Wenn man so schlau ist wie sie, könnte man das auch freundlich erklären, oder ist das in ihren Kreisen nicht mehr gang und gebe?

Prof. Dr. Peter Henning

#31
1. Keineswegs "schreibt das Modul in die fhem.cfg" - das ist die Aufgabe von FHEM, wenn man so will also von fhem.pl.
2. Woher soll FHEM (nicht etwa ein bestimmtes Modul) wissen, dass eine bestimmte Device-Definition in die ausgelagerte Konfigurationsdatei "meine_Alarmanlage.cfg" des Users xyz geschrieben werden soll? Edit: Wie Rudi unten anmerkt, weiß FHEM das sehr wohl. Da das Modul - in dem Fall 95_Alarm.pm - aber gar nicht in eine Konfigurationsdatei schreibt, sodern dies FHEM überlässt, ist das nicht relevant.

Ich habe hier nur einen Hinweis: Finger weg von manuell editierten Konfigurationsdateien (und damit auch vom Aufspalten derselben).

LG

pah

rudolfkoenig

Zitat2. Woher soll FHEM (nicht etwa ein bestimmtes Modul) wissen, dass eine bestimmte Device-Definition in die ausgelagerte Konfigurationsdatei "meine_Alarmanlage.cfg" des Users xyz geschrieben werden soll?
Das wird vom $hash->{CFGFN} abgeleitet.
Bei Include-Dateien wird das gesetzt, damit die aus dieser Datei gelesenen Definitionen auch dahin zurueckgeschrieben werden.

usm

Hallo,
ich hangel mich gerade durch die Wiki Beschreibung und versuche zu einem EnOcean windowHandle die unterschiedlichen Level zu definieren. Das Device meldet folgende vier Stati:
open, closed, tilted, open_from_tilted
Es bietet sich also an eine Warnung bei tilted (z.B. beim Verlassen) zu definieren und einen Einbruch zu melden wenn der windowHandle bei Abwesenheit den Status open_from_tilted meldet.

Ist so eine Konfiguration im Modul umsetzbar, oder können unterschiedliche Stati gar nicht definiert werden?

Lieben Dank
usm

Prof. Dr. Peter Henning

Das Modul ist so aufgebaut, dass ein (logisches) Gerät mit einem Event zwar verschiedene Alarmlevel auslösen kann. Aber nicht mit verschiedenen Events verschiedene Alarmlevel.

Hier müsste man (das halte ich auch für sauberer) zu einem physisch vorhandenen Gerät mehrere logische Geräte (z.B. als Dummy, oder mit CustomReadings) definieren - deren Events dann unterschiedliche Level auslösen.

LG

pah

P.S.: Die Mehrzahl von Status ist Status.