FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Uli am 18 Januar 2013, 23:36:31

Titel: WhoIsAtHome Problem mit Devicenamen
Beitrag von: Uli am 18 Januar 2013, 23:36:31
Ich habe nach der Anleitung aus dem Wiki das WhoIsAtHome eingerichtet.
Scheinbar hat die Funktion mit langen Devicenamen.
Eine der Zeilen sieht wie folgt aus:
define WLANULI notify WLANULI {FBWlanStat('iPhone-von-Uli-Weiss', "Uli")}

Dann bekomme ich immer den Status "Abwesend", obwohl das Device laut FritzBox Oberfläche angemeldet ist.
Wenn ich das ändere in:
define WLANULI notify WLANULI {FBWlanStat('LX13-iPad', "Uli")}

ändere, dann wird mir der korrekte Status des Devices angezeigt.

Habt Ihr das schon gehabt? Eventuelle Änderungsvorschläge (ausser den Namen meines iPhones zu ändern)?
Titel: Aw: WhoIsAtHome Problem mit Devicenamen
Beitrag von: Brice am 19 Januar 2013, 10:37:32
Wenn das iPhone in der Fritzbox mit "iPhone-von-Uli-Weiss" benannt ist, und im Bereich "Bekannte WLan Geräte" so angezeigt wird, sollte es funktionieren. Ich kann das Problem nicht nachstellen.

Aber warum ist es einmal ein iPhone und beim zweiten Eintrag ein iPad?
Titel: Aw: WhoIsAtHome Problem mit Devicenamen
Beitrag von: Uli am 19 Januar 2013, 14:04:30
Da mein iPhone nicht erkannt wurde, wollte ich wissen, ob mein iPad erkannt wird.
Die Namen der Geräte habe ich per Copy & Paste direkt aus der FritzBox Oberfläche übernommen.
Titel: Aw: WhoIsAtHome Problem mit Devicenamen
Beitrag von: Brice am 19 Januar 2013, 15:37:44
Zeigt die Fritzbox-Oberfläche eine bestehende WLan-Verbindung zum iPhone an? Wenn bei mir WLan-Sync nicht eingerichtet ist, beendet das iPhone nach einiger Zeit die WLan-Verbindung zur Fritzbox und wird in FHEM dann auf abwesend gesetzt. Mal prüfen, ob in iTunes das Flag für WLan-Sync gesetzt ist.
Titel: Aw: WhoIsAtHome Problem mit Devicenamen
Beitrag von: det. am 19 Januar 2013, 18:00:42
ich hatte da vor langer Zeit auch das Problem. Einfach gelöst, indem ich den angebissenen Apfelteilen unter Einstellungen - Allgemein - Info - Name einfache Namen ohne "-" und "_" gegeben habe - z.B. iPhonePaul. Damit gehts seitdem bestens.
Titel: Aw: WhoIsAtHome Problem mit Devicenamen
Beitrag von: Uli am 19 Januar 2013, 19:23:30
Zitat von: Brice schrieb am Sa, 19 Januar 2013 15:37Zeigt die Fritzbox-Oberfläche eine bestehende WLan-Verbindung zum iPhone an? Wenn bei mir WLan-Sync nicht eingerichtet ist, beendet das iPhone nach einiger Zeit die WLan-Verbindung zur Fritzbox und wird in FHEM dann auf abwesend gesetzt. Mal prüfen, ob in iTunes das Flag für WLan-Sync gesetzt ist.
Ja, die FritzBox zeigt eine Verbindung. Und in der Ereignisanzeige der FB kann ich auch sehen, das dass iPhone angemeldet ist.
WLAN Sync war sowieso aktiviert.
Titel: Aw: WhoIsAtHome Problem mit Devicenamen
Beitrag von: Uli am 19 Januar 2013, 19:25:11
Zitat von: det. schrieb am Sa, 19 Januar 2013 18:00ich hatte da vor langer Zeit auch das Problem. Einfach gelöst, indem ich den angebissenen Apfelteilen unter Einstellungen - Allgemein - Info - Name einfache Namen ohne "-" und "_" gegeben habe - z.B. iPhonePaul. Damit gehts seitdem bestens.
Ich habe den Namen auch mal geändert. Dann spielt es. Das wollte ich zwar vermeiden, scheint aber die beste Lösung zu sein.
Titel: Aw: WhoIsAtHome Problem mit Devicenamen
Beitrag von: Dirk23 am 22 Januar 2013, 18:05:10
Hallo,

