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

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

Vorheriges Thema - Nächstes Thema

darkness

Kleine Ergänzug dazu.

Im HOMEMODE Modul habe ich das Attribut HomeSensorsContactOpenTimes 5 gesetzt.
Aber ein Fenstersensor ohne eigene HomeOpenTimes meldet trozdem nach 5 Minuten nichts.


ComputerZOO

#136
Guten Abend,
ich hätte da mal wieder nen Problem, und zwar habe ich 5 HomeCMDlocation-xxxxxx angelegt:

-arrival:
{
Log 3, "HomeCMDlocation-arrival: set";;
fhem "set fl.hue.group on";;
fhem "set fl.esp.eingang Bon";;
fhem "set sys.msg.pushover glance arrival";;
Log 3, "HomeCMDlocation-arrival: done";;
}

-bed:
{
Log 3, "HomeCMDlocation-bed: set";;
fhem "set sz.hue.color.tv.links on";;
fhem "set sys.msg.pushover glance bed";;
Log 3, "HomeCMDlocation-bed: done";;
}

-home:
{
Log 3, "HomeCMDlocation-home: set";;
fhem "set fl.hue.group off";;
fhem "set fl.esp.eingang Boff";;
fhem "set sys.msg.pushover glance home";;
Log 3, "HomeCMDlocation-home: done";;
}

-underway:
{
Log 3, "HomeCMDlocation-underway: set";;
fhem "set sys.msg.pushover glance underway";;
Log 3, "HomeCMDlocation-underway: done";;
}

-wayhome:
{
Log 3, "HomeCMDlocation-wayhome: set";;
fhem "set sys.msg.pushover glance wayhome";;
        Log 3, "HomeCMDlocation-wayhome: done";;
}


Das Problem, KEINES dieser Location-Commands funktioniert, obwohl der Status in den Readings richtig angezeigt wird. Muss ich in HomeCMDlocation auch noch etwas eintragen?

Edit: Ich habe es gerade mal ausprobiert indem ich die Location von Hand (durch die Dropdown-Liste) ändere, das funktioniert. Ich bleibe mal am Ball, mal sehen was passiert, wenn es später automatisch funktionieren soll...

DeeSPe

Zitat von: darkness am 26 Januar 2017, 19:34:52
Kleine Ergänzug dazu.

Im HOMEMODE Modul habe ich das Attribut HomeSensorsContactOpenTimes 5 gesetzt.
Aber ein Fenstersensor ohne eigene HomeOpenTimes meldet trozdem nach 5 Minuten nichts.

Also das funktioniert bei mir! :)
Hast Du bei dem entsprechenden Kontakt auch HomeOpenMaxTrigger größer als 0 gesetzt?

Bin wirklich froh dass das mal jemand ausgiebig testet!
Vielen Dank dafür!

Die Zeitenabfolge stimmt auch noch nicht habe ich gerade herausgefunden. Hatte da einen Denkfehler und das offensichtlich zu wenig getestet...
Habe es gerade in meiner Dev Version gefixt.

Mir macht gerade noch die Übersetzung in's Deutsch zu schaffen und die damit verbundenen Umbauten und Tests.
Das wollte ich im nächsten Update gerne mit liefern, aber evtl. nehme ich das erst mal raus um Euch das Update schneller zur Verfügung stellen zu können. ;)
Es sind mittlerweile einige Bugs gefixt und ein paar kleine Veränderungen und Feature Erweiterungen vorgenommen.
Und vor allem scheint es jetzt auch ohne doppelte Semikolon in den HomeCMD Attributen zu funktionieren. Das will ich aber noch mind. 2 Tage im Live System testen bevor ich es auf Euch los lasse.
Ganzzeilige Kommentare werden dann auch möglich sein.

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

darkness

Zitat von: DeeSPe am 26 Januar 2017, 21:48:46
Also das funktioniert bei mir! :)
Hast Du bei dem entsprechenden Kontakt auch HomeOpenMaxTrigger größer als 0 gesetzt?

Nein, das hatte ich nicht. Wäre es hier nicht sinnvoll einen  HomeSensortOpenMaxTrigger zu haben, der ebefalls für alle Sensoren gillt?
Teste ich morgen mal.

Zitat von: DeeSPe am 26 Januar 2017, 21:48:46
Bin wirklich froh dass das mal jemand ausgiebig testet!
Vielen Dank dafür!

Kein Problem. Das Modul passte gerade in eine meiner "Baustellen" :)


Freue mich schon auf eine neue Version.

DeeSPe

Zitat von: darkness am 26 Januar 2017, 22:25:34
Nein, das hatte ich nicht. Wäre es hier nicht sinnvoll einen  HomeSensortOpenMaxTrigger zu haben, der ebefalls für alle Sensoren gillt?

Genau das eben nicht!
Evtl. will man ja Kontakte gar nicht überwachen. Dann müsste man da wieder gegensteuern.
So oder so ist es Konfigurationsaufwand.
Und da ich meine Kontakte fast alle unterschiedlich konfiguriert habe, machte dieser Weg für mich mehr Sinn. 8)

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

darkness

Ok, alles eine Frage des Blickwinkels  :P

Vorhin habe ich noch meine Bewegungsmelder hinzugefügt.
Bei den HM-Sen-MDIR-WM55 ist mir aufgefallen, dass auch die Button erkannt werden. Also nicht nur die Bewegungssensoren. Ist das so gewollt?


DeeSPe

Zitat von: ComputerZOO am 26 Januar 2017, 21:23:15
Guten Abend,
ich hätte da mal wieder nen Problem, und zwar habe ich 5 HomeCMDlocation-xxxxxx angelegt:

-arrival:
{
Log 3, "HomeCMDlocation-arrival: set";;
fhem "set fl.hue.group on";;
fhem "set fl.esp.eingang Bon";;
fhem "set sys.msg.pushover glance arrival";;
Log 3, "HomeCMDlocation-arrival: done";;
}

-bed:
{
Log 3, "HomeCMDlocation-bed: set";;
fhem "set sz.hue.color.tv.links on";;
fhem "set sys.msg.pushover glance bed";;
Log 3, "HomeCMDlocation-bed: done";;
}

-home:
{
Log 3, "HomeCMDlocation-home: set";;
fhem "set fl.hue.group off";;
fhem "set fl.esp.eingang Boff";;
fhem "set sys.msg.pushover glance home";;
Log 3, "HomeCMDlocation-home: done";;
}

-underway:
{
Log 3, "HomeCMDlocation-underway: set";;
fhem "set sys.msg.pushover glance underway";;
Log 3, "HomeCMDlocation-underway: done";;
}

-wayhome:
{
Log 3, "HomeCMDlocation-wayhome: set";;
fhem "set sys.msg.pushover glance wayhome";;
        Log 3, "HomeCMDlocation-wayhome: done";;
}


Das Problem, KEINES dieser Location-Commands funktioniert, obwohl der Status in den Readings richtig angezeigt wird. Muss ich in HomeCMDlocation auch noch etwas eintragen?

Edit: Ich habe es gerade mal ausprobiert indem ich die Location von Hand (durch die Dropdown-Liste) ändere, das funktioniert. Ich bleibe mal am Ball, mal sehen was passiert, wenn es später automatisch funktionieren soll...

Das prüfe ich morgen mal genau!
Eigentlich sollte die "Automatik" auch nichts Anderes machen als "set <name> location xxxx" auszuführen, so wie Du es auch manuell gemacht hast.

Jetzt geht's erst mal in's Bett!!! :P

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

DeeSPe

Zitat von: darkness am 26 Januar 2017, 22:32:05
Ok, alles eine Frage des Blickwinkels  :P

Vorhin habe ich noch meine Bewegungsmelder hinzugefügt.
Bei den HM-Sen-MDIR-WM55 ist mir aufgefallen, dass auch die Button erkannt werden. Also nicht nur die Bewegungssensoren. Ist das so gewollt?

Wie? Auch die Buttons erkannt worden??
Erkläre mal genauer bitte (ich hab solche Dinger nicht)!

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

darkness

#143
Das sind quasi kombinierte Schalte und Bewegungsmelder.
Du hast einen Channel für die Bewegungsmelder und 2 Channel für den Schalter.

Internals:
  ...
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 flur.bw.oben_Btn_01
   channel_02 flur.bw.oben_Btn_02
   channel_03 flur.bw.oben_Motion
 


In deinem Modul sieht es dann so aus:

Der Channel 01 und 02 haben auch die Attribute HomeModeAlarmActive und HomeSensorLocation erhalten.


DeeSPe

Zitat von: darkness am 26 Januar 2017, 22:44:17
Das sind quasi kombinierte Schalte und Bewegungsmelder.
Du hast einen Channel für die Bewegungsmelder und 2 Channel für den Schalter.

Internals:
  ...
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 flur.bw.oben_Btn_01
   channel_02 flur.bw.oben_Btn_02
   channel_03 flur.bw.oben_Motion
 


In deinem Modul sieht es dann so aus:

Und was hast Du als Devspec in HomeSensorsMotion eingegeben?
Gib doch bloß den channel_03 mit!

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

darkness

Zum testen erstmal:

HomeSensorsMotion model=HM-(SEN|Sen)-MDIR-(WM55|SM)

Ja, schaue ich mir dann morgen mal genauer an.
War mir nur aufgefallen.


DeeSPe

Zitat von: darkness am 26 Januar 2017, 22:47:57
Zum testen erstmal:

HomeSensorsMotion model=HM-(SEN|Sen)-MDIR-(WM55|SM)

Du solltest den Devspec enger fassen!

Zeig mal bitte einen kompletten list der Internals.
Ist motion immer der selbe Channel?

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

darkness

Ja, ist immer channel_03. Zumindest bei meinen zwei.

Internals:
   DEF        3617C6
   HMLAN1_MSGCNT 29
   HMLAN1_RAWMSG E3617C6,0000,68FB900B,FF,FFB6,75A2413617C6BBA0AA03A24F70
   HMLAN1_RSSI -74
   HMLAN1_TIME 2017-01-26 22:48:14
   HMUSB_MSGCNT 29
   HMUSB_RAWMSG E3617C6,0000,7DC3A64D,FF,FFC1,75A2413617C6BBA0AA03A24F70
   HMUSB_RSSI -63
   HMUSB_TIME 2017-01-26 22:48:14
   IODev      HMLAN1
   LASTInputDev HMUSB
   MSGCNT     58
   NAME       flur.bw.unten
   NOTIFYDEV  global
   NR         29
   NTFY_ORDER 50-flur.bw.unten
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 flur.bw.unten_Btn_01
   channel_02 flur.bw.unten_Btn_02
   channel_03 flur.bw.unten_Motion
   lastMsg    No:75 - t:41 s:3617C6 d:BBA0AA 03A24F70
   protLastRcv 2017-01-26 22:48:14
   protSnd    58 last_at:2017-01-26 22:48:14
   protState  CMDs_done
   rssi_at_HMLAN1 max:-69 min:-88 avg:-73 cnt:29 lst:-74
   rssi_at_HMUSB max:-63 min:-66 avg:-64.31 cnt:29 lst:-63

DeeSPe

Zitat von: ComputerZOO am 26 Januar 2017, 21:23:15

Das Problem, KEINES dieser Location-Commands funktioniert, obwohl der Status in den Readings richtig angezeigt wird. Muss ich in HomeCMDlocation auch noch etwas eintragen?

Edit: Ich habe es gerade mal ausprobiert indem ich die Location von Hand (durch die Dropdown-Liste) ändere, das funktioniert. Ich bleibe mal am Ball, mal sehen was passiert, wenn es später automatisch funktionieren soll...

Du hast Recht!
Da hat sich ein Bug eingeschlichen!
Ist in meiner Dev Version jetzt gefixt.

Danke für das Feedback!

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

DeeSPe

Zitat von: darkness am 26 Januar 2017, 22:54:35
Ja, ist immer channel_03. Zumindest bei meinen zwei.

Internals:
   DEF        3617C6
   HMLAN1_MSGCNT 29
   HMLAN1_RAWMSG E3617C6,0000,68FB900B,FF,FFB6,75A2413617C6BBA0AA03A24F70
   HMLAN1_RSSI -74
   HMLAN1_TIME 2017-01-26 22:48:14
   HMUSB_MSGCNT 29
   HMUSB_RAWMSG E3617C6,0000,7DC3A64D,FF,FFC1,75A2413617C6BBA0AA03A24F70
   HMUSB_RSSI -63
   HMUSB_TIME 2017-01-26 22:48:14
   IODev      HMLAN1
   LASTInputDev HMUSB
   MSGCNT     58
   NAME       flur.bw.unten
   NOTIFYDEV  global
   NR         29
   NTFY_ORDER 50-flur.bw.unten
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 flur.bw.unten_Btn_01
   channel_02 flur.bw.unten_Btn_02
   channel_03 flur.bw.unten_Motion
   lastMsg    No:75 - t:41 s:3617C6 d:BBA0AA 03A24F70
   protLastRcv 2017-01-26 22:48:14
   protSnd    58 last_at:2017-01-26 22:48:14
   protState  CMDs_done
   rssi_at_HMLAN1 max:-69 min:-88 avg:-73 cnt:29 lst:-74
   rssi_at_HMUSB max:-63 min:-66 avg:-64.31 cnt:29 lst:-63


Wie gesagt! Devspec enger fassen oder eben direkt die Namen benutzen!
HomeSensorsMotion flur.bw.unten_Motion,kueche.bw.unten_Motion,....

Kannst ja mal in der Eingabezeile ein list probieren, ob zu es damit genau eingegrenzt bekommst, etwa so:
list TYPE=CUL_HM:FILTER=model=HM-S(EN|en)-MDIR-(WM55|SM):FILTER=channel_03=.*

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