FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: logol01 am 30 Oktober 2018, 16:21:08

Titel: GEOFANCY - Geofences mit FHEM und Loxone ReadingsVal
Beitrag von: logol01 am 30 Oktober 2018, 16:21:08
Hallo zusammen,
ich wurde von meintechblog.de inspieriert Geofences mit FHEM zu installieren.
https://www.meintechblog.de/2017/10/loxone-mit-anwesenheitserkenung-geofences-ueber-fhem-nutzen/
Hierzu benutze ich
define geofancy GEOFANCY geo

Bis vor der Zeitumstellung letzten Samstag/Sonntag war hat alles super funktioniert.
Nun nach der Zeitumstellung geht die Zeit aber um eine Stunde nach.
FHEM und Loxone haben beide Seiten jedoch die Sommer/Winterzeit richtig umgestellt.

Mit folgendem Code in der Datei 99_myUtils.pm werden dann die relevanten Daten an Loxone per UDP übergeben:
#AnwesenheitToLoxone
sub ResidentToLoxone ($)
{
my ($device) = @_;
my $state = ReadingsVal("$device","state","-1");
if ($state eq "absent") {
$state = "0";
}
if ($state eq "home") {
$state = "1";
}
my $arrival=time_str2num(ReadingsVal("$device","lastArrival","-1"));
my $departure=time_str2num(ReadingsVal("$device","lastDeparture","-1"));
my $wayhome=ReadingsVal("$device","wayhome","-1");

UDP_Msg("192.168.178.245" , "7200" , "$device: $state $arrival $departure $wayhome");
}


Nun meine Frage:
Kann es sein, dass man mit ReadingsVal der Human-Readable Visu-String - ohne Zeitzonenbereinigung - in epoch umgerechnet? Der Visu-String ist Lokalzeit, nicht epoch UTC. Somit rechnest das Skript mit FHEM-Lokalzeit, und vermutlich macht Loxone auch nochmal Lokalzeit-Umrechnung? - oder?
Ich hab keine Ahnung! :o

Was muss ich für einen Befehl anstatt "ReadingsVal" wählen um die "richtige Zeit" im Sommer und Winter an Loxone zu übergeben?

Ich freue mich sehr auf Euer Feedback.

VG

Logol01
Titel: Antw:GEOFANCY - Geofences mit FHEM und Loxone ReadingsVal
Beitrag von: Loredo am 30 Oktober 2018, 16:51:09
Wenn die mobile App eine Zeit mit überträgt, wird diese Zeit übernommen. Ggf. ist die Zeit auf dem Gerät falsch
Titel: Antw:GEOFANCY - Geofences mit FHEM und Loxone ReadingsVal
Beitrag von: logol01 am 31 Oktober 2018, 09:48:18
Hallo,

die mobile App ist Geofency auf iPhone. Die Zeit auf dem Gerät stimmt.
Die Zeit wird auch richtig im FHEM Geo Modul angezeigt.

Die Frage von mir ist, wird mit dem Wert "ReadingsVal" die Zeit inkl. Zeitzonen Korrektur übertragen? Sprich eine Stunde weniger in Winterzeit und entsprechend Sommerzeit eine Stunde mehr?
Das Problem entsteht für mich - welcher Wert an Loxone mit dem Skript übertragen wird.
Titel: Antw:GEOFANCY - Geofences mit FHEM und Loxone ReadingsVal
Beitrag von: Loredo am 16 Januar 2019, 16:27:37
ReadingsVal() gibt die Zeit als Textstring so wieder, wie er drin steht. Es handelt sich also um die lokale Zeit deines Rechners, auf dem FHEM läuft.