Manuelle Übersteuerung der automatischen Anwesenheitserkennung

Begonnen von Fredi69, 06 November 2015, 07:41:54

Vorheriges Thema - Nächstes Thema

Fredi69

Ich habe einen Dummy der den Anwesenheitsstatus darstellt (anwesend, abwesend).
Dieser wird durch Presence der Smartphones gesteuert.
Jetzt kann es natürlich vorkommen, dass auf Grund technischer Probleme (z.B. Akku leer) der Anwesenheitsstatus manuell auf "anwesend" gestellt werden muss.
Es sollte aber irgendwie, irgendwann wieder die "Automatik" greifen, wie macht Ihr das?

Vielen Dank
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

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

Fredi69

Ich auch, aber wie kann ich damit das beschriebene Problem lösen?
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

CoolTux

Na irgendwann wird doch Dein Smartphone wieder aktiv sein und dem entsprechend wird Dein Status dann über presence wieder gesetzt.

Ansonsten gebe mir mal ein genaues Beispiel oder ein Vorgang der Dir passiert ist wo Du nun ein Problem siehst.
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

Fredi69

Wie hast Du es denn umgesetzt, ist das schon irgendwo beschrieben?
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Fredi69

Übergibst Du den Presence Status an die einzelnen Residents in Roomate? Wie steuerst Du dann "Keiner im Haus" und wie kannst Du das manuell übersteuern und irgendwann wieder auf "Automatik" gehen?
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

CoolTux

Gegenfrage. Hast Du Dich damit mal genauer beschäftigt. Bisschen im Wiki gelesen?

Nicht Residents steuert Roommate, sondern anders rum.


Auch wenn vielleicht bekannt schreibe ich das jetzt einfach mal.

Residents bildet virtuell die/das Wohnung/Haus ab. Roommate äquivalent diee Bewohner.
Der Zustand des Hauses ergibt sich aus den Zuständen der Bewohner. Sobald alle Roommats absent sind geht automatisch Residents auf absent.
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

Fredi69

Zitat von: CoolTux am 06 November 2015, 09:51:54
Gegenfrage. Hast Du Dich damit mal genauer beschäftigt. Bisschen im Wiki gelesen?

Nein, ich habe mich damit nicht beschäftigt und auch nichts gelesen, ich frage immer gleich und hoffe auf eine fertige Lösung die ich per Copy und Paste einfügen kann.  ;)

Wie hast Du die Verbindung zwischen den einzelnen Presence und Roommates hergestellt?
Bei mir übergebe ich den Presence Status über ein notify an den Roomate Status.
Wenn ich jetzt von Hand den Roomate Status überschreibe, wie verhindere ich den direkten Wechsel zurück durch das notify und wie kommt man am Besten auf die Automatik zurück?

Vielen Dank
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

gero

Bei mir wird die Temperature der Heizung und einiges anderes in Abhängigkeit von der Anwesenheit gesteuert.
Die Anwesenheit von meiner Frau und mir werden zuverlässig über PRESENCE Devices getrigget. Aber manchmal (Babysitter ist da) möchte ich die Regelung außer Kraft setzen.

Meine Lösung besteht aus zwei PRESENCE Devices:

presence.motog2:
define presence.motog2 PRESENCE lan-ping MotoG2 300 300
attr presence.motog2 userattr anwesenheit anwesenheit_map structexclude
attr presence.motog2 anwesenheit presence.struc
attr presence.motog2 event-on-change-reading .*
attr presence.motog2 structexclude presence.struc


presence.nexus4:
define presence.nexus4 PRESENCE lan-ping nexus4 300 300
attr presence.nexus4 userattr anwesenheit anwesenheit_map structexclude
attr presence.nexus4 anwesenheit presence.struc
attr presence.nexus4 event-on-change-reading .*
attr presence.nexus4 ping_count 10
attr presence.nexus4 structexclude presence.struc


einem dummy der als Overwrite-Schalter dient:
presence.dummy:
define presence.overwrite dummy
attr presence.overwrite userattr anwesenheit anwesenheit_map structexclude
attr presence.overwrite anwesenheit presence.struc
attr presence.overwrite event-on-change-reading .*
attr presence.overwrite structexclude presence.struc


und einer structure, die die Zustände ignore, present und absent annehmen kann. Diese Structure ist auf meiner Weboberfläche zu sehen.
presence.struc:
attr presence.struc addLog presence
define presence.struc structure anwesenheit presence.motog2 presence.nexus4 presence.overwrite
attr presence.struc clientstate_behavior relative
attr presence.struc clientstate_priority ignore present absent
attr presence.struc devStateIcon ignore:user_available@grey:auto present:user_available@green:ignore absent:user_away@red:ignore
attr presence.struc event-on-change-reading .*


Damit ich das Overwrite Modus bequem von der Weboberfläche aus schalten kann, verwende ich folgende zwei cmdalias Definitionen:

define presence.setauto cmdalias set presence.struc auto AS set presence.overwrite auto
define presence.setignore cmdalias set presence.struc ignore AS set presence.overwrite ignore


Vielleicht hilft das jemandem weiter.

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

CoolTux

Zitat von: Fredi69 am 06 November 2015, 11:05:15
Nein, ich habe mich damit nicht beschäftigt und auch nichts gelesen, ich frage immer gleich und hoffe auf eine fertige Lösung die ich per Copy und Paste einfügen kann.  ;)

Wie hast Du die Verbindung zwischen den einzelnen Presence und Roommates hergestellt?
Bei mir übergebe ich den Presence Status über ein notify an den Roomate Status.
Wenn ich jetzt von Hand den Roomate Status überschreibe, wie verhindere ich den direkten Wechsel zurück durch das notify und wie kommt man am Besten auf die Automatik zurück?

Vielen Dank

Dachte ich mir schon

http://www.fhemwiki.de/wiki/Event-on-change-reading
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

Zitat
Aber manchmal (Babysitter ist da) möchte ich die Regelung außer Kraft setzen.

http://fhem.de/commandref_DE.html#GUEST
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

gero

Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor