Presence und Roommate, asleep->absent verbieten

Begonnen von Tabularasa, 16 Januar 2018, 20:01:24

Vorheriges Thema - Nächstes Thema

Tabularasa

Hallo. Mein Handy hat manchmal nachts keine WLAN Verbindung. Wenn wir Schlafen gehen und im "asleep" Modus sind, kommt es vor, dass das Handy dann auf "absent" geht und danach wieder auf "home". Nun habe ich aber im "home" Modus ganz andere Einstellungen die nicht zur Nacht passen. Da es sowieso nicht bei uns vorkommen kann, dass es von "asleep" auf "absent" geht, wollte ich das irgendwie unterbinden. Die Frage ist nur:Wie?
Habe noch eine function die glaube eventuell was damit zutun hat.(hab die damals nur irgendwoher kopiert) Kann man darin das ändern, was ich vorhabe?
sub DevicePresence($$)
{
  my ($dev,$event) = @_;
  my $name = (split("PRESENCE_",$dev))[1];
  my $state = ReadingsVal($name,"state","home");
  if ($event eq "present" && $state =~ /^(absent|gone|none)$/)
  {
    fhem "set $name:FILTER=state!=home home";
  }
  elsif ($event eq "absent" && $state !~ /^(absent|gone|none)$/)
  {
    fhem "set $name:FILTER=state!=$event $event";
  }
}

Danke

DeeSPe


  elsif ($event eq "absent" && $state !~ /^(absent|gone|none|asleep)$/)
  {
    fhem "set $name:FILTER=state!=$event $event";
  }


Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Tabularasa

Cool. Danke für die rasendschnelle Antwort. Kannst du mir die Zeile noch kurz erklären?

DeeSPe

Wenn das Presence Device "absent" meldet und der Status des verknüpften Resident nicht auf absent, gone, none oder asleep steht, dann stelle den Resident auch auf "absent". ;)

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Tabularasa

Ist in ausgeschriebener Sprache dann doch besser für mich zu verstehen, als in Perl ;D Danke

DeeSPe

Du hast mich damit auf eine Idee gebracht.
Habe das gerade in mein Modul HOMEMODE integriert.

Danke für die Inspiration.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe