Neues Modul: 22_HOMEMODE.pm - grundlegende Automationen und mehr

Begonnen von DeeSPe, 07 Januar 2017, 15:59:43

Vorheriges Thema - Nächstes Thema

binford6000


Dr. Boris Neubert

Hallo,

es liegt am HOMEMODE-Modul. Dieses ruft in Zeile 3084 Calendar_GetEvents() auf. Die Signatur dieser Funktion hat sich in Calendar geändert.

Es muss als dritter von drei Parametern ein Array mit Filtern übergeben werden. Und zwar

( { ref => \&filter_true, param => undef } )

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

DeeSPe

Vielen Dank für das Analysieren und Berichten des Problems.
Besonderen Dank natürlich an Boris für den passenden Lösungsvorschlag.

Hab's kurz getestet und soeben als V1.4.4 in SVN eingecheckt.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

binford6000

ZitatVielen Dank für das Analysieren und Berichten des Problems.
Besonderen Dank natürlich an Boris für den passenden Lösungsvorschlag.
Danke fürs schnelle fixen!
VG Sebastian

Tedious

Besten Dank für das tolle Modul - ich steige erst so langsam in die Tiefen ein, aber das ist definitiv mächtig!

Aber ich hätte eine Bitte, wurde auch schon geäußert, aber bislang immer verwehrt. Einen einstellbaren Delay fürs Auslösen. Der Grund ist schnell erklärt:

Wenn man wie ich seit langem ein funktionierendes Residents-Modul nutzt kommt man in eine Zwickmühle. Denn wenn alle das Haus verlassen haben schaltet die Alarmanlage automatisch scharf, das ist sehr schick. Aber wenn man heim kommt und ein größeres Haus hat ist zumeist die Anwesenheitper BT-Tag noch nicht gegeben wenn man die Haustür aufschließt. Man löst also den Alarm zwangsläufig aus. In der Teststellung spiele ich nur mit Lichtern, das ist unproblematisch - gehen eben die Lampen an. Aber wenn später noch ein Signal ertönen soll habe ich ein Problem generiert.

Wünschenswert wäre ein in Sekunden einstellbarer Delay, der kann ja per Default gerne auf 0 stehen. Das würde es ermöglichen die Haustür zu betreten und die 10 oder 15 Sekunden zu puffern bis das System erkennt dass ich zuhause bin, das wäre ideal. Ansonsten müsste ich ein anderes Loch ins System brechen indem ich entweder einen Schalter außen versteckt installiere, die Haustüre aus der Überwachung rausnehme oder meine Frau bitte mit Einkäufen, einer quengelnden 3-jährigen und einem Säugling im Maxi-Cosi alles fallen zu lassen um das per Handy zu deaktivieren - kein hoher WAF...

Wie gesagt, wünschenswert, kein Muss. Aber sicherlich eine sinnvolle Einstellmöglichkeit fürs Finetuning... ;)
FHEM auf Proxmox-VM (Intel NUC) mit 4xMapleCUN (433,3x868) und Jeelink, HUE, MiLight, Max!, SonOff, Zigbee, Alexa, uvm...

volschin

Du kannst aber auch einfach einen Watchdog in FHEM benutzen, der durch den Alarm getriggert erst verzögert die Sirene anschaltet.
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

DeeSPe

Zitat von: Tedious am 05 April 2018, 16:09:38
Besten Dank für das tolle Modul - ich steige erst so langsam in die Tiefen ein, aber das ist definitiv mächtig!

Aber ich hätte eine Bitte, wurde auch schon geäußert, aber bislang immer verwehrt. Einen einstellbaren Delay fürs Auslösen. Der Grund ist schnell erklärt:

Wenn man wie ich seit langem ein funktionierendes Residents-Modul nutzt kommt man in eine Zwickmühle. Denn wenn alle das Haus verlassen haben schaltet die Alarmanlage automatisch scharf, das ist sehr schick. Aber wenn man heim kommt und ein größeres Haus hat ist zumeist die Anwesenheitper BT-Tag noch nicht gegeben wenn man die Haustür aufschließt. Man löst also den Alarm zwangsläufig aus. In der Teststellung spiele ich nur mit Lichtern, das ist unproblematisch - gehen eben die Lampen an. Aber wenn später noch ein Signal ertönen soll habe ich ein Problem generiert.

Wünschenswert wäre ein in Sekunden einstellbarer Delay, der kann ja per Default gerne auf 0 stehen. Das würde es ermöglichen die Haustür zu betreten und die 10 oder 15 Sekunden zu puffern bis das System erkennt dass ich zuhause bin, das wäre ideal. Ansonsten müsste ich ein anderes Loch ins System brechen indem ich entweder einen Schalter außen versteckt installiere, die Haustüre aus der Überwachung rausnehme oder meine Frau bitte mit Einkäufen, einer quengelnden 3-jährigen und einem Säugling im Maxi-Cosi alles fallen zu lassen um das per Handy zu deaktivieren - kein hoher WAF...

Wie gesagt, wünschenswert, kein Muss. Aber sicherlich eine sinnvolle Einstellmöglichkeit fürs Finetuning... ;)

Das ist für HOMEMODE 2.0 vorgesehen.
Dort wird jeder Alarmsensor ein entsprechendes Attribut bekommen.

