FHEM Forum

FHEM - Hardware => FRITZ!Box => Thema gestartet von: MiWe58 am 09 Dezember 2013, 15:55:55

Titel: PRESENCE auf Fritzbox 7390
Beitrag von: MiWe58 am 09 Dezember 2013, 15:55:55
Hallo,

an der Nutzung des PRESENCE Modules tüftele ich nun schon seit einiger Zeit herum. Leider bekomme ich im Logfile Fehlermeldungen.

in der fhem.cfg ist folgendes zu finden
define LariAW PRESENCE fritzbox iPhone 1 1

Im Logfile sind folgende Einträge zu finden:
2013.12.09 11:02:40 1: Timeout for PRESENCE_DoLocalFritzBoxScan reached, terminated process 26813
2013.12.09 11:02:40 2: PRESENCE: LariAW could not be checked (retrying in 10 seconds)


sowie
2013.12.09 14:44:34 2: PRESENCE: error while processing device LariAW - could not execute ctlmgr_ctl

- Nach dem Reboot der Fritzbox und ausgeschaltetem iPhone wird dieses als "absent" erkannt
- Nach dem Einschalten des iPhones wir dieses kurze zeit später als "present" erkannt
- Nach dem erneuten Ausschalten des iPhones dauert es ca 15-20 Min. bis es von der Fritzbox als ausgeschaltet erkannt wird
- Der Status des iPhones bleibt als "present" erhalten und ändert sich nicht mehr

Was können die Ursachen für die Einträge im Log sein?

GRuß
Michael
Titel: Antw:PRESENCE auf Fritzbox 7390
Beitrag von: bugster_de am 10 Dezember 2013, 10:26:48
Hi,

ohne dass ich es jetzt genau sagen kann:
ZitatTimeout for PRESENCE_DoLocalFritzBoxScan reached, terminated process 26813
das PRESENCE Modul startet jeweils eine extra Prozess (fork) via BlockingCall. Falls der aufgerufenen Prozess nicht rechtzeitig sich beendet, dann schlägt der Timeout zu und der Prozess wird abgeschossen. Das führt zu dem genannten logfile Eintrag. Warum aber der Prozess, der den Status auf der FB abfragt nicht rechtzeitig zurückkehrt lässt sich so nicht sagen.

Zitatcould not execute ctlmgr_ctl
das heisst, dass er nicht auf die Fritzbox Funktion zugreifen kann. Läuft dein FHEM unter root?

Zitat- Nach dem erneuten Ausschalten des iPhones dauert es ca 15-20 Min. bis es von der Fritzbox als ausgeschaltet erkannt wird
- Der Status des iPhones bleibt als "present" erhalten und ändert sich nicht mehr
das ist bei mir genauso und macht PRESENCE auf FB für iPhone nicht nutzbar. Allerdings verstehe ich nicht warum das so ist, da der Code von 73_PRESENCE.pm gut aussieht.


Titel: Antw:PRESENCE auf Fritzbox 7390
Beitrag von: MiWe58 am 10 Dezember 2013, 10:32:40
Hallo bugster,

zunächst einmal vielen Dank für die Erläuterungen.

Presence läuft unter root. Habe ich gemäß wiki geprüft.

@ all
Das iPhone ist ja vermutlich nicht so selten in dieser Community. Auch habe ich schon diverse Beiträge gelesen, bei denen das iPhone offenbar mit dem PRESENCE Modul funktioniert. Es wäre sehr hilfreich, wenn andere User ihre Erfahrungen posten könnten

Gruß
Michael
Titel: Antw:PRESENCE auf Fritzbox 7390
Beitrag von: bugster_de am 11 Dezember 2013, 09:27:07
zum Thema FB und iPhone gibt es bereits gefühlte 100 Threads mit Erfahrungen. Ich glaube nicht dass wir noch einen brauchen

Titel: Antw:PRESENCE auf Fritzbox 7390
Beitrag von: MiWe58 am 11 Dezember 2013, 09:34:28
Danke bugster  ;)

gefühlte 100 Threads mit ca. 10 Beiträgen je Thread sind 1.000 Schnipsel.
Schön wäre es, wenn es eine komprimierte Zusammenfassung gäbe. Z.B. im Wiki. oder hier.

Ob es das braucht?
Die Anzahl der gefühlten Threads gibt da vermutlich die Antwort  ???