mein erster Post im Forum. Ich nutze schon länger FHEM auf einer FB7390 mit aktueller Firmware (84.05.50) und wollte den WohIsAtHome Status Abfragen. Trotz das ich den Namen meines iPhone geändert habe auf iPhoneDirk (ohne "-" oder "_" oder " ") bleibt der Status ewig auf Abwesend. Das "manuelle" ausführen des FBWlanStat gibt keine Ausgabe und die letzte Änderung des "state" ist Tage her!
Meine fhem.cfg sieht so aus:

define Dirk dummy
attr Dirk icon icoHouse.png
attr Dirk room Homestatus
attr Dirk setList Anwesend Abwesend
define WLAN1 notify WLAN1 {FBWlanStat('DirksiPhone', "Dirk")}
define search_for_MyWLANDeviceName1 at +*00:00:30 trigger WLAN1

Die FBWlanStat Routine habe Copy&Paste in die 99_Utils.pm reingepackt und diese sieht so aus.


sub
FBWlanStat($$)
{
my ($net_device1)=@_[0];
$net_device1 = $net_device1."\n";
my $number=0;
my $status=0;
my $net_device="";
my $attendance="";
while($number <= 150){$net_device=qx(/usr/bin/ctlmgr_ctl r landevice settings/landevice$number/name);
  if($net_device eq $net_device1){
  $status=qx(/usr/bin/ctlmgr_ctl r landevice settings/landevice$number/active);
  last;}$number++;}
       if ($status == 1) {$attendance="Anwesend";}else{$attendance="Abwesend";}
       if(Value("@_[1]") ne $attendance){
       fhem "set @_[1] $attendance"}}


Ich habe schon einiges gelesen, das die Prozedur nur geht, wenn fhem als Root ausgeführt wird, aber bei mir läuft es als boxuser99.

Alle bisherigen Anleitungen fhem als Root auszuführen haben nicht geklappt:

Chown Root startfhem

in der etc/passwd den fhem Eintrag löschen und rebooten

Hat alles nicht geholfen.

Wenn ich mit nem Terminal zur Fritzbox verbinde kann ich mit den Befehl:

/usr/bin/ctlmgr_ctl r landevice settings/landevice1/name

/usr/bin/ctlmgr_ctl r landevice settings/landevice1/activ

einwandfrei den Namen und Status der Geräte abfragen, wobei "landevice1" tatsächlich mein iPhone ist und als "iPhoneDirk" ausgegeben wird mit active=1 wenn ich im Netz bin.

Hat vielleicht noch jemand eine Idee was ich tun kann? Gerne spiele ich auch das fhem Image neu auf die Fritzbox....


Schon mal danke im voraus

Euer Dirk
Titel: Aw: WhoIsAtHome Problem mit Devicenamen
Beitrag von: Uli am 24 Januar 2013, 22:34:59
Ich habe jetzt etwas mehr Zeit und möchte mal meine Erfahrungen niederschreiben, nachdem es jetzt mit meinem iPhone spielt, mit dem meiner Frau noch nicht.

Ich habe als erstes auf der FritzBox den Eintrag meines Handys unter WLAN gelöscht. Dafür darf das Gerät nicht an der FritzBox angemeldet sein. Danach funktionierte es immer noch nicht. Dann habe ich den neuen Eintrag auch gelöscht und auf dem iPhone den Namen geändert. (Er hat immer noch einen - im Namen). Jetzt funktioniert es.

Was ich glaube, ist folgendes:

Ich habe mein neues Handy von einem Backup eingerichtet. Dadurch wurde natürlich auch der Name übernommen. Die FritzBox hängt dann hinten einfach ein "-2" ran. Bei dem Handy meiner Frau lief es ähnlich und ihre Anwesenheit wird weiterhin nicht erkannt.