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

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

Vorheriges Thema - Nächstes Thema

CoolTux

Hallo Julian,

Ist es Möglich zwei Residents Devices in Abhängigkeit zu einem weiteren Residents Device zu schalten? So wie Roommate zu Residents.

Ich möchte gerne Residents Eltern, Residents Kinder und Residents Wohnung haben. Oder muss ich in Residents Wohnung alle Roommate's von Residents Eltern und Residents Kinder eintragen?


Grüße
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

Loredo

Die Möglichkeit gleiche Devices miteinander zu verschachteln habe ich absichtlich verworfen, da es dann zu komplex wird.
Auch wenn der erste Implus ist, dass man mehrere RESIDENTS Devices hintereinander kaskadieren können möchte, so hilft etwas umdenken auch dabei zu sehen, dass man das selbe auch erreichen kann, wenn die ROOMMATE/GUEST Devices einfach in mehreren RESIDENTS Devices gleichzeitig Mitglied sein können.


Ein Beispiel für das, was du möchtest, findet sich sogar in der CommandRef:




# Complex family structure
define rr_Manfred ROOMMATE rgr_Residents,rgr_Parents # Parent
define rr_Lisa ROOMMATE rgr_Residents,rgr_Parents # Parent
define rr_Rick ROOMMATE rgr_Residents,rgr_Children # Child1
define rr_Alex ROOMMATE rgr_Residents,rgr_Children # Child2



Übrigens nur so rein als Hinweis: Ein RESIDENTS Device als "Wohnung" zu führen ist rein syntaktisch nicht ganz richtig, da es nicht den wirklichen Hausstatus wiedergibt (also z.B. in welchem "Modus" sich das Haus gerade befindet - also sowas wie Morgen/Tag/Abend/Nacht), sondern lediglich den Status seiner Bewohner.


Für den tatsächlichen Hausstatus war/ist noch immer ein Modul "HOMESTATE" o.ä. vorgesehen. Allerdings feile ich da noch immer an vielerlei Logik und schaue auch noch, ob es überhaupt noch ein eigenständiges Modul sein muss. Mit DOIF lässt sich auch sehr viel machen (aber noch nicht 100%ig alles). Ich überlege also mehr ähnlich wie beim Wakeuptimer eine Art Framework/Template bereitzustellen, welches dann eben genauso anpassbar ist und direkt auf die Zusammenarbeit mit RESIDENTS/ROOMMATE/GUEST ausgelegt ist. Das ist aber noch ein langer Weg, ich komme einfach nicht dazu das rund zu machen (auch zum Leidwesen meiner eigenen Hausautomation).






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

CoolTux

Vielen Dank für Deine ausführliche Antwort. Naja es heißt ja nicht direkt Wohnung bei mir sondern so wie meine Straße   ;D
Aber ich weiß was Du meinst und so führe ich es auch Gedanklich.



Grüße
Leon
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

Per

Zitat von: Per am 31 Januar 2016, 22:10:59Könnte ich event-on-change-reading so einstellen, dass ich zwar die Zeiten abfragen kann, aber dennoch keine Events generiere?
Da ich keine Antwort bekommen habe, scheint es nicht zu gehen.

Zitat von: Per am 31 Januar 2016, 22:10:59Mit attr rr_noDuration 1 stelle ich die ganze Duration-Geschichte auf aus.
Wäre es möglich, mit attr rr_noDuration 2 (oder halt einer anderen Syntax) die Abfragen selbst an, aber die Events auszuschalten?

Edit: Jetzt hat sich doch eine Lösung ergeben! Danke.

SirMarco

Kann jemand einem Neuling weiterhelfen?
Möchte gerne bei HomeStatus Änderung "absent" einen Befehl ausführen. Wird das auch über ein Macro geregelt?

CoolTux

Du kannst ein vorhandenes Macro kopieren und für absent anpassen. Denk auch daran den Watchdog mit zu kopieren.
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

Loredo

Über DOIF oder Notify. Schau mal in die CommandRef.


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

SirMarco

Zitat von: CoolTux am 23 April 2016, 17:29:45
Du kannst ein vorhandenes Macro kopieren und für absent anpassen. Denk auch daran den Watchdog mit zu kopieren.

Danke das war die Lösung, manchmal echt einfach  ;)

Nun bekomme ich im Log die Meldung

2016.04.23 17:52:29 2: ROOMMATE set rr_Marco absent
2016.04.23 17:52:33 3: Watchdog wd_rr_Marco_absent triggered
2016.04.23 17:52:33 2: IT set Flex_2 off
2016.04.23 17:52:33 3: Please define wd_rr_Marco_absend first


wd_rr_Marco_absend ist die Kopie von wd_rr_Marco_asleep

Die DEF wurden angepasst
rr_Marco:absent 00:00:04 rr_Marco:(home|absent|gone|none|gotosleep|awoken) trigger Macro_rr_Marco_absent; setstate wd_rr_Marco_absend defined

Wie kann ich prüfen warum der watchdog nicht auf defined zurück gesetzt wird?

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

CoolTux

Guten Morgen Julian,

Ich wollte heute mal Dein msg Befehl im wakeuptime Skript aus probieren. Aber irgendwie meckert er wegen dem @


Macro_rr_Thomas_wakeuptimer1 return value: Global symbol "@Sonos_Schlafzimmer" requires explicit package name at (eval 24470) line 55.


So sieht die Zeile im Skript aus


fhem "define atTmp_7_$NAME at +01:00:00 msg audio @Sonos_Schlafzimmer |Hint| Guten Morgen Thomas. Es ist ".$EVTPART1." Uhr, Zeit zum aufstehen!


Irgendwie ja auch verständlich. Für Perl ist das @ ja eigentlich ein Array. Welches aber im Wakeup script global vorhanden sein muß, aber irgendwie ist es das im Script nicht.

Ne Idee?


Grüße
Leon
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

Loredo

im Perl Kontext muss ein @ als \@ escaped werden.
Dazu ist auch ein Beispiel im Default-Macro.
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

CoolTux

Hallo Julian,

Mir war so als hätte ich das auch schon getestet. Mache es aber heute oder morgen noch mal so und teste. Frage ist nur wird das \ dann nicht auch in den define des at mit übertragen und somit dann im FHEM Kontext? Ich schaue mir mal das default Makro an. Muss mal sehen wo das sein soll. Lach.
Es gibt ja ein Beispiel genau so wie ich es habe, daher dachte ich das irgendwas fehlt oder ich übersehen habe.
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

Loredo

Die Beispiel-Macros waren da wohl auch nicht ganz korrekt bisher, ich hatte zwei \\ zu wenig im File RESIDENTStk.pm und das gerade korrigiert, damit die Vorlagen auch akkurat sind ;-)
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

CoolTux

Cool. Firma Dankt.
Ich teste dann die Tage mal.


Beste Grüße
Leon
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

Otto

Gib es eine Möglichkeit den RESIDENTS Status gotosleep nicht zu schalten wenn die ROOMMATES den Status gotosleep und der andere absent haben.

Ich fahre alle Rollos beim RESIDENTS Status gotosleep runter aber ein ROOMMATES ist ja noch absent, und somit sollten die Rollos noch nicht runterfahren.

Gruss Otto

.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.

docker - homematic