Einen schönen Tag noch  8)
Titel: Antw:PRESENCE auf Fritzbox 7390
Beitrag von: Clyde am 12 Dezember 2013, 09:24:50
Bei mir läuft PRESENCE auf der Fritzbox 7390 und Android Devices auch noch nicht rund. Leider lese ich auch schon lange quer durch die Threads und komme aber noch nicht richtig weiter. Hoffe aber die nächsten Tage etwas schlauer zu werden...
Titel: Antw:PRESENCE auf Fritzbox 7390
Beitrag von: bugster_de am 13 Dezember 2013, 11:28:54
also, dann mal long-story short: iOS devices (iPhone, iPOD, iPad) schalten den WLAN aus um Strom zu sparen. Somit wird das dann von FHEM als abwesend erkannt, obwohl die Geräte eigentlich ja trotzdem da sind. Die Devices reagieren nicht auf einen Ping und auch die Fritzbox basierte Erkennung ist nicht wirklich zuverlässig. Das verhalten des WLAN ist von iOS Version zu Version leicht unterschiedlich aber zuverlässige Erkennung lässt sich per WLAN NICHT machen. Punkt. :-)
Ich habe sowohl mit PRESENCE, mit einer selbst geschriebenen Routine in 99_Utils.pm als auch mit einem selbst geschriebenen Modul für die FB diese Erfahrung gemacht. Es geht nicht zuverlässig und ich mache da schon seit bald 1 Jahr rum.

Bei anderen Geräten gilt Radio Eriwan: im Prinzip ja aber ...
Mein geschäftliches Blackberry geht 100%. Allerdings ist das BB absolut Müll: wenn ich WLAN eingeschaltet lasse, dann hält der Akku nicht mal einen Tag durch.
Mein chinesiches Billig-Phablet auf Android Basis ist der Star im Furhpark: geht ohne Einschränkungen. Allerdings klässt sich dies wohl nicht pauschal auf alle Androids übertragen. Manche Geräte zeigen das gleiche Verhalten wie die iPhones. Ich habe den Eindruck, je billiger das Android, desto eher geht es.

Als Alternative bietet sich wohl die Bluetooth basierte Erkennung an. Diese habe ich (noch) nicht bei mir am Laufen und kann deshalb nicht aus eigener Erfahrung berichten.
Vorteil ist halt, dass es auch bei iPhones zuverlässig geht. Nachteil ist die Reichweite von Bluetooth, die sicherlich nicht ein komplettes Haus abdecken wird. Auch geht Bluetooth nicht, wenn FHEM auf der Fritzbo läuft, da die keinen Bluetooth Treiber hat.

Was steck bei WLAN technisch dahinter:
es gibt folgende Möglichkeiten direkt oder indirekt zu erkennen, ob ein gerät im Netz eingebucht ist:
i.) PING: das Gerät wird angepingt und die Antwort ausgewertet. Votrteil ist, dass dies immer geht egal auf welchem Server FHEM intalliert ist. Bedingt aber, dass das Device immer die gleiche IP bekommt. Also enwteder im gerät eine feste IP vorgeben oder den DHCP-Server anweisen, dass immer die gleiche IP angegeben wird. Vorsicht allerdings bei Lease Times.
ii.) Fritzbox Active: wenn FHEM auf der FB läuft, kann man im System den active Status des Gerätes abfragen. Geht nur, wenn das device in der FB eingeloggt ist. Geht nicht, wenn ihr Access Points im Hause betreibt (so wie ich). Nachteil: es kann bis zu 20 Minuten dauern, bis die FB die Abwesenheit erkennt
iii.) Fritzbox Speed: wenn FHEM auf der FB läuft kann man den Status des Speed eintrages auswerten. Wenn dieser 0 ist, ist das gerät nicht zu Hause. Vorteil: geht auch bei Access Points. Nachteil: es kann bis zu 20 Minuten dauern.
iv.) online: dies wird aktuell durch PRESENCE nicht ausgewertertet. Wenn man FHEM auf der FB hat, kann man dieses Bit auswerten. Um ehrlich zu sein habe ich noch nicht genau verstanden, nach welchem Algorhythmus die FB dieses Bit setzt. Vor- und Nachteile sind gleich wie bei active mit dem einzigen Unterschied, dass es hier egal ist, ob direakt an FB oder via AP eingeloggt.

Ich hoffe diese Zusammenfassung hilft.

Titel: Antw:PRESENCE auf Fritzbox 7390
Beitrag von: bugster_de am 13 Dezember 2013, 11:29:35
ach so: wenn ihr die örtlichen Gegebenheiten habt, dann würde ich auf Bluetooth setzen