Modulfamilie für Bewohner / 10_RESIDENTS 20_ROOMMATE 20_GUEST

Begonnen von Loredo, 19 Januar 2014, 23:12:34

Vorheriges Thema - Nächstes Thema

der-Lolo

Hm - haben wir aneinander vorbei geredet?

Ich habe bereits zwei dummys gesetzt -


define wd_iPhone_away watchdog iPhone:absent 00:03 iPhone:present setstate wd_iPhone_here defined ;; setstate Micha absent ;; {Log 1, "Micha ist gegangen..."}
attr wd_iPhone_away regexp1WontReactivate 1

define wd_iPhone_here watchdog iPhone:present 00:00 iPhone:absent setstate wd_iPhone_away defined ;; setstate Micha present ;; {Log 1, "Micha ist nach Hause gekommen..."}
attr wd_iPhone_here regexp1WontReactivate 1

define Micha dummy
attr Micha event-on-change-reading state
attr Micha room develop


Roommate Micha reagiert aber nicht auf Änderung des Bluetooth Zustandes.
Als schnellschuss versuchte ich gerade setstate Micha in setstate rr_Micha zu ändern - aber auch das brachte keine Veränderung in der Ansicht Residents

Loredo

Dein Dummy musst du durch ein ROOMMATE Objekt ersetzen, denn es ist überflüssig. rr_Micha wurde ja bei dir schon angelegt. Änderungen dort werden im RESIDENTS Objekt wiedergegeben.


Notifies kann man in der aktuell öffentlichen Version noch nicht zuverlässig auf die RESIDENTS/ROOMMATE/GUEST Objekte setzen (siehe http://forum.fhem.de/index.php/topic,19518.0.html). Ich habe in meiner Entwicklerversion das Problem schon gelöst, muss aber noch ein paar Bugs fixen, bevor ich die hoch lade.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

der-Lolo

Ok - wie gebe ich den Bluetooth zustand an das Roommate Objekt weiter?
setstate rr_Micha present funktioniert nicht - setpresence kann ich ja sicher nicht verwenden - oder?

Loredo

Zitat von: der-Lolo am 02 Februar 2014, 13:00:19
Ok - wie gebe ich den Bluetooth zustand an das Roommate Objekt weiter?
setstate rr_Micha present funktioniert nicht - setpresent kann ich ja sicher nicht verwenden - oder?


Ganz einfach:


set rr_Micha home
set rr_Micha absent


Es ist ein eigenes, richtiges Modul und so will es auch behandelt werden. Es ist kein doofes Dummy Device ;-)
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

der-Lolo

ok - das funktioniert...
gibst Du hier kurz bescheid wenn ich auf abwesend beider Bewohner per notify die Heizung regeln kann?


Loredo

Ich habe jetzt Version 0.0.5 hochgeladen:
http://forum.fhem.de/index.php/topic,19040.msg127329.html#msg127329


Neuerungen überschlagen:

       
  • Trigger über Notify- oder Watchdog-Modul werden korrekt ausgelöst
  • implizite Änderung der Location bei Statuswechsel zu home, absent oder gone
    - konfigurierbar über Attribute r*_locationHome, r*_locationUnderway
  • implizite Änderung des Status bei Lokationswechsel:
    - Lokation "underway" setzt den Status automatisch auf "absent", wenn der Status nicht bereits "gone" ist
    - Lokation "home" setzt den Status automatisch auf "home", wenn "presence" zuvor "absent" war
    - konfigurierbar über Attribute r*_locationHome, r*_locationUnderway
  • lastLocation wird nur aktualisiert, wenn diese Lokation nicht "underway" ist bzw. im Attribut r*_locationUnderway aufgeführt ist. Somit bleibt die tatsächlich zuletzt besuchte Lokation erhalten und der Status "unterwegs" wird nicht historisch behalten
  • "Auf dem Weg nach Hause"-Tracker
    - das Verlassen bestimmter Lokationen führt dazu, dass das Reading "wayhome" auf 1 gesetzt wird; auf welche Lokationen reagiert werden soll, kann mit Attribut r*_locationWayhome gesteuert werden
    - das explizite setzen der Lokation auf "wayhome" hat den gleichen Effekt
  • lastMood wird nur aktualisiert, wenn mood nicht "-" ist
  • "set device mood toggle" führt jetzt dazu, dass der aktuelle Mood mit dem vorherigen Mood getauscht wird
  • Diverse Statistik-Readings
    - letzte Ankunft (lastArrival)
    - letztes Verlassen (lastDeparture)
    - letztes Schlafengehen (lastSleep)
    - letztes Aufwachen (lastAwake)
    - letzte Dauer der Abwesenheit (lastDurAbsence)
    - letzte Dauer der Anwesenheit (lastDurPresence)
    - letzte Schlafdauer (lastDurSleep)
Die Statistiken lastDur* kann man sicherlich gut loggen und einen entsprechenden Plot daraus bauen. Da bin ich aber nicht so der Experte. Wer also Lust hat, darf hier sehr gerne unterstützen!


Gruß
Julian
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Loredo

Zitat von: der-Lolo am 02 Februar 2014, 13:26:04
ok - das funktioniert...
gibst Du hier kurz bescheid wenn ich auf abwesend beider Bewohner per notify die Heizung regeln kann?


Bescheid.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Loredo

Achso:

Wer das Geofancy-Modul einsetzt, braucht jetzt nur noch ein ganz einfaches Notify - z.B.



define n_rr_Julian notify geofancy:currLoc_Julian.* set rr_Julian location $EVTPART1



Ich habe meine Heimat-Lokation in der Geofancy.app mit dem ID-Namen "home" versehen. Der Status wird dann automatisch auf "home" gesetzt, wenn ich diese Lokation erreiche. Das Geofancy-Modul schickt als Lokation beim Verlassen "underway" und auch damit wird der Status automatisch auf "absent" gesetzt.


Über das Attribut r*_locationHome kann man mehrere Orte durch Leerzeichen getrennt eingeben, bei dessen erreichen der Status automatisch auf "home" gesetzt werden soll.
Über das Attribut r*_locationUnderway kann man mehrere Orte durch Leerzeichen getrennt eingeben, bei dessen verlassen der Status automatisch auf "absent" gesetzt werden soll.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Loredo

Hallo zusammen,


ich habe mich entschieden, die aktuellen Versionen von 10_RESIDENTS, 20_ROOMMATE und 20_GUEST ins SVN als Version 1.0 einzuchecken  8)


Momentan überlege ich mir noch viele Details für das HOMESTATE Modul und ich dachte mir, vielleicht kommt auch noch mehr Input von euch, wenn ich die anderen Module schonmal offiziell bereit stelle. Sie sind ja auch in der aktuellen Form bereits sehr nützlich wie ich finde  ;)




Gruß
Julian
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

det.

Hallo Loredo,
Habe gestern Dein GEOFANCY mit Deinen neuen Modulen gekoppelt. Ist wirklich sehr gelungen und klappt auf Anhieb - erster live Test heute morgen beim Brötchen holen. Vorteil sehe ich u.a. im Wegfall der Bluetooth Lösung zur Ermittlung der iPhone Anwesenheit, die ja ohne Verrenkungen durch mailcheck über Freunde App oder zusätzlichen Einsatz von GEOFANCY erst merkt dass man daheim ist, wenn man bereits drin ist. D.h. Mail kommt, da die Eingangstür geöffnet wurde ( nervig ).
Was meinem Spieltrieb noch Grenzen setzt, sind die mood Attribute und der gotosleep State. Kannst Du bitte dazu mal ein Beispiel geben, wie das zu verwenden ist - speziell eine Idee wie FHEM merkt, dass ich auf dem Weg ins Bett bin. Was ich mit Letzterem schalten könnte ist mir klar, aber einen Drucksensor unter ein Bettbein konnte ich meiner Frau noch nicht unterschieben ( Schlafzimmer ist bei uns sensorfreie Zone ).
LG
det.

Loredo

Zitat von: det. am 09 Februar 2014, 11:10:29...aber einen Drucksensor unter ein Bettbein konnte ich meiner Frau noch nicht unterschieben ( Schlafzimmer ist bei uns sensorfreie Zone ).


Ich konnte mir ein Grinsen nicht verkneifen  ;D

Zitat von: det. am 09 Februar 2014, 11:10:29Habe gestern Dein GEOFANCY mit Deinen neuen Modulen gekoppelt. Ist wirklich sehr gelungen und klappt auf Anhieb - erster live Test heute morgen beim Brötchen holen. Vorteil sehe ich u.a. im Wegfall der Bluetooth Lösung zur Ermittlung der iPhone Anwesenheit, die ja ohne Verrenkungen durch mailcheck über Freunde App oder zusätzlichen Einsatz von GEOFANCY erst merkt dass man daheim ist, wenn man bereits drin ist. D.h. Mail kommt, da die Eingangstür geöffnet wurde ( nervig ).


Ich überlege auch grad, ob ich die wackelige WLAN Konstruktion bei mir ganz abschaffe (nutze keine Fritzbox als AP und frage daher meinen TomatoUSB AccessPoint via SNMP ab und leider verschwindet das iPhone trotz aktiviertem WLAN Sync viel zu häufig und zu lange, so dass selbst Watchdog statt Notify als Trigger oftmals nicht genügt). Hab mich bisher nicht getraut, weil die Geofancy.app so unzuverlässig war. Die Geofency.app muss ich erstmal noch länger testen. Es kommt beispielsweise häufiger vor, dass ich beim Verlassen oder Betreten der Zone telefoniere und je nach Netzempfang bin ich dann ggf. im GSM Netz eingebucht, so dass parallel keine Internetverbindung via EDGE möglich ist und der Webhook in dem Moment nicht abgesetzt werden kann. Dem Entwickler von Geofancy.app hatte ich das bereits gesagt, er wollte Abhilfe schaffen, hat aber alles nur verschlimmbessert. Dem Geofency.app Entwickler muss ich das erst noch sagen  ;)
Aber ich schweife ab...


Zitat von: det. am 09 Februar 2014, 11:10:29Was meinem Spieltrieb noch Grenzen setzt, sind die mood Attribute und der gotosleep State. Kannst Du bitte dazu mal ein Beispiel geben, wie das zu verwenden ist - speziell eine Idee wie FHEM merkt, dass ich auf dem Weg ins Bett bin. Was ich mit Letzterem schalten könnte ist mir klar, aber einen Drucksensor unter ein Bettbein konnte ich meiner Frau noch nicht unterschieben ( Schlafzimmer ist bei uns sensorfreie Zone ).


Also gedacht habe ich mir bisher folgendes:

Mood kann man eigentlich als universelles Leerfeld ansehen. Es muss nicht zwingend den Gemütszustand widergeben, man kann die Liste ja anpassen und da alles reinschreiben, was man möchte.
Die Grundidee war die, dass jeder Mitbewohner dem Haus mitteilen kann, wie es zum aktuellen Zeitpunkt auf ihn reagieren soll. Der Gemütszustand erschien mir da sinnvoll. Beispielsweise könnten die HUE LED Lampen entsprechend andere Farben annehmen, wenn ich gestresst bin oder wenn ich mich entspannen möchte. Ebenso wäre es denkbar, dass die Farben sich entsprechend verändern, wenn ich einen bestimmten Raum betrete oder verlasse (wobei das automatische Tracking da wohl noch schwierig ist; iBeacons könnten hier die Lösung sein, aber ich hab noch nichts damit probiert). Man kann aber auch die Heizung unterschiedlich warm stellen; wenn mir kalt ist, wird die Heizung eben höher gestellt und die LEDs werden etwas 'wärmer' gestellt oder so  8)
Wenn ein Mitbewohner noch "sleepy" ist könnte man genauso das Licht anders dimmen, als wenn er bereits voll wach ist. Ich glaub da kann man noch lange drüber nachdenken und irgendwem wird immer etwas Neues einfallen. Ich bin da sehr gespannt auf die Kreativität anderer!


Der State gotosleep ist sinnvollerweise nicht automatisch zu setzen (mir fällt keine zuverlässige Methode ein; Drucksensoren sind wirklich extremer overkill und außerdem bin ich ja dann schon am/im Bett...).
Gedacht ist, dass man den Status gotosleep manuell dann setzt (über Handy, Tablet, gekoppelte Fernbedienung, Taster oder whatever), wenn man beispielsweise im Wohnzimmer sitzt und sich bettfein machen will. Die technischen Geräte (TV etc) könnten ausgeschaltet werden und eine bettfreundliche Lichtstimmung könnte abgerufen werden (bei mir wird die HUE Lampe am Nachttisch auf 2000 Kelvin gestellt), die einen zunächst ins Bad und anschließend ins Bett weiter trägt. Je nach Lebensgewohnheit kann man das unterschiedlich handhaben; wenn man immer zusammen ins Bett geht, kann man das auf Grundlage einer RESIDENTS Gruppe schalten, man kann aber auch pro Mitbewohner entsprechend etwas schalten. Der TV sollte vielleicht an bleiben, wenn man schonmal vor geht und die Lichtstimmung sollte nur außerhalb vom Wohnzimmer angepasst werden etc....
Im Bett angekommen habe ich rechts und links jeweils einen Funk-Taster installiert. Die obere Taste steuert die HUE Nachttischlampe (welche mich morgens auch mit 5300 Kelvin weckt). Die untere Taste schaltet vom Status gotosleep weiter zu asleep. Danach geht per Watchdog nach 5 Sekunden das Licht aus und der MP3 Funkgong wünscht mir eine gute Nacht. Morgens wird der gleiche Schalter betätigt, sobald ich am Aufwachen bin und der Status wechselt zu "awoken". Das wäre der Zeitpunkt Kaffeemaschine zu starten, die Lichtstimmung etwas vom Aufwachlicht anzupassen, Musik einzuschalten oder was auch immer. Nach 75 Minuten wechselt der Status bei mir dann automatisch nach "home" weil ich annehme, dass ich dann "betriebsbereit" bin  ;)


Darin hinein spielt bei mir auch noch der Haus-Status. Das Modul dafür schreibe ich gerade noch, es wird wohl umfangreicher als ich zunächst dachte. Grundsätzlich unterscheide ich bei mir jetzt schon zwischen Morgen, Tag, Abend und Nacht. Die Stati werden teilweise durch Weckprogramme beeinflusst. Das erkläre ich aber ein andermal und vor allem dann, wenn ich das HOMESTATE Modul entsprechend so habe. Mein eigener Workflow wird sich da wohl auch nochmal ändern. Wie das so ist, man muss sich erstmal selbst klar werden, bevor man es dann in ein Modul (was ja auch andere Wünsche als nur meine berücksichtigen können muss) gießt und es der Weltöffentlichkeit preis gibt  ;D
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

justme1968

das mit dem drucksensor ist gar nicht zum grinsen. ich denke das ist eine sehr einfache methode automatisch rauszufinden ob jemand im bett liegt. ich hab schon ein paar mal gelesen das dazu z.b. eine sitzbelegungsmatte aus einem autositz verwendet wird.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

fhainz

Sowas hab ich mir auch schon überlegt. Ich denke da eher an einen endschalter der an den lattenrost montiert wird.

Loredo

Zitat von: justme1968 am 09 Februar 2014, 13:28:23
das mit dem drucksensor ist gar nicht zum grinsen. ich denke das ist eine sehr einfache methode automatisch rauszufinden ob jemand im bett liegt. ich hab schon ein paar mal gelesen das dazu z.b. eine sitzbelegungsmatte aus einem autositz verwendet wird.


Das kommt wohl drauf an, ob man sich im Schlafzimmer nur zum Schlafen aufhält (und ich meine nichtmals unbedingt zwischenmenschliche Aktivitäten  ;) ). In meinem Münchner Apartment nutze ich effizienterweise das Schlafzimmer tagsüber auch als Arbeitszimmer. Da kommt es auch mal vor, dass man sich einfach so aufs Bett setzt oder dort Dinge ablegt. Eine Druckmatte ist also nicht für jeden etwas denke ich  8)
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

justme1968

nicht alleine. aber mit fhem zusammen. ich mache z.b. nachts meine handy aus. mit der matte und dem handyzustand könnte ich perfekt zwischen nicht zu hause und schlafen unterscheiden.

alleine nützt es also nicht unbedingt aber in kombination mit tageszeit oder helligkeit.

und mir fällt noch einiges ein. von licht/radio im bad einschalten beim aufstehen, ...

gruss
  andre

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968