Hi,
über das PRESENCE-Modul kann ich mir bereits die Anwesenheit von mir und meiner Frau via FHEM anzeigen lassen.
Kann mir jmd. evtl. ein paar Schlagworte zuschmeissen, damit ich so etwas zusammengebastelt bekomme:
if(ich oder meine Frau daheim) Lampe an;
else Lampe aus;
Suchen kann ich dann allein. :)
Gruß Chris
structure ?
homemode?
readingsgroup?
Hi!
Falls du für structure ein Beispiel brauchst:
define st_JemandAnwesend structure JemandAnwesend IchDaheim FrauDaheim
attr st_JemandAnwesend clientstate_behavior relative
attr st_JemandAnwesend clientstate_priority present|1 absent|0
attr st_JemandAnwesend event-on-change-reading state
LG Stephan.
Hallo Stephan,
vielen Dank für das Struct. Kannst Du mir evtl. sagen, wie ich mein Reading "presence" (present oder absent) aus meinem PRESENCE-"device" in das Struct einbinden kann?
Daraus müsste sich ja dann "IchDaheim" ergeben.
Gruß Chris
Wie heissen denn deine beiden PRESENCE Devices für dich und deine Frau?
Jetzt hab ich's. Deine Frage war zielführend. ;D
Läuft.
Vielen Dank!
Mein Gefühl sagt mir, dass ich, solange ich noch nicht mal die Basics von Fhem beherrsche mich auch (noch) nicht mit Homemode beschäftigen sollte. Liege ich da richtig? Erstmal "händisch" Dinge zusammenbauen..
Gruß Chris
Ich kann Dir nur wärmstens die Residents Modulfamilie empfehlen. Damit kann man alles abdecken was das virtuelle wiederspiegeln von Anwesenheit an geht.
Ok, doch zuerst muss ich das hier gelöst bekommen:
Ich möchte erreichen, dass der ESP8266 einer S20 namens ug01, abhängig davon, ob das Device jmdDaheim present ausgibt, ein- oder ausschaltet. Hierfür habe mir folgendes Notify geschrieben:
define n_jmdDaheim notify jmdDaheim {if ("$EVENT" eq "present" ) {fhem("set ug01 gpio 12 on")} else {fhem("set ug01 gpio 12 off")}}
Leider scheint es nicht zu funktionieren, weiss aber nicht warum.
Vielleicht kann mich jmd. erleuchten. Insbesondere wie "man" in Fhem am sinnvollsten debuggt interessiert mich hierbei.
Gruß Chris
Schau im Eventmonitor nach wie der Event aus schaut. Dein Notify springt aber an, oder?
Mach bitte ein list DEVICENAME und Gib die Ausgabe hier an.
Zitatwie "man" in Fhem am sinnvollsten debuggt
Das einfachste ist, ein paar Log Befhele hinzufügen.
define n_jmdDaheim notify jmdDaheim { Log3 $NAME, 1, "Trigg name=$NAME event=$EVENT part1=$EVTPART0 part2=$EVTPART1" }
Was ist ein S20?
Ich schalte für jmdDaheim zwischen folgenden zwei Zuständen hin und her:
2018-06-04 20:17:04 structure jmdDaheim present
2018-06-04 20:17:26 structure jmdDaheim undefined
Notify scheint nicht anzuspringen, da nicht im Eventmonitor zu finden.
list n_jmdDaheim:
Internals:
CFGFN
DEF jmdDaheim {if ("$EVENT" eq "present" ) {fhem("set ug01 gpio 12 on")} else {fhem("set ug01 gpio 12 off")}}
NAME n_jmdDaheim
NOTIFYDEV jmdDaheim
NR 8004
NTFY_ORDER 50-n_jmdDaheim
REGEXP jmdDaheim
STATE 2018-06-04 20:17:26
TYPE notify
READINGS:
2018-06-04 19:54:13 state active
Attributes:
Gruß Chris
Notify ist abgesprungen.
Du solltest für das Devices jmdDaheim eigentlich Events im Eventmonitor sehen.
Ja genau. So interpretiere ich das als Laie ebenso.
Gruß Chris
Hy habe das mit 2 G-Tags am laufen
defmod Sonja_Cam PRESENCE lan-bluetooth 7C:2F:80:96:3D:CE 192.168.178.113:5333 10 60
attr Sonja_Cam userattr Bewohner Bewohner_map Sonja Sonja_map structexclude
attr Sonja_Cam Bewohner structure_Bewohner
attr Sonja_Cam event-on-change-reading state
setstate Sonja_Cam present
setstate Sonja_Cam 2018-06-04 20:25:00 .absenceThresholdCounter 0
setstate Sonja_Cam 2018-06-04 20:25:00 .presenceThresholdCounter 0
setstate Sonja_Cam 2018-06-04 14:50:00 command_accepted yes
setstate Sonja_Cam 2018-06-04 20:25:00 daemon lepresenced V0.83
setstate Sonja_Cam 2018-06-04 20:25:00 device_name Gigaset G-tag
setstate Sonja_Cam 2018-06-04 20:25:00 model lan-lepresenced
setstate Sonja_Cam 2018-06-04 20:25:00 presence present
setstate Sonja_Cam 2018-06-04 20:25:00 rssi -86
setstate Sonja_Cam 2018-06-04 20:25:00 state present
defmod structure_Sonja structure Sonja Sonja_Cam Sonja_Cam1
attr structure_Sonja userattr Bewohner Bewohner_map structexclude
attr structure_Sonja Bewohner structure_Bewohner
attr structure_Sonja clientstate_behavior relative
attr structure_Sonja clientstate_priority present|1 absent|0
attr structure_Sonja event-on-change-reading state
attr structure_Sonja room Anwesenheit
setstate structure_Sonja present
setstate structure_Sonja 2018-06-04 14:50:00 LastDevice Sonja_Cam
setstate structure_Sonja 2018-06-04 14:50:00 LastDevice_Abs Sonja_Cam
setstate structure_Sonja 2018-06-04 14:50:00 state present
defmod structure_Bewohner structure Bewohner structure_Sven structure_Sonja
attr structure_Bewohner clientstate_behavior relative
attr structure_Bewohner clientstate_priority present|1 absent|0
attr structure_Bewohner event-on-change-reading state
attr structure_Bewohner room Anwesenheit
setstate structure_Bewohner present
setstate structure_Bewohner 2018-06-04 14:48:50 LastDevice structure_Sonja
setstate structure_Bewohner 2018-06-04 14:48:50 LastDevice_Abs Sonja_Cam1
setstate structure_Bewohner 2018-06-04 14:48:50 state present
defmod Licht_AN DOIF ([?Lichtsteuerung:light] < 5 and [structure_Bewohner] eq "present") (set ESPEasy_Sonoff3_PUMP on)
attr Licht_AN room DOIF
setstate Licht_AN cmd_2
setstate Licht_AN 2018-06-04 14:31:06 Device structure_Bewohner
setstate Licht_AN 2018-05-14 05:43:53 cmd 2
setstate Licht_AN 2018-05-14 05:43:53 cmd_event structure_Bewohner
setstate Licht_AN 2018-05-14 05:43:53 cmd_nr 2
setstate Licht_AN 2018-06-04 14:31:06 e_structure_Bewohner_STATE present
setstate Licht_AN 2018-05-12 11:26:11 mode enabled
setstate Licht_AN 2018-05-14 05:43:53 state cmd_2
defmod Alles_aus notify structure_Bewohner:absent.* set HUEGroup0,LIGHTIFYGroup0,BOSE_D05FB8AAE204,BOSE_50722498B361,BOSE_50722498905A,ESPEasy_Sonoff2_PUMP,ESPEasy_Sonoff3_PUMP,ESPEasy_Sonoff4_PUMP,ESPEasy_Sonoff5_PUMP,ESPEasy_Sonoff6_PUMP,ESPEasy_Sonoff7_PUMP,ESPEasy_Sonoff8_PUMP,ESPEasy_Sonoff9_PUMP,ESPEasy_Sonoff10_PUMP,GHoma_946922 off
attr Alles_aus room DOIF
attr Alles_aus verbose 1
setstate Alles_aus active
setstate Alles_aus 2018-06-04 14:48:43 state active
eventuell ist da ja was hilfreiches dabei.
Hab's selber rausgefunden.
Hier die berichtigte Zeile:
define n_jmdDaheim notify jmdDaheim {if ("$EVENT" eq "present" ) {fhem("set ug01 on")} else {fhem("set ug01 off")}}
Gruß Chris