Hallo zusammen,
ich plane im Moment meine Installation mit einer Alarmanlage zu erweitern- Das Gerüst steht schon aber ich möchte mir eine Nachricht senden lassen wenn ich versuche die Anlage scharf zuschalten und noch Fenster oder Türen geöffnet sind ("Es sind noch Badezimmerfester, Kellertür, Dachfenster geöffnet und der Alarm kann nicht scharfgeschaltet werden.").
Das ganze kann man natürlich mit einzelnen DOIFs realisiert werden aber es muss doch eine einfachere Methode geben das ganze umzusetzen.... z. B. alle geöffneten Fenster/ Türen automatisch in das Reading eines Dummys zu schreiben und dann nur diese Information versenden.
Ich hoffe ich habe meinen Idee halbwegs rüberbringen können und jemand kann mir helfen.
Danke und Grüße
Andreas
Hallo Andreas,
HOMEMODE kann sowas:
https://forum.fhem.de/index.php/topic,64317.html (https://forum.fhem.de/index.php/topic,64317.html)
sowie
https://wiki.fhem.de/wiki/Modul_HOMEMODE (https://wiki.fhem.de/wiki/Modul_HOMEMODE)
Und noch vieles mehr...
VG Sebastian
sub statusFensterOffen($) {
my $contactSensorDevice = shift;
$contactSensorDevice = 'FensterKontakt.*_(Dachfenster|F[1-4])' if( not defined($contactSensorDevice) );
my @monitored=devspec2array("($contactSensorDevice):FILTER=STATE!=closed");
my $i = 0;
my $msgtext = "";
foreach(@monitored) {
$msgtext .= AttrVal($_,"alias",$_);
if( $i < scalar(@monitored) - 2) {
$msgtext .= ", ";
} elsif( $i == scalar(@monitored) - 2) {
$msgtext .= " und ";
}
$i++;
}
return $msgtext if (scalar(@monitored) > 0);
}
Das in eine 99_myUtils einpflegen. Als Ergebnis kommt ein String. Einfach mal ausprobieren. devspec2array Anpassen an Deine Gegebenheiten.
Somit geht es auch
https://fhem.de/commandref_DE.html#DOIF_aggregation