FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Fredi69 am 11 September 2015, 15:22:54

Titel: Status verändern in Abhängikeit von drei anderen Status
Beitrag von: Fredi69 am 11 September 2015, 15:22:54
Hallo,

ich habe es geschafft für jede Person des Haushalts einen Dummy mit dem aktuellen Anwesenheitsstatus (presence über Bluetooth) zu erstellen.
Nennen wir die drei Dummys Handy1, Handy2, Handy3 die jeweils den Status "on" für anwesend oder "off" für abwesend annehmen können.

Jetzt möchte ich einen allgemeinen Anwesenheitsstatus auf "anwesend" setzen wenn einer der drei auf "on" oder auf "abwesend" wenn alle drei auf "off" stehen.
Das sollte dann z.B. alle 5 Min geprüft und aktualisiert werden.

Vielen Dank für Eure Tipps
Titel: Antw:Status verändern in Abhängikeit von drei anderen Status
Beitrag von: marvin78 am 11 September 2015, 15:29:56
Schau dir mal die Module RESINDENTS, ROMMATE, GUEST und Co an.
Titel: Status verändern in Abhängikeit von drei anderen Status
Beitrag von: justme1968 am 11 September 2015, 16:11:12
oder structure.

aber warum dummys wenn du schon PRESENCE hast?

gruss
  andre
Titel: Antw:Status verändern in Abhängikeit von drei anderen Status
Beitrag von: Koersten am 11 September 2015, 17:14:29
Hallo erstmal,
bin ebenfalls recht neu hier. Das was du vor hast könnte man etwa mit einem DOIF lösen. Dazu ein weiteren dummy definieren, der dann nach der Bedinung dass alle da sind auf on oder off gesetzt wird. Das Attribut "wait" unten drunter baut eine Verzögerung ein um nicht auf unbeabsichtigete Verbindungsabbrüche zu reagieren. Die genaue Verwendung steht gut dokumentiert im Wiki.


define AnwesenheitFamilie dummy

define AnwesenheitFamilie_DI DOIF ([Handy1:state] eq "on" and [Handy2:state] eq "on" and [Handy3:state] eq "on") (set AnwesenheitFamilie on) DOELSE (set AnwesenheitFamilie off)
attr AnwesenheitFamilie_DI wait 100:100


Ich hoffe ich konnte helfen.
Titel: Antw:Status verändern in Abhängikeit von drei anderen Status
Beitrag von: RomanticBoy83 am 11 September 2015, 21:43:15
an Fredi69:
Meine Idee wäre ein immer wiederkehrendes at, welches in 5min Intervall die Anwesenheit setzt.

define setzen_Anwesenheitsstatus at +*00:05:00 {
  if ( Handy1 eq "off" && Handy2 eq "off" && Handy3 eq "off"){
    fhem ("set Anwesenheitsstatus abwesend");
  }else{
    fhem ("set Anwesenheitsstatus anwesend");
  }
}


an Koersten:
Dein Code müste ein wenig angepast werde, da die Anwesenheit schon bei einem Familienmitglied gegeben ist. Momentan funktioniert es bei dir so, das alle Handys "on" sein müssen, dass eine Anwesenheit gesetzt wird.
Titel: Antw:Status verändern in Abhängikeit von drei anderen Status
Beitrag von: Puschel74 am 11 September 2015, 21:47:51
structure und PRESENCE wären eher etwas.
Wozu alle 5 Minuten auf etwas schauen wenn man 3 Wochen im Urlaub ist  ::)
Mit FHEM kann man auf Zeiten oder auf Events triggern - Events wäre hier der schlauere Weg.
Edith: Schau erstmal das du (d)ein Problem gelöst bekommst bevor du versucht ...
Titel: Antw:Status verändern in Abhängikeit von drei anderen Status
Beitrag von: CoolTux am 11 September 2015, 22:01:19
@Fredi69

Das was Du vor hast kannst Du super mit RESIDENTS und ROOMMATE lösen. Ich habe das seit Monaten im Einsatz und es funktioniert bestens.

http://fhem.de/commandref_DE.html#RESIDENTS

http://fhem.de/commandref_DE.html#ROOMMATE



Grüße