Ansonsten kann ich auch vorerst nur den Tipp geben in "HomeCMDalarmTriggered-on" ein at zu definieren welches dann nach der gewünschten Zeitspanne den richtigen Alarm auslöst. Bei der Deaktivierung der Alarmanlage könnte dann das/die entsprechende(n) at(s) gelöscht werden.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Tedious

Hi, danke für die Tips! Sensorbezogen wäre perfekt, es betrifft ja nur die Haustür - alle anderen können und sollen direkt auslösen ;)
FHEM auf Proxmox-VM (Intel NUC) mit 4xMapleCUN (433,3x868) und Jeelink, HUE, MiLight, Max!, SonOff, Zigbee, Alexa, uvm...

ComputerZOO

Hallo mal wieder,
ich habe da mal ne Frage, ich habe ein at, welcher mir stündlich mit:
my $WETTER = fhem("get sys.homemode weather long");
fhem ("setreading wetterInfo infoTextWeather $WETTER");

das aktuelle Wetter in ein Reading schreibt.
Der unangenehme Nebeneffekt ist, dass er mir das auch jedesmal im Log einträgt:
2018.04.30 15:09:03 3: get sys.homemode weather long : Es ist überwiegend wolkig bei 19.7 Grad und 67 Prozent Luftfeuchtigkeit. Die gefühlte Temperatur ist 16 Grad bei einer Windgeschwindigkeit von 18 Kilometern pro Stunde. Der Luftdruck ist  bei 996 Hektopascal.
Ich habe Verbose vom HOMEMODE schonmal testweise auf 2 gestellt, aber es ändert sich nix. Da andere Module dieses Verhalten nicht zeigen, gehe ich mal davon aus, das es an HOMEMODE liegt. Was kann man da machen?

DeeSPe

Zitat von: ComputerZOO am 30 April 2018, 15:20:31
Hallo mal wieder,
ich habe da mal ne Frage, ich habe ein at, welcher mir stündlich mit:
my $WETTER = fhem("get sys.homemode weather long");
fhem ("setreading wetterInfo infoTextWeather $WETTER");

das aktuelle Wetter in ein Reading schreibt.
Der unangenehme Nebeneffekt ist, dass er mir das auch jedesmal im Log einträgt:
2018.04.30 15:09:03 3: get sys.homemode weather long : Es ist überwiegend wolkig bei 19.7 Grad und 67 Prozent Luftfeuchtigkeit. Die gefühlte Temperatur ist 16 Grad bei einer Windgeschwindigkeit von 18 Kilometern pro Stunde. Der Luftdruck ist  bei 996 Hektopascal.
Ich habe Verbose vom HOMEMODE schonmal testweise auf 2 gestellt, aber es ändert sich nix. Da andere Module dieses Verhalten nicht zeigen, gehe ich mal davon aus, das es an HOMEMODE liegt. Was kann man da machen?

Ich glaube die ,,get" Befehle werden von ,,verbose" von ,,global" gesteuert.
Probier mal ob das geht.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

bastelfeak

Hallo,
ich bin jetzt auf ein Problem  gestoßen, was echt nervig ist: Die Fensterkontakte werden immer wieder neu als offen erkannt.

Ich habe FHEM auf dem Rasi mit dem Homematic Funkmodul
HMCCU Modul
piVCCU als virtuelle CCU2

Der Status selbst ändert sich laut Log-Datei nicht, das Homemode-Modul ist trotzdem der festen Überzeugung, dass sich etwas geändert hat.


Könnt ihr mir da helfen?

Viele Grüße
bastelf(r)eak

DeeSPe

Zitat von: bastelfeak am 09 Mai 2018, 22:48:33
Hallo,
ich bin jetzt auf ein Problem  gestoßen, was echt nervig ist: Die Fensterkontakte werden immer wieder neu als offen erkannt.

Ich habe FHEM auf dem Rasi mit dem Homematic Funkmodul
HMCCU Modul
piVCCU als virtuelle CCU2

Der Status selbst ändert sich laut Log-Datei nicht, das Homemode-Modul ist trotzdem der festen Überzeugung, dass sich etwas geändert hat.


Könnt ihr mir da helfen?

Viele Grüße
bastelf(r)eak

Ein entsprechend gesetztes event-on-change-reading in den Fensterkontakten sollte genügen.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Spezialtrick

Ich würde gerne sämtliche schaltbare Geräte und Lampen in meinem Haushalt abschalten, wenn keiner daheim ist oder alle Bewohner schlafen. Hierfür bieten sich ja die Attribute HomeCMDpresence-absent und HomeCMDmode-asleep-resident an.

Man könnte nun beide Attribute mit sämtlichen Geräten füllen, also set Gerät_A off; set Gerät_B off usw. Gibt es eine Möglichkeit die beiden Attribute automatisch zu befüllen, damit nicht jedes Gerät das dazukommt eingepflegt werden muss?

Ferner würde ich das Kommando off nur senden wollen, wenn das betreffende Gerät tatsächlich an ist. Lässt sich dies irgendwie einbauen? DOIF funktioniert in den Attributen ja leider nicht.
FHEM - Debmatic - Zigbee2MQTT - Homekit

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Spezialtrick

FHEM - Debmatic - Zigbee2MQTT - Homekit