Originally posted by: <email address deleted>
Hallo,
mit viel Hilfe von Rudi, anbei eine verbesserte Homefunktion. ---> Danke
Rudi !
Funktion:
Wenn Mobiltelefone über das heimische WLAN auf der Fritzbox registriert
werden, wird der User auf den Status "zu Hause" gesetzt.
Die bereits vorliegende zuHause Funktion setzt eine feste LanID in der
Fritzbox voraus. Diese LanID kann von der Fritzbox (z.B. bei Neutstart)
jedoch geändert werden.
Die neue Routine prüft daher auch, ob der Name der entsprechenden LanID
noch dem zu prüfenden, WLAN device entspricht.
Falls dies nicht der Fall ist, werden die LAN-IDs (in meinem Beispiel bis
LanID 25) durchsucht und die LanID neu zugeordnet.
Die entsprechenden LanIDs sind in Dummies gespeichert.
Notwendige Anpassungen:
Routine ist für 2 User definiert (Holger & Maria), ggf. mit suchen/ersetzen
anpassen.
Weiterhin muss der DeviceName mit euren Devicenamen stimmen (Holger-IP4
bzw. Maria-IP4S) auch hier ggf. anpassen
Verbesserungsmöglichkeiten:
Die Routine prüft immer dann alle LanIDs, wenn festgestellt wird, dass der
Name der LanID nicht mehr dem erwarteten Wert entspricht (<> Holger-IP4
bzw. Maria-IP4S). Das sollte also nur sehr selten passieren (z.B. nach
Stromausfall / reboot Fritzbox).
Diese Routine benötigt einige Sekunden um alle LanDevices zu prüfen. Hier
ist sicherlich (siehe die Kommentar von Rudi im anderen Thread)
Verbesserung möglich, aber "quick and dirty" gehts auch so, und blockiert
die FB hoffentlich nur sehr selten, da der Neustart wohl eher selten
vorkommt
Weiterhin (siehe ebenfalls Kommentar von Rudi im anderen Thread) wäre die
Umsetzung in die my_Utils sinnvoll. Darüber muss ich noch ein wenig
"hirnen", da die Übergabe der Parameter für mich als ungeübten "Perler"
nicht vor der Hand liegt, es muss ja sowohl der Status der LanID, als auch
ggf. die neue LanID übergeben werden.
Der Code gewinnt keinen Schönheitspreis, aber er ist analog zum Autor
simple strukturiert und daher sicher auch für Gleichgestrickte verständlich.
Für diejenigen, die es im aktuellen Status nutzen möchten: Anbei der Code
define LanDeviceMaria dummy
define LanDeviceHolger dummy
set LanDeviceMaria 1
set LanDeviceHolger 2
define testwlan at +*00:05:00 {\
my
@Devicelist=("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"."21","22","23","24","25");;\
my $UserHolgerLanID="";;\
my $StatusHolgerLanID="";;\
my $UserMariaLanID="";;\
my $StatusMariaLanID="";;\
my $TestUser="";;\
my $HolgerLanID = Value("LanDeviceHolger");;\
my $MariaLanID = Value("LanDeviceMaria");;\
$UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$HolgerLanID/name);;\
$StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice1/active);;\
$StatusHolgerLanID=$StatusHolgerLanID * 1;;\
$UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$MariaLanID/name);;\
$StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice1/active);;\
$StatusMariaLanID=$StatusMariaLanID * 1;;\
if ($UserHolgerLanID =~ m/Holger-IP4/) {\
if ($StatusHolgerLanID == 1) {\
if (Value("Holger_zu_Hause") eq "off") {\
fhem "set HomeStatus ZuHause";;\
}\
fhem "set Holger_zu_Hause on";;\
}\
else {\
if (Value("Holger_zu_Hause") eq "on") {\
if (Value("Maria_zu_Hause") eq "off") {\
fhem "set HomeStatus NichtzuHause";;\
}\
}\
fhem "set Holger_zu_Hause off";;\
};;\
}\
else {\
foreach my $lanDev (@Devicelist){\
$TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$lanDev/name);;\
print $TestUser;;\
if($TestUser =~ m/Holger-IP4/){\
fhem "set LanDeviceHolger $lanDev";;\
}\
}\
};;\
if ($UserMariaLanID =~ m/Maria-IP4S/) {\
if ($StatusMariaLanID == 1) {\
if (Value("Maria_zu_Hause") eq "off") {\
fhem "set HomeStatus ZuHause";;\
}\
fhem "set Maria_zu_Hause on";;\
}\
else {\
if (Value("Maria_zu_Hause") eq "on") {\
if (Value("Holger_zu_Hause") eq "off") {\
fhem "set HomeStatus NichtzuHause";;\
}\
}\
fhem "set Maria_zu_Hause off";;\
};;\
}\
else {\
foreach my $lanDev (@Devicelist){\
$TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$lanDev/name);;\
print $TestUser;;\
if($TestUser =~ m/Maria-IP4S/){\
fhem "set LanDeviceMaria $lanDev";;\
}\
}\
};;\
}
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Ups, die gepostete Routine für die fhem.cfg hatte noch kleinere Fehler /
Unsauberkeiten für die Prüfung:
Hier korrigiert:
define LanDeviceMaria dummy
attr LanDeviceMaria room 5_SYSTEM
define LanDeviceHolger dummy
attr LanDeviceHolger room 5_SYSTEM
set LanDeviceMaria 1
set LanDeviceHolger 2
define testwlan at +*00:05:00 {\
my
@Devicelist=("0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"."21","22","23","24","25");;\
my $UserHolgerLanID="";;\
my $StatusHolgerLanID="";;\
my $UserMariaLanID="";;\
my $StatusMariaLanID="";;\
my $TestUser="";;\
my $HolgerLanID = Value("LanDeviceHolger");;\
my $MariaLanID = Value("LanDeviceMaria");;\
$UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$HolgerLanID/name);;\
$StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$HolgerLanID/active);;\
$StatusHolgerLanID=$StatusHolgerLanID * 1;;\
$UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$MariaLanID/name);;\
$StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$MariaLanID/active);;\
$StatusMariaLanID=$StatusMariaLanID * 1;;\
if ($UserHolgerLanID =~ m/Holger-IP4/) {\
if ($StatusHolgerLanID == 1) {\
if (Value("Holger_zu_Hause") eq "off") {\
fhem "set HomeStatus ZuHause";;\
fhem "set Holger_zu_Hause on";;\
}\
}\
else {\
if (Value("Holger_zu_Hause") eq "on") {\
if (Value("Maria_zu_Hause") eq "off") {\
fhem "set HomeStatus NichtzuHause";;\
}\
fhem "set Holger_zu_Hause off";;\
}\
};;\
}\
else {\
foreach my $lanDev (@Devicelist){\
$TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$lanDev/name);;\
print $TestUser;;\
if($TestUser =~ m/Holger-IP4/){\
fhem "set LanDeviceHolger $lanDev";;\
}\
}\
};;\
if ($UserMariaLanID =~ m/Maria-IP4S/) {\
if ($StatusMariaLanID == 1) {\
if (Value("Maria_zu_Hause") eq "off") {\
fhem "set HomeStatus ZuHause";;\
fhem "set Maria_zu_Hause on";;\
}\
}\
else {\
if (Value("Maria_zu_Hause") eq "on") {\
if (Value("Holger_zu_Hause") eq "off") {\
fhem "set HomeStatus NichtzuHause";;\
}\
fhem "set Maria_zu_Hause off";;\
}\
};;\
}\
else {\
foreach my $lanDev (@Devicelist){\
$TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$lanDev/name);;\
print $TestUser;;\
if($TestUser =~ m/Maria-IP4S/){\
fhem "set LanDeviceMaria $lanDev";;\
}\
}\
};;\
}
attr testwlan room 5_SYSTEM
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo und vielen Dank für den Code,
habs bei mir implementiert und durch suchen ersetzen Namen geändert.
Leider bekomme ich diese Fehlermeldungen. Hast du / habt ihr ne Idee?
Unknown command
@Devicelist=("0","1","2","3","4","5","6","7","8","9","10","11","12","13","1,
try help
Unknown command settings/landevice$HenrikLanID/name);\
, try help
Unknown command settings/landevice$HenrikLanID/active);\
, try help
Unknown command settings/landevice$ElaLanID/name);\
, try help
Unknown command settings/landevice$ElaLanID/active);\
, try help
Unknown command settings/landevice$lanDev/name);\
, try help
Unknown command settings/landevice$lanDev/name);\
, try help
System:
FB 7390
updatefhem vom 30.05.2012
Viele Grüße
und schonmal vielen Dank.
On 28 Mai, 13:15, AnonymousHolger
wrote:
> Ups, die gepostete Routine für die fhem.cfg hatte noch kleinere Fehler /
> Unsauberkeiten für die Prüfung:
>
> Hier korrigiert:
>
> define LanDeviceMaria dummy
> attr LanDeviceMaria room 5_SYSTEM
> define LanDeviceHolger dummy
> attr LanDeviceHolger room 5_SYSTEM
>
> set LanDeviceMaria 1
> set LanDeviceHolger 2
>
> define testwlan at +*00:05:00 {\
> my
> @Devicelist=("0","1","2","3","4","5","6","7","8","9","10","11","12","13","1 4","15","16","17","18","19","20"."21","22","23","24","25");;\
> my $UserHolgerLanID="";;\
> my $StatusHolgerLanID="";;\
> my $UserMariaLanID="";;\
> my $StatusMariaLanID="";;\
> my $TestUser="";;\
> my $HolgerLanID = Value("LanDeviceHolger");;\
> my $MariaLanID = Value("LanDeviceMaria");;\
> $UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$HolgerLanID/name);;\
> $StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$HolgerLanID/active);;\
> $StatusHolgerLanID=$StatusHolgerLanID * 1;;\
> $UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$MariaLanID/name);;\
> $StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$MariaLanID/active);;\
> $StatusMariaLanID=$StatusMariaLanID * 1;;\
> if ($UserHolgerLanID =~ m/Holger-IP4/) {\
> if ($StatusHolgerLanID == 1) {\
> if (Value("Holger_zu_Hause") eq "off") {\
> fhem "set HomeStatus ZuHause";;\
> fhem "set Holger_zu_Hause on";;\
> }\
> }\
> else {\
> if (Value("Holger_zu_Hause") eq "on") {\
> if (Value("Maria_zu_Hause") eq "off") {\
> fhem "set HomeStatus NichtzuHause";;\
> }\
> fhem "set Holger_zu_Hause off";;\
> }\
> };;\
> }\
> else {\
> foreach my $lanDev (@Devicelist){\
> $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$lanDev/name);;\
> print $TestUser;;\
> if($TestUser =~ m/Holger-IP4/){\
> fhem "set LanDeviceHolger $lanDev";;\
> }\
> }\
> };;\
> if ($UserMariaLanID =~ m/Maria-IP4S/) {\
> if ($StatusMariaLanID == 1) {\
> if (Value("Maria_zu_Hause") eq "off") {\
> fhem "set HomeStatus ZuHause";;\
> fhem "set Maria_zu_Hause on";;\
> }\
> }\
> else {\
> if (Value("Maria_zu_Hause") eq "on") {\
> if (Value("Holger_zu_Hause") eq "off") {\
> fhem "set HomeStatus NichtzuHause";;\
> }\
> fhem "set Maria_zu_Hause off";;\
> }\
> };;\
> }\
> else {\
> foreach my $lanDev (@Devicelist){\
> $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$lanDev/name);;\
> print $TestUser;;\
> if($TestUser =~ m/Maria-IP4S/){\
> fhem "set LanDeviceMaria $lanDev";;\
> }\
> }\
> };;\}
>
> attr testwlan room 5_SYSTEM
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Schick mir mal deinen Code, so kann ich dazu nichts sagen.
Am Montag, 28. Mai 2012 12:04:10 UTC+2 schrieb AnonymousHolger:
>
> Hallo,
>
> mit viel Hilfe von Rudi, anbei eine verbesserte Homefunktion. ---> Danke
> Rudi !
>
> Funktion:
> Wenn Mobiltelefone über das heimische WLAN auf der Fritzbox registriert
> werden, wird der User auf den Status "zu Hause" gesetzt.
> Die bereits vorliegende zuHause Funktion setzt eine feste LanID in der
> Fritzbox voraus. Diese LanID kann von der Fritzbox (z.B. bei Neutstart)
> jedoch geändert werden.
> Die neue Routine prüft daher auch, ob der Name der entsprechenden LanID
> noch dem zu prüfenden, WLAN device entspricht.
> Falls dies nicht der Fall ist, werden die LAN-IDs (in meinem Beispiel bis
> LanID 25) durchsucht und die LanID neu zugeordnet.
> Die entsprechenden LanIDs sind in Dummies gespeichert.
>
> Notwendige Anpassungen:
> Routine ist für 2 User definiert (Holger & Maria), ggf. mit
> suchen/ersetzen anpassen.
> Weiterhin muss der DeviceName mit euren Devicenamen stimmen (Holger-IP4
> bzw. Maria-IP4S) auch hier ggf. anpassen
>
> Verbesserungsmöglichkeiten:
> Die Routine prüft immer dann alle LanIDs, wenn festgestellt wird, dass der
> Name der LanID nicht mehr dem erwarteten Wert entspricht (<> Holger-IP4
> bzw. Maria-IP4S). Das sollte also nur sehr selten passieren (z.B. nach
> Stromausfall / reboot Fritzbox).
> Diese Routine benötigt einige Sekunden um alle LanDevices zu prüfen. Hier
> ist sicherlich (siehe die Kommentar von Rudi im anderen Thread)
> Verbesserung möglich, aber "quick and dirty" gehts auch so, und blockiert
> die FB hoffentlich nur sehr selten, da der Neustart wohl eher selten
> vorkommt
> Weiterhin (siehe ebenfalls Kommentar von Rudi im anderen Thread) wäre die
> Umsetzung in die my_Utils sinnvoll. Darüber muss ich noch ein wenig
> "hirnen", da die Übergabe der Parameter für mich als ungeübten "Perler"
> nicht vor der Hand liegt, es muss ja sowohl der Status der LanID, als auch
> ggf. die neue LanID übergeben werden.
> Der Code gewinnt keinen Schönheitspreis, aber er ist analog zum Autor
> simple strukturiert und daher sicher auch für Gleichgestrickte verständlich.
>
>
> Für diejenigen, die es im aktuellen Status nutzen möchten: Anbei der Code
>
> define LanDeviceMaria dummy
> define LanDeviceHolger dummy
>
> set LanDeviceMaria 1
> set LanDeviceHolger 2
>
> define testwlan at +*00:05:00 {\
> my
> @Devicelist=("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"."21","22","23","24","25");;\
> my $UserHolgerLanID="";;\
> my $StatusHolgerLanID="";;\
> my $UserMariaLanID="";;\
> my $StatusMariaLanID="";;\
> my $TestUser="";;\
> my $HolgerLanID = Value("LanDeviceHolger");;\
> my $MariaLanID = Value("LanDeviceMaria");;\
> $UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$HolgerLanID/name);;\
> $StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice1/active);;\
> $StatusHolgerLanID=$StatusHolgerLanID * 1;;\
> $UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$MariaLanID/name);;\
> $StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice1/active);;\
> $StatusMariaLanID=$StatusMariaLanID * 1;;\
> if ($UserHolgerLanID =~ m/Holger-IP4/) {\
> if ($StatusHolgerLanID == 1) {\
> if (Value("Holger_zu_Hause") eq "off") {\
> fhem "set HomeStatus ZuHause";;\
> }\
> fhem "set Holger_zu_Hause on";;\
> }\
> else {\
> if (Value("Holger_zu_Hause") eq "on") {\
> if (Value("Maria_zu_Hause") eq "off") {\
> fhem "set HomeStatus NichtzuHause";;\
> }\
> }\
> fhem "set Holger_zu_Hause off";;\
> };;\
> }\
> else {\
> foreach my $lanDev (@Devicelist){\
> $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$lanDev/name);;\
> print $TestUser;;\
> if($TestUser =~ m/Holger-IP4/){\
> fhem "set LanDeviceHolger $lanDev";;\
> }\
> }\
> };;\
> if ($UserMariaLanID =~ m/Maria-IP4S/) {\
> if ($StatusMariaLanID == 1) {\
> if (Value("Maria_zu_Hause") eq "off") {\
> fhem "set HomeStatus ZuHause";;\
> }\
> fhem "set Maria_zu_Hause on";;\
> }\
> else {\
> if (Value("Maria_zu_Hause") eq "on") {\
> if (Value("Holger_zu_Hause") eq "off") {\
> fhem "set HomeStatus NichtzuHause";;\
> }\
> }\
> fhem "set Maria_zu_Hause off";;\
> };;\
> }\
> else {\
> foreach my $lanDev (@Devicelist){\
> $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$lanDev/name);;\
> print $TestUser;;\
> if($TestUser =~ m/Maria-IP4S/){\
> fhem "set LanDeviceMaria $lanDev";;\
> }\
> }\
> };;\
> }
>
>
>
>
>
>
>
>
>
>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo und vielen Dank,
manchmal hat man Tomaten auf den Augen und dann schaltet man auch noch
das Hirn aus.
Naja, Eure Tipps mit den Zeilenumbrüchen waren goldrichtig. Ich bekomm
auch keine Fehlermeldungen mehr.
Nur stehen jetzt die Dummys LanDeviceEla & LanDeviceHenrik konstant
auf den Werten 1 respektive 2 bei Henrik und ändern ihre Werte auch
nicht.
Diese Werte werden ja am Beginn des Codes gesetzt.
Dann wird doch geprüft welche LanID die Geräte (in meinen Fall doch
Henrik-Telefon, Danielas-iPhone) in der FB zu geordnet bekommt. aber
irgendwie tut sich da nix.
Die Namen der Geräte hab ich aus dem Webfrontend der FB.
Habt ihr/du ne Idee woran es liegen könnte und was man noch tun kann?
Viele Grüße
Henrik
On 30 Mai, 23:08, AnonymousHolger
wrote:
> Schick mir mal deinen Code, so kann ich dazu nichts sagen.
>
> Am Montag, 28. Mai 2012 12:04:10 UTC+2 schrieb AnonymousHolger:
>
>
>
>
>
>
>
>
>
> > Hallo,
>
> > mit viel Hilfe von Rudi, anbei eine verbesserte Homefunktion. ---> Danke
> > Rudi !
>
> > Funktion:
> > Wenn Mobiltelefone über das heimische WLAN auf der Fritzbox registriert
> > werden, wird der User auf den Status "zu Hause" gesetzt.
> > Die bereits vorliegende zuHause Funktion setzt eine feste LanID in der
> > Fritzbox voraus. Diese LanID kann von der Fritzbox (z.B. bei Neutstart)
> > jedoch geändert werden.
> > Die neue Routine prüft daher auch, ob der Name der entsprechenden LanID
> > noch dem zu prüfenden, WLAN device entspricht.
> > Falls dies nicht der Fall ist, werden die LAN-IDs (in meinem Beispiel bis
> > LanID 25) durchsucht und die LanID neu zugeordnet.
> > Die entsprechenden LanIDs sind in Dummies gespeichert.
>
> > Notwendige Anpassungen:
> > Routine ist für 2 User definiert (Holger & Maria), ggf. mit
> > suchen/ersetzen anpassen.
> > Weiterhin muss der DeviceName mit euren Devicenamen stimmen (Holger-IP4
> > bzw. Maria-IP4S) auch hier ggf. anpassen
>
> > Verbesserungsmöglichkeiten:
> > Die Routine prüft immer dann alle LanIDs, wenn festgestellt wird, dass der
> > Name der LanID nicht mehr dem erwarteten Wert entspricht (<> Holger-IP4
> > bzw. Maria-IP4S). Das sollte also nur sehr selten passieren (z.B. nach
> > Stromausfall / reboot Fritzbox).
> > Diese Routine benötigt einige Sekunden um alle LanDevices zu prüfen. Hier
> > ist sicherlich (siehe die Kommentar von Rudi im anderen Thread)
> > Verbesserung möglich, aber "quick and dirty" gehts auch so, und blockiert
> > die FB hoffentlich nur sehr selten, da der Neustart wohl eher selten
> > vorkommt
> > Weiterhin (siehe ebenfalls Kommentar von Rudi im anderen Thread) wäre die
> > Umsetzung in die my_Utils sinnvoll. Darüber muss ich noch ein wenig
> > "hirnen", da die Übergabe der Parameter für mich als ungeübten "Perler"
> > nicht vor der Hand liegt, es muss ja sowohl der Status der LanID, als auch
> > ggf. die neue LanID übergeben werden.
> > Der Code gewinnt keinen Schönheitspreis, aber er ist analog zum Autor
> > simple strukturiert und daher sicher auch für Gleichgestrickte verständlich.
>
> > Für diejenigen, die es im aktuellen Status nutzen möchten: Anbei der Code
>
> > define LanDeviceMaria dummy
> > define LanDeviceHolger dummy
>
> > set LanDeviceMaria 1
> > set LanDeviceHolger 2
>
> > define testwlan at +*00:05:00 {\
> > my
> > @Devicelist=("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"."21","22","23","24","25");;\
> > my $UserHolgerLanID="";;\
> > my $StatusHolgerLanID="";;\
> > my $UserMariaLanID="";;\
> > my $StatusMariaLanID="";;\
> > my $TestUser="";;\
> > my $HolgerLanID = Value("LanDeviceHolger");;\
> > my $MariaLanID = Value("LanDeviceMaria");;\
> > $UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > settings/landevice$HolgerLanID/name);;\
> > $StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > settings/landevice1/active);;\
> > $StatusHolgerLanID=$StatusHolgerLanID * 1;;\
> > $UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > settings/landevice$MariaLanID/name);;\
> > $StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > settings/landevice1/active);;\
> > $StatusMariaLanID=$StatusMariaLanID * 1;;\
> > if ($UserHolgerLanID =~ m/Holger-IP4/) {\
> > if ($StatusHolgerLanID == 1) {\
> > if (Value("Holger_zu_Hause") eq "off") {\
> > fhem "set HomeStatus ZuHause";;\
> > }\
> > fhem "set Holger_zu_Hause on";;\
> > }\
> > else {\
> > if (Value("Holger_zu_Hause") eq "on") {\
> > if (Value("Maria_zu_Hause") eq "off") {\
> > fhem "set HomeStatus NichtzuHause";;\
> > }\
> > }\
> > fhem "set Holger_zu_Hause off";;\
> > };;\
> > }\
> > else {\
> > foreach my $lanDev (@Devicelist){\
> > $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> > settings/landevice$lanDev/name);;\
> > print $TestUser;;\
> > if($TestUser =~ m/Holger-IP4/){\
> > fhem "set LanDeviceHolger $lanDev";;\
> > }\
> > }\
> > };;\
> > if ($UserMariaLanID =~ m/Maria-IP4S/) {\
> > if ($StatusMariaLanID == 1) {\
> > if (Value("Maria_zu_Hause") eq "off") {\
> > fhem "set HomeStatus ZuHause";;\
> > }\
> > fhem "set Maria_zu_Hause on";;\
> > }\
> > else {\
> > if (Value("Maria_zu_Hause") eq "on") {\
> > if (Value("Holger_zu_Hause") eq "off") {\
> > fhem "set HomeStatus NichtzuHause";;\
> > }\
> > }\
> > fhem "set Maria_zu_Hause off";;\
> > };;\
> > }\
> > else {\
> > foreach my $lanDev (@Devicelist){\
> > $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> > settings/landevice$lanDev/name);;\
> > print $TestUser;;\
> > if($TestUser =~ m/Maria-IP4S/){\
> > fhem "set LanDeviceMaria $lanDev";;\
> > }\
> > }\
> > };;\
> > }
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo Henrik,
da sind wir ja schon mal 1 Schritt weiter ;-).
Schick mir mal das ERgebnis deines Logs, dann schau ich mir das an.
Noch einmal zur Sicherheit ... dein FHEM läuft auf einer Fritzbox, korrekt ?
Am Samstag, 2. Juni 2012 19:59:58 UTC+2 schrieb Henrik:
>
> Hallo und vielen Dank,
>
> manchmal hat man Tomaten auf den Augen und dann schaltet man auch noch
> das Hirn aus.
> Naja, Eure Tipps mit den Zeilenumbrüchen waren goldrichtig. Ich bekomm
> auch keine Fehlermeldungen mehr.
> Nur stehen jetzt die Dummys LanDeviceEla & LanDeviceHenrik konstant
> auf den Werten 1 respektive 2 bei Henrik und ändern ihre Werte auch
> nicht.
> Diese Werte werden ja am Beginn des Codes gesetzt.
>
> Dann wird doch geprüft welche LanID die Geräte (in meinen Fall doch
> Henrik-Telefon, Danielas-iPhone) in der FB zu geordnet bekommt. aber
> irgendwie tut sich da nix.
> Die Namen der Geräte hab ich aus dem Webfrontend der FB.
>
> Habt ihr/du ne Idee woran es liegen könnte und was man noch tun kann?
>
> Viele Grüße
> Henrik
>
> On 30 Mai, 23:08, AnonymousHolger
wrote:
> > Schick mir mal deinen Code, so kann ich dazu nichts sagen.
> >
> > Am Montag, 28. Mai 2012 12:04:10 UTC+2 schrieb AnonymousHolger:
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > > Hallo,
> >
> > > mit viel Hilfe von Rudi, anbei eine verbesserte Homefunktion. --->
> Danke
> > > Rudi !
> >
> > > Funktion:
> > > Wenn Mobiltelefone über das heimische WLAN auf der Fritzbox
> registriert
> > > werden, wird der User auf den Status "zu Hause" gesetzt.
> > > Die bereits vorliegende zuHause Funktion setzt eine feste LanID in der
> > > Fritzbox voraus. Diese LanID kann von der Fritzbox (z.B. bei
> Neutstart)
> > > jedoch geändert werden.
> > > Die neue Routine prüft daher auch, ob der Name der entsprechenden
> LanID
> > > noch dem zu prüfenden, WLAN device entspricht.
> > > Falls dies nicht der Fall ist, werden die LAN-IDs (in meinem Beispiel
> bis
> > > LanID 25) durchsucht und die LanID neu zugeordnet.
> > > Die entsprechenden LanIDs sind in Dummies gespeichert.
> >
> > > Notwendige Anpassungen:
> > > Routine ist für 2 User definiert (Holger & Maria), ggf. mit
> > > suchen/ersetzen anpassen.
> > > Weiterhin muss der DeviceName mit euren Devicenamen stimmen
> (Holger-IP4
> > > bzw. Maria-IP4S) auch hier ggf. anpassen
> >
> > > Verbesserungsmöglichkeiten:
> > > Die Routine prüft immer dann alle LanIDs, wenn festgestellt wird, dass
> der
> > > Name der LanID nicht mehr dem erwarteten Wert entspricht (<>
> Holger-IP4
> > > bzw. Maria-IP4S). Das sollte also nur sehr selten passieren (z.B. nach
> > > Stromausfall / reboot Fritzbox).
> > > Diese Routine benötigt einige Sekunden um alle LanDevices zu prüfen.
> Hier
> > > ist sicherlich (siehe die Kommentar von Rudi im anderen Thread)
> > > Verbesserung möglich, aber "quick and dirty" gehts auch so, und
> blockiert
> > > die FB hoffentlich nur sehr selten, da der Neustart wohl eher selten
> > > vorkommt
> > > Weiterhin (siehe ebenfalls Kommentar von Rudi im anderen Thread) wäre
> die
> > > Umsetzung in die my_Utils sinnvoll. Darüber muss ich noch ein wenig
> > > "hirnen", da die Übergabe der Parameter für mich als ungeübten
> "Perler"
> > > nicht vor der Hand liegt, es muss ja sowohl der Status der LanID, als
> auch
> > > ggf. die neue LanID übergeben werden.
> > > Der Code gewinnt keinen Schönheitspreis, aber er ist analog zum Autor
> > > simple strukturiert und daher sicher auch für Gleichgestrickte
> verständlich.
> >
> > > Für diejenigen, die es im aktuellen Status nutzen möchten: Anbei der
> Code
> >
> > > define LanDeviceMaria dummy
> > > define LanDeviceHolger dummy
> >
> > > set LanDeviceMaria 1
> > > set LanDeviceHolger 2
> >
> > > define testwlan at +*00:05:00 {\
> > > my
> > >
> @Devicelist=("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"."21","22","23","24","25");;\
>
> > > my $UserHolgerLanID="";;\
> > > my $StatusHolgerLanID="";;\
> > > my $UserMariaLanID="";;\
> > > my $StatusMariaLanID="";;\
> > > my $TestUser="";;\
> > > my $HolgerLanID = Value("LanDeviceHolger");;\
> > > my $MariaLanID = Value("LanDeviceMaria");;\
> > > $UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > settings/landevice$HolgerLanID/name);;\
> > > $StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > settings/landevice1/active);;\
> > > $StatusHolgerLanID=$StatusHolgerLanID * 1;;\
> > > $UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > settings/landevice$MariaLanID/name);;\
> > > $StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > settings/landevice1/active);;\
> > > $StatusMariaLanID=$StatusMariaLanID * 1;;\
> > > if ($UserHolgerLanID =~ m/Holger-IP4/) {\
> > > if ($StatusHolgerLanID == 1) {\
> > > if (Value("Holger_zu_Hause") eq "off") {\
> > > fhem "set HomeStatus ZuHause";;\
> > > }\
> > > fhem "set Holger_zu_Hause on";;\
> > > }\
> > > else {\
> > > if (Value("Holger_zu_Hause") eq "on") {\
> > > if (Value("Maria_zu_Hause") eq "off") {\
> > > fhem "set HomeStatus NichtzuHause";;\
> > > }\
> > > }\
> > > fhem "set Holger_zu_Hause off";;\
> > > };;\
> > > }\
> > > else {\
> > > foreach my $lanDev (@Devicelist){\
> > > $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> > > settings/landevice$lanDev/name);;\
> > > print $TestUser;;\
> > > if($TestUser =~ m/Holger-IP4/){\
> > > fhem "set LanDeviceHolger $lanDev";;\
> > > }\
> > > }\
> > > };;\
> > > if ($UserMariaLanID =~ m/Maria-IP4S/) {\
> > > if ($StatusMariaLanID == 1) {\
> > > if (Value("Maria_zu_Hause") eq "off") {\
> > > fhem "set HomeStatus ZuHause";;\
> > > }\
> > > fhem "set Maria_zu_Hause on";;\
> > > }\
> > > else {\
> > > if (Value("Maria_zu_Hause") eq "on") {\
> > > if (Value("Holger_zu_Hause") eq "off") {\
> > > fhem "set HomeStatus NichtzuHause";;\
> > > }\
> > > }\
> > > fhem "set Maria_zu_Hause off";;\
> > > };;\
> > > }\
> > > else {\
> > > foreach my $lanDev (@Devicelist){\
> > > $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> > > settings/landevice$lanDev/name);;\
> > > print $TestUser;;\
> > > if($TestUser =~ m/Maria-IP4S/){\
> > > fhem "set LanDeviceMaria $lanDev";;\
> > > }\
> > > }\
> > > };;\
> > > }
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo Holger,
vielen Dank für die schnelle Hilfe.
anbei der gewünschte Auszug aus dem Logfile.
Argument "" isn't numeric in multiplication (*) at (eval 36) line 1.
Argument "" isn't numeric in multiplication (*) at (eval 36) line 1.
parameter error.
usage:
ctlmgr_ctl
[value1]
(r/w: read/write)
examples:
1) ctlmgr_ctl w wlan settings/STA_enabled 1
2) ctlmgr_ctl r wlan settings/STA_enabled
parameter error.
usage:
ctlmgr_ctl [value1]
(r/w: read/write)
examples:
1) ctlmgr_ctl w wlan settings/STA_enabled 1
2) ctlmgr_ctl r wlan settings/STA_enabled
Argument "" isn't numeric in multiplication (*) at (eval 37) line 1.
Argument "" isn't numeric in multiplication (*) at (eval 37) line 1.
parameter error.
usage:
ctlmgr_ctl [value1]
(r/w: read/write)
examples:
1) ctlmgr_ctl w wlan settings/STA_enabled 1
2) ctlmgr_ctl r wlan settings/STA_enabled
parameter error.
usage:
ctlmgr_ctl [value1]
(r/w: read/write)
examples:
1) ctlmgr_ctl w wlan settings/STA_enabled 1
2) ctlmgr_ctl r wlan settings/STA_enabled
so oder ähnlich wiederholt er sich im Log.
Viele Grüße
Henrik
On 2 Jun., 20:14, AnonymousHolger wrote:
> Hallo Henrik,
>
> da sind wir ja schon mal 1 Schritt weiter ;-).
>
> Schick mir mal das ERgebnis deines Logs, dann schau ich mir das an.
>
> Noch einmal zur Sicherheit ... dein FHEM läuft auf einer Fritzbox, korrekt ?
>
> Am Samstag, 2. Juni 2012 19:59:58 UTC+2 schrieb Henrik:
>
>
>
>
>
>
>
>
>
> > Hallo und vielen Dank,
>
> > manchmal hat man Tomaten auf den Augen und dann schaltet man auch noch
> > das Hirn aus.
> > Naja, Eure Tipps mit den Zeilenumbrüchen waren goldrichtig. Ich bekomm
> > auch keine Fehlermeldungen mehr.
> > Nur stehen jetzt die Dummys LanDeviceEla & LanDeviceHenrik konstant
> > auf den Werten 1 respektive 2 bei Henrik und ändern ihre Werte auch
> > nicht.
> > Diese Werte werden ja am Beginn des Codes gesetzt.
>
> > Dann wird doch geprüft welche LanID die Geräte (in meinen Fall doch
> > Henrik-Telefon, Danielas-iPhone) in der FB zu geordnet bekommt. aber
> > irgendwie tut sich da nix.
> > Die Namen der Geräte hab ich aus dem Webfrontend der FB.
>
> > Habt ihr/du ne Idee woran es liegen könnte und was man noch tun kann?
>
> > Viele Grüße
> > Henrik
>
> > On 30 Mai, 23:08, AnonymousHolger wrote:
> > > Schick mir mal deinen Code, so kann ich dazu nichts sagen.
>
> > > Am Montag, 28. Mai 2012 12:04:10 UTC+2 schrieb AnonymousHolger:
>
> > > > Hallo,
>
> > > > mit viel Hilfe von Rudi, anbei eine verbesserte Homefunktion. --->
> > Danke
> > > > Rudi !
>
> > > > Funktion:
> > > > Wenn Mobiltelefone über das heimische WLAN auf der Fritzbox
> > registriert
> > > > werden, wird der User auf den Status "zu Hause" gesetzt.
> > > > Die bereits vorliegende zuHause Funktion setzt eine feste LanID in der
> > > > Fritzbox voraus. Diese LanID kann von der Fritzbox (z.B. bei
> > Neutstart)
> > > > jedoch geändert werden.
> > > > Die neue Routine prüft daher auch, ob der Name der entsprechenden
> > LanID
> > > > noch dem zu prüfenden, WLAN device entspricht.
> > > > Falls dies nicht der Fall ist, werden die LAN-IDs (in meinem Beispiel
> > bis
> > > > LanID 25) durchsucht und die LanID neu zugeordnet.
> > > > Die entsprechenden LanIDs sind in Dummies gespeichert.
>
> > > > Notwendige Anpassungen:
> > > > Routine ist für 2 User definiert (Holger & Maria), ggf. mit
> > > > suchen/ersetzen anpassen.
> > > > Weiterhin muss der DeviceName mit euren Devicenamen stimmen
> > (Holger-IP4
> > > > bzw. Maria-IP4S) auch hier ggf. anpassen
>
> > > > Verbesserungsmöglichkeiten:
> > > > Die Routine prüft immer dann alle LanIDs, wenn festgestellt wird, dass
> > der
> > > > Name der LanID nicht mehr dem erwarteten Wert entspricht (<>
> > Holger-IP4
> > > > bzw. Maria-IP4S). Das sollte also nur sehr selten passieren (z.B. nach
> > > > Stromausfall / reboot Fritzbox).
> > > > Diese Routine benötigt einige Sekunden um alle LanDevices zu prüfen.
> > Hier
> > > > ist sicherlich (siehe die Kommentar von Rudi im anderen Thread)
> > > > Verbesserung möglich, aber "quick and dirty" gehts auch so, und
> > blockiert
> > > > die FB hoffentlich nur sehr selten, da der Neustart wohl eher selten
> > > > vorkommt
> > > > Weiterhin (siehe ebenfalls Kommentar von Rudi im anderen Thread) wäre
> > die
> > > > Umsetzung in die my_Utils sinnvoll. Darüber muss ich noch ein wenig
> > > > "hirnen", da die Übergabe der Parameter für mich als ungeübten
> > "Perler"
> > > > nicht vor der Hand liegt, es muss ja sowohl der Status der LanID, als
> > auch
> > > > ggf. die neue LanID übergeben werden.
> > > > Der Code gewinnt keinen Schönheitspreis, aber er ist analog zum Autor
> > > > simple strukturiert und daher sicher auch für Gleichgestrickte
> > verständlich.
>
> > > > Für diejenigen, die es im aktuellen Status nutzen möchten: Anbei der
> > Code
>
> > > > define LanDeviceMaria dummy
> > > > define LanDeviceHolger dummy
>
> > > > set LanDeviceMaria 1
> > > > set LanDeviceHolger 2
>
> > > > define testwlan at +*00:05:00 {\
> > > > my
>
> > @Devicelist=("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"."21","22","23","24","25");;\
>
> > > > my $UserHolgerLanID="";;\
> > > > my $StatusHolgerLanID="";;\
> > > > my $UserMariaLanID="";;\
> > > > my $StatusMariaLanID="";;\
> > > > my $TestUser="";;\
> > > > my $HolgerLanID = Value("LanDeviceHolger");;\
> > > > my $MariaLanID = Value("LanDeviceMaria");;\
> > > > $UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > settings/landevice$HolgerLanID/name);;\
> > > > $StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > settings/landevice1/active);;\
> > > > $StatusHolgerLanID=$StatusHolgerLanID * 1;;\
> > > > $UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > settings/landevice$MariaLanID/name);;\
> > > > $StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > settings/landevice1/active);;\
> > > > $StatusMariaLanID=$StatusMariaLanID * 1;;\
> > > > if ($UserHolgerLanID =~ m/Holger-IP4/) {\
> > > > if ($StatusHolgerLanID == 1) {\
> > > > if (Value("Holger_zu_Hause") eq "off") {\
> > > > fhem "set HomeStatus ZuHause";;\
> > > > }\
> > > > fhem "set Holger_zu_Hause on";;\
> > > > }\
> > > > else {\
> > > > if (Value("Holger_zu_Hause") eq "on") {\
> > > > if (Value("Maria_zu_Hause") eq "off") {\
> > > > fhem "set HomeStatus NichtzuHause";;\
> > > > }\
> > > > }\
> > > > fhem "set Holger_zu_Hause off";;\
> > > > };;\
> > > > }\
> > > > else {\
> > > > foreach my $lanDev (@Devicelist){\
> > > > $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > settings/landevice$lanDev/name);;\
> > > > print $TestUser;;\
> > > > if($TestUser =~ m/Holger-IP4/){\
> > > > fhem "set LanDeviceHolger $lanDev";;\
> > > > }\
> > > > }\
> > > > };;\
> > > > if ($UserMariaLanID =~ m/Maria-IP4S/) {\
> > > > if ($StatusMariaLanID == 1) {\
> > > > if (Value("Maria_zu_Hause") eq "off") {\
> > > > fhem "set HomeStatus ZuHause";;\
> > > > }\
> > > > fhem "set Maria_zu_Hause on";;\
> > > > }\
> > > > else {\
> > > > if (Value("Maria_zu_Hause") eq "on") {\
> > > > if (Value("Holger_zu_Hause") eq "off") {\
> > > > fhem "set HomeStatus NichtzuHause";;\
> > > > }\
> > > > }\
> > > > fhem "set Maria_zu_Hause off";;\
> > > > };;\
> > > > }\
> > > > else {\
> > > > foreach my $lanDev (@Devicelist){\
> > > > $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > settings/landevice$lanDev/name);;\
> > > > print $TestUser;;\
> > > > if($TestUser =~ m/Maria-IP4S/){\
> > > > fhem "set LanDeviceMaria $lanDev";;\
> > > > }\
> > > > }\
> > > > };;\
> > > > }
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
HAllo Henrik,
da es in der Routine nur 1 multiplication gibt, würde ich noch mal
ausgiebig den Code dort testen.
Ansonsten schick mir noch mal deine Routine und ich schau mir das noch mal
an.
Tip für Debuggen:
Ab und zu ein "print " statement aufnehmen, dann siehst du zumindest bis
wohin es halbwegs funktioniert - hilft aber auch nicht immer).
Am Samstag, 2. Juni 2012 21:21:50 UTC+2 schrieb Henrik:
>
> Hallo Holger,
> vielen Dank für die schnelle Hilfe.
> anbei der gewünschte Auszug aus dem Logfile.
>
> Argument "" isn't numeric in multiplication (*) at (eval 36) line 1.
> Argument "" isn't numeric in multiplication (*) at (eval 36) line 1.
> parameter error.
> usage:
> ctlmgr_ctl
[value1]
> (r/w: read/write)
> examples:
> 1) ctlmgr_ctl w wlan settings/STA_enabled 1
> 2) ctlmgr_ctl r wlan settings/STA_enabled
> parameter error.
> usage:
> ctlmgr_ctl [value1]
> (r/w: read/write)
> examples:
> 1) ctlmgr_ctl w wlan settings/STA_enabled 1
> 2) ctlmgr_ctl r wlan settings/STA_enabled
> Argument "" isn't numeric in multiplication (*) at (eval 37) line 1.
> Argument "" isn't numeric in multiplication (*) at (eval 37) line 1.
> parameter error.
> usage:
> ctlmgr_ctl [value1]
> (r/w: read/write)
> examples:
> 1) ctlmgr_ctl w wlan settings/STA_enabled 1
> 2) ctlmgr_ctl r wlan settings/STA_enabled
> parameter error.
> usage:
> ctlmgr_ctl [value1]
> (r/w: read/write)
> examples:
> 1) ctlmgr_ctl w wlan settings/STA_enabled 1
> 2) ctlmgr_ctl r wlan settings/STA_enabled
>
> so oder ähnlich wiederholt er sich im Log.
>
> Viele Grüße
> Henrik
>
> On 2 Jun., 20:14, AnonymousHolger wrote:
> > Hallo Henrik,
> >
> > da sind wir ja schon mal 1 Schritt weiter ;-).
> >
> > Schick mir mal das ERgebnis deines Logs, dann schau ich mir das an.
> >
> > Noch einmal zur Sicherheit ... dein FHEM läuft auf einer Fritzbox,
> korrekt ?
> >
> > Am Samstag, 2. Juni 2012 19:59:58 UTC+2 schrieb Henrik:
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > > Hallo und vielen Dank,
> >
> > > manchmal hat man Tomaten auf den Augen und dann schaltet man auch noch
> > > das Hirn aus.
> > > Naja, Eure Tipps mit den Zeilenumbrüchen waren goldrichtig. Ich bekomm
> > > auch keine Fehlermeldungen mehr.
> > > Nur stehen jetzt die Dummys LanDeviceEla & LanDeviceHenrik konstant
> > > auf den Werten 1 respektive 2 bei Henrik und ändern ihre Werte auch
> > > nicht.
> > > Diese Werte werden ja am Beginn des Codes gesetzt.
> >
> > > Dann wird doch geprüft welche LanID die Geräte (in meinen Fall doch
> > > Henrik-Telefon, Danielas-iPhone) in der FB zu geordnet bekommt. aber
> > > irgendwie tut sich da nix.
> > > Die Namen der Geräte hab ich aus dem Webfrontend der FB.
> >
> > > Habt ihr/du ne Idee woran es liegen könnte und was man noch tun kann?
> >
> > > Viele Grüße
> > > Henrik
> >
> > > On 30 Mai, 23:08, AnonymousHolger wrote:
> > > > Schick mir mal deinen Code, so kann ich dazu nichts sagen.
> >
> > > > Am Montag, 28. Mai 2012 12:04:10 UTC+2 schrieb AnonymousHolger:
> >
> > > > > Hallo,
> >
> > > > > mit viel Hilfe von Rudi, anbei eine verbesserte Homefunktion. --->
> > > Danke
> > > > > Rudi !
> >
> > > > > Funktion:
> > > > > Wenn Mobiltelefone über das heimische WLAN auf der Fritzbox
> > > registriert
> > > > > werden, wird der User auf den Status "zu Hause" gesetzt.
> > > > > Die bereits vorliegende zuHause Funktion setzt eine feste LanID in
> der
> > > > > Fritzbox voraus. Diese LanID kann von der Fritzbox (z.B. bei
> > > Neutstart)
> > > > > jedoch geändert werden.
> > > > > Die neue Routine prüft daher auch, ob der Name der entsprechenden
> > > LanID
> > > > > noch dem zu prüfenden, WLAN device entspricht.
> > > > > Falls dies nicht der Fall ist, werden die LAN-IDs (in meinem
> Beispiel
> > > bis
> > > > > LanID 25) durchsucht und die LanID neu zugeordnet.
> > > > > Die entsprechenden LanIDs sind in Dummies gespeichert.
> >
> > > > > Notwendige Anpassungen:
> > > > > Routine ist für 2 User definiert (Holger & Maria), ggf. mit
> > > > > suchen/ersetzen anpassen.
> > > > > Weiterhin muss der DeviceName mit euren Devicenamen stimmen
> > > (Holger-IP4
> > > > > bzw. Maria-IP4S) auch hier ggf. anpassen
> >
> > > > > Verbesserungsmöglichkeiten:
> > > > > Die Routine prüft immer dann alle LanIDs, wenn festgestellt wird,
> dass
> > > der
> > > > > Name der LanID nicht mehr dem erwarteten Wert entspricht (<>
> > > Holger-IP4
> > > > > bzw. Maria-IP4S). Das sollte also nur sehr selten passieren (z.B.
> nach
> > > > > Stromausfall / reboot Fritzbox).
> > > > > Diese Routine benötigt einige Sekunden um alle LanDevices zu
> prüfen.
> > > Hier
> > > > > ist sicherlich (siehe die Kommentar von Rudi im anderen Thread)
> > > > > Verbesserung möglich, aber "quick and dirty" gehts auch so, und
> > > blockiert
> > > > > die FB hoffentlich nur sehr selten, da der Neustart wohl eher
> selten
> > > > > vorkommt
> > > > > Weiterhin (siehe ebenfalls Kommentar von Rudi im anderen Thread)
> wäre
> > > die
> > > > > Umsetzung in die my_Utils sinnvoll. Darüber muss ich noch ein
> wenig
> > > > > "hirnen", da die Übergabe der Parameter für mich als ungeübten
> > > "Perler"
> > > > > nicht vor der Hand liegt, es muss ja sowohl der Status der LanID,
> als
> > > auch
> > > > > ggf. die neue LanID übergeben werden.
> > > > > Der Code gewinnt keinen Schönheitspreis, aber er ist analog zum
> Autor
> > > > > simple strukturiert und daher sicher auch für Gleichgestrickte
> > > verständlich.
> >
> > > > > Für diejenigen, die es im aktuellen Status nutzen möchten: Anbei
> der
> > > Code
> >
> > > > > define LanDeviceMaria dummy
> > > > > define LanDeviceHolger dummy
> >
> > > > > set LanDeviceMaria 1
> > > > > set LanDeviceHolger 2
> >
> > > > > define testwlan at +*00:05:00 {\
> > > > > my
> >
> > >
> @Devicelist=("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"."21","22","23","24","25");;\
>
> >
> > > > > my $UserHolgerLanID="";;\
> > > > > my $StatusHolgerLanID="";;\
> > > > > my $UserMariaLanID="";;\
> > > > > my $StatusMariaLanID="";;\
> > > > > my $TestUser="";;\
> > > > > my $HolgerLanID = Value("LanDeviceHolger");;\
> > > > > my $MariaLanID = Value("LanDeviceMaria");;\
> > > > > $UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > > settings/landevice$HolgerLanID/name);;\
> > > > > $StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > > settings/landevice1/active);;\
> > > > > $StatusHolgerLanID=$StatusHolgerLanID * 1;;\
> > > > > $UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > > settings/landevice$MariaLanID/name);;\
> > > > > $StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > > settings/landevice1/active);;\
> > > > > $StatusMariaLanID=$StatusMariaLanID * 1;;\
> > > > > if ($UserHolgerLanID =~ m/Holger-IP4/) {\
> > > > > if ($StatusHolgerLanID == 1) {\
> > > > > if (Value("Holger_zu_Hause") eq "off") {\
> > > > > fhem "set HomeStatus ZuHause";;\
> > > > > }\
> > > > > fhem "set Holger_zu_Hause on";;\
> > > > > }\
> > > > > else {\
> > > > > if (Value("Holger_zu_Hause") eq "on") {\
> > > > > if (Value("Maria_zu_Hause") eq "off") {\
> > > > > fhem "set HomeStatus NichtzuHause";;\
> > > > > }\
> > > > > }\
> > > > > fhem "set Holger_zu_Hause off";;\
> > > > > };;\
> > > > > }\
> > > > > else {\
> > > > > foreach my $lanDev (@Devicelist){\
> > > > > $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > > settings/landevice$lanDev/name);;\
> > > > > print $TestUser;;\
> > > > > if($TestUser =~ m/Holger-IP4/){\
> > > > > fhem "set LanDeviceHolger $lanDev";;\
> > > > > }\
> > > > > }\
> > > > > };;\
> > > > > if ($UserMariaLanID =~ m/Maria-IP4S/) {\
> > > > > if ($StatusMariaLanID == 1) {\
> > > > > if (Value("Maria_zu_Hause") eq "off") {\
> > > > > fhem "set HomeStatus ZuHause";;\
> > > > > }\
> > > > > fhem "set Maria_zu_Hause on";;\
> > > > > }\
> > > > > else {\
> > > > > if (Value("Maria_zu_Hause") eq "on") {\
> > > > > if (Value("Holger_zu_Hause") eq "off") {\
> > > > > fhem "set HomeStatus NichtzuHause";;\
> > > > > }\
> > > > > }\
> > > > > fhem "set Maria_zu_Hause off";;\
> > > > > };;\
> > > > > }\
> > > > > else {\
> > > > > foreach my $lanDev (@Devicelist){\
> > > > > $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> > > > > settings/landevice$lanDev/name);;\
> > > > > print $TestUser;;\
> > > > > if($TestUser =~ m/Maria-IP4S/){\
> > > > > fhem "set LanDeviceMaria $lanDev";;\
> > > > > }\
> > > > > }\
> > > > > };;\
> > > > > }
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
>
> Weiterhin (siehe ebenfalls Kommentar von Rudi im anderen Thread) wäre die
> Umsetzung in die my_Utils sinnvoll.
>
Hallo,
hab mich heute mal hingesetzt und versucht aus dem vorhandenen (danke an
alle die daran beteiligt waren), das in 99_MyUtils.pm umzusetzen, dazu muss
ich sagen das ich keinerlei Programmiererfahrungen habe (learning by doing)
rausgekommen ist dabei folgendes:
durch die Umsetzung in MyUtils ist es möglich durch Übergabe verschiedener
Parameter den Wlan Status einzubinden ohne Anpassungen am Code vornehmen zu
müssen. (Userfriendly)
2 dummys definieren und ein at wie im Beispiel definieren fertig.
Bei mir habe ich das für insgesamt 4 WlanDevices gemacht und zu meiner
eigenen Überraschung funktioniert es, man sollte aber darauf achten das die
Aktualisierung für die verschiedenen at definitionen nicht zur gleichen
Zeit ablaufen, also nicht alle mit at +*00:05:00 definieren sondern
unterschiedlich. Vieleicht gibts hierfür noch Verbesserungsvorschläge von
jemand der Ahnung hat.
Was mich noch ein bischen stört ist der zweite dummy der ja für das setzen
der $LanID missbraucht wird if($TestUser =~ m/$FBLandevice/){fhem "set
$WlanNrdummy $lanDev";}
ich hatte dann sowas versucht wie if($TestUser =~ m/$FBLandevice/){$LanID =
$lanDev} aber erfolglos, da gibts doch bestimmt was ?
Den seperaten HomeStatus hab ich bei dieser Variante rausgenommen (brauchte
ich nicht) kann man aber einfach wieder einfügen, und die abzufragenden
Devices hab ich nur bis 20 gemacht.
Also wer möchte :
Den folgenden Code in eine vorhandene 99_MyUtils.pm kopieren oder eine neue
wie hier beschrieben erstellen.
###############################FB Wlan/LAN Device
Status###################################################################
#
# define nameofWlanstat dummy
# define nameofWlanDevNr dummy
# define MyWlanStatus at +*00:05:00 {
fbwlanstat('nameofFBLandevice','nameofWlanstatdummy','nameofWlanDevNrdummy')
}
# Beispiel:
# define WLAN_Status dummy
# define Smartphone1 dummy
# define MyWlanStatus at +*00:05:00 {
fbwlanstat('PC-192-168-178-44','WLAN_Status','Smartphone1') }
#
sub
fbwlanstat
{
my $FBLandevice = $_[0];
my $Wlandummy = $_[1];
my $WlanNrdummy = $_[2];
my
@Devicelist=("0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20");
my $UserLanID="";
my $StatusLanID="";
my $TestUser="";
my $LanID = Value("$WlanNrdummy");
$UserLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$LanID/name);
$StatusLanID=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$LanID/active);
$StatusLanID=$StatusLanID * 1;
if ($UserLanID =~ m/$FBLandevice/) {
if ($StatusLanID == 1) {
if (Value("$Wlandummy") ne "1") {
fhem "set $Wlandummy 1";
}
}
else {
if (Value("$Wlandummy") ne "0") {
fhem "set $Wlandummy 0";
}
};
}
else {
foreach my $lanDev (@Devicelist){
$TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
settings/landevice$lanDev/name);
print $TestUser;
if($TestUser =~ m/$FBLandevice/){
fhem "set $WlanNrdummy $lanDev";
}
}
};
}
########## Ende
Am Montag, 28. Mai 2012 12:04:10 UTC+2 schrieb AnonymousHolger:
>
> Hallo,
>
> mit viel Hilfe von Rudi, anbei eine verbesserte Homefunktion. ---> Danke
> Rudi !
>
> Funktion:
> Wenn Mobiltelefone über das heimische WLAN auf der Fritzbox registriert
> werden, wird der User auf den Status "zu Hause" gesetzt.
> Die bereits vorliegende zuHause Funktion setzt eine feste LanID in der
> Fritzbox voraus. Diese LanID kann von der Fritzbox (z.B. bei Neutstart)
> jedoch geändert werden.
> Die neue Routine prüft daher auch, ob der Name der entsprechenden LanID
> noch dem zu prüfenden, WLAN device entspricht.
> Falls dies nicht der Fall ist, werden die LAN-IDs (in meinem Beispiel bis
> LanID 25) durchsucht und die LanID neu zugeordnet.
> Die entsprechenden LanIDs sind in Dummies gespeichert.
>
> Notwendige Anpassungen:
> Routine ist für 2 User definiert (Holger & Maria), ggf. mit
> suchen/ersetzen anpassen.
> Weiterhin muss der DeviceName mit euren Devicenamen stimmen (Holger-IP4
> bzw. Maria-IP4S) auch hier ggf. anpassen
>
> Verbesserungsmöglichkeiten:
> Die Routine prüft immer dann alle LanIDs, wenn festgestellt wird, dass der
> Name der LanID nicht mehr dem erwarteten Wert entspricht (<> Holger-IP4
> bzw. Maria-IP4S). Das sollte also nur sehr selten passieren (z.B. nach
> Stromausfall / reboot Fritzbox).
> Diese Routine benötigt einige Sekunden um alle LanDevices zu prüfen. Hier
> ist sicherlich (siehe die Kommentar von Rudi im anderen Thread)
> Verbesserung möglich, aber "quick and dirty" gehts auch so, und blockiert
> die FB hoffentlich nur sehr selten, da der Neustart wohl eher selten
> vorkommt
> Weiterhin (siehe ebenfalls Kommentar von Rudi im anderen Thread) wäre die
> Umsetzung in die my_Utils sinnvoll. Darüber muss ich noch ein wenig
> "hirnen", da die Übergabe der Parameter für mich als ungeübten "Perler"
> nicht vor der Hand liegt, es muss ja sowohl der Status der LanID, als auch
> ggf. die neue LanID übergeben werden.
> Der Code gewinnt keinen Schönheitspreis, aber er ist analog zum Autor
> simple strukturiert und daher sicher auch für Gleichgestrickte verständlich.
>
>
> Für diejenigen, die es im aktuellen Status nutzen möchten: Anbei der Code
>
> define LanDeviceMaria dummy
> define LanDeviceHolger dummy
>
> set LanDeviceMaria 1
> set LanDeviceHolger 2
>
> define testwlan at +*00:05:00 {\
> my
> @Devicelist=("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20"."21","22","23","24","25");;\
> my $UserHolgerLanID="";;\
> my $StatusHolgerLanID="";;\
> my $UserMariaLanID="";;\
> my $StatusMariaLanID="";;\
> my $TestUser="";;\
> my $HolgerLanID = Value("LanDeviceHolger");;\
> my $MariaLanID = Value("LanDeviceMaria");;\
> $UserHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$HolgerLanID/name);;\
> $StatusHolgerLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice1/active);;\
> $StatusHolgerLanID=$StatusHolgerLanID * 1;;\
> $UserMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$MariaLanID/name);;\
> $StatusMariaLanID=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice1/active);;\
> $StatusMariaLanID=$StatusMariaLanID * 1;;\
> if ($UserHolgerLanID =~ m/Holger-IP4/) {\
> if ($StatusHolgerLanID == 1) {\
> if (Value("Holger_zu_Hause") eq "off") {\
> fhem "set HomeStatus ZuHause";;\
> }\
> fhem "set Holger_zu_Hause on";;\
> }\
> else {\
> if (Value("Holger_zu_Hause") eq "on") {\
> if (Value("Maria_zu_Hause") eq "off") {\
> fhem "set HomeStatus NichtzuHause";;\
> }\
> }\
> fhem "set Holger_zu_Hause off";;\
> };;\
> }\
> else {\
> foreach my $lanDev (@Devicelist){\
> $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$lanDev/name);;\
> print $TestUser;;\
> if($TestUser =~ m/Holger-IP4/){\
> fhem "set LanDeviceHolger $lanDev";;\
> }\
> }\
> };;\
> if ($UserMariaLanID =~ m/Maria-IP4S/) {\
> if ($StatusMariaLanID == 1) {\
> if (Value("Maria_zu_Hause") eq "off") {\
> fhem "set HomeStatus ZuHause";;\
> }\
> fhem "set Maria_zu_Hause on";;\
> }\
> else {\
> if (Value("Maria_zu_Hause") eq "on") {\
> if (Value("Holger_zu_Hause") eq "off") {\
> fhem "set HomeStatus NichtzuHause";;\
> }\
> }\
> fhem "set Maria_zu_Hause off";;\
> };;\
> }\
> else {\
> foreach my $lanDev (@Devicelist){\
> $TestUser=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$lanDev/name);;\
> print $TestUser;;\
> if($TestUser =~ m/Maria-IP4S/){\
> fhem "set LanDeviceMaria $lanDev";;\
> }\
> }\
> };;\
> }
>
>
>
>
>
>
>
>
>
>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
leider funktioniert das Ganze leider nur wenn FHEM auf der Fritze läuft ..
:(
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Hi
Doch es funktioniert auch wenn fhem auf einer anderen Maschine lauft.
Naturlich ist ein FritzBox doch benotigt und zwar eine gefreez-te.
Siehe:
http://groups.google.com/group/fhem-users/browse_thread/thread/4565b9b2fd082985/2f9f52563be3a27c?lnk=gst&q=csaba#2f9f52563be3a27c
Gruss,
Csaba
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hey,
das ist meine Lösung um zu gucken, ob ein Gerät im Netzwerk ist. Da ich
immer das Problem habe, das wenn ein neues Gerät ins Netzwerk kommt sich
die landevice[Nummer] ändert. Da mein Gerätename aber immer gleich bleibt,
wird danach erst gesucht und somit die Nummer festgestellt und anschließend
der Status festgestellt.
> define Mustermann dummy
>
> attr Mustermann room Muster
>
>
>> define WLAN notify WLAN {\
>
> my $net_device1="Sony-Xperia-S";;\
>
> $net_device1 = $net_device1."\n";;\
>
> my $number=0;;\
>
> my $net_device="";;\
>
> while($number <= 15){\
>
> $net_device=qx(/usr/bin/ctlmgr_ctl r landevice
>> settings/landevice$number/name);;\
>
> if($net_device eq $net_device1){\
>
> my $status=0;;\
>
> $status=qx(/usr/bin/ctlmgr_ctl r landevice
>> settings/landevice$number/active);;\
>
> fhem "set Mustermann $status";;\
>
> last;;\
>
> }\
>
> $number++;;\
>
> }\
>
> }
>
>
>> define TEST at +*00:05:00 trigger WLAN_TEST
>
>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Cool :)
Aktualisierst. Du das Wiki?
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
>
> define Mustermann dummy
attr Mustermann room Muster
> define WLAN notify WLAN {\
my $net_device1="Sony-Xperia-S";;\
$net_device1 = $net_device1."\n";;\
my $number=0;;\
my $net_device="";;\
while($number <= 15){\
$net_device=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$number/name);;\
if($net_device eq $net_device1){\
my $status=0;;\
$status=qx(/usr/bin/ctlmgr_ctl r landevice
> settings/landevice$number/active);;\
fhem "set Mustermann $status";;\
last;;\
}\
$number++;;\
}\
}
> define search_for_Mustermann at +*00:05:00 trigger WLAN
So, jetzt ist es fehlerfrei ;)
Wie registriert man sich denn im Wiki ?
Lg
Am Mittwoch, 18. Juli 2012 20:12:20 UTC+2 schrieb UliM:
>
> Cool :)
> Aktualisierst. Du das Wiki?
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Hab das Script leicht verändert ins Wiki eingetragen
LG
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Is there a delay in the publication? I can´t see it yet. Or post a link
please.
{HT}
Op donderdag 19 juli 2012 19:38:49 UTC+2 schreef jorge het volgende:
>
> Hab das Script leicht verändert ins Wiki eingetragen
>
> LG
>
>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Here it is:
http://fhemwiki.de/wiki/FritzBox:_WhoIsAtHome
JWK
Am Donnerstag, 19. Juli 2012 21:48:19 UTC+2 schrieb dudler:
>
>
> Is there a delay in the publication? I can´t see it yet. Or post a link
> please.
>
> {HT}
>
>
> Op donderdag 19 juli 2012 19:38:49 UTC+2 schreef jorge het volgende:
>>
>> Hab das Script leicht verändert ins Wiki eingetragen
>>
>> LG
>>
>>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Wunderbar :)
Danke
Lg
Am Donnerstag, 19. Juli 2012 19:38:49 UTC+2 schrieb jorge:
>
> Hab das Script leicht verändert ins Wiki eingetragen
>
> LG
>
>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
>
> So, habe alles nochmal verbessert und verändert, bitte im Wiki nachbesser,
>> wäre nett :)
>>
>
sub
FBWlanStat($$)
{
my ($net_device1)=@_[0];
$net_device1 = $net_device1."\n";
my $number=0;
my $status=0;
my $net_device="";
my $attendance="";
while($number <= 15){$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="Logged";}else{$attendance="NotLogged";}
fhem "set @_[1] $attendance";}
{FBWlanStat("MyWLANDeviceName", "MyDummyName")}
Status wird jetzt auch gesetzt, wenn das Gerät nicht im Netzwerk existiert
und man kann nun auch seine Dummys angeben, die man nutzt, falls man
mehrere Geräte hat, so ist man unabhängiger...
Lg
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
>
> So, habe alles nochmal verbessert und verändert, bitte im Wiki nachbesser,
>>>> wäre nett :)
>>>>
>>>
>> sub
>> FBWlanStat($$)
>> {
>> my ($net_device1)=@_[0];
>> $net_device1 = $net_device1."\n";
>> my $number=0;
>> my $status=0;
>> my $net_device="";
>> my $attendance="";
>> while($number <= 15){$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"}}
>>
>>
>> {FBWlanStat("MyWLANDeviceName", "MyDummyName")}
>>
>> Status wird jetzt auch gesetzt, wenn das Gerät nicht im Netzwerk
>> existiert und man kann nun auch seine Dummys angeben, die man nutzt, falls
>> man mehrere Geräte hat, so ist man unabhängiger...
>>
> Habe zudem noch ein If eingesetzt, damit wenn der Status gleich
bleibt, er nicht alle 5 min in den Log schreibt und nur dann denn Status
logged, wenn der Status sich geändert hat...
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Done. Solltest Dich bei Deinen Ideen unbedingt selber im Wiki registrieren
und diese (auch) dort mit anderen teilen...
Am Freitag, 20. Juli 2012 02:26:53 UTC+2 schrieb Sebastian:
>
> So, habe alles nochmal verbessert und verändert, bitte im Wiki nachbesser,
>>>>> wäre nett :)
>>>>>
>>>>
>>> sub
>>> FBWlanStat($$)
>>> {
>>> my ($net_device1)=@_[0];
>>> $net_device1 = $net_device1."\n";
>>> my $number=0;
>>> my $status=0;
>>> my $net_device="";
>>> my $attendance="";
>>> while($number <= 15){$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"}}
>>>
>>>
>>> {FBWlanStat("MyWLANDeviceName", "MyDummyName")}
>>>
>>> Status wird jetzt auch gesetzt, wenn das Gerät nicht im Netzwerk
>>> existiert und man kann nun auch seine Dummys angeben, die man nutzt, falls
>>> man mehrere Geräte hat, so ist man unabhängiger...
>>>
>> Habe zudem noch ein If eingesetzt, damit wenn der Status gleich
> bleibt, er nicht alle 5 min in den Log schreibt und nur dann denn Status
> logged, wenn der Status sich geändert hat...
>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Danke :)
Würde ich machen, wenn ich wüsste, wie man sich dort registriert xD
Lg
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo leute
When I use the example FHEM complains with
'
2012.07.20 18:39:32 3: Unknown attribute setList, choose one of room group comment alias eventMap disable:0,1 skip_next:0,1 loglevel:0,1,2,3,4,5,6 alignTime icon webCmd or use attr global userattr setList
on the line
attr MyAttendance setList Anwesend Abwesend
The problem seems to be the "Anwesend Abwesend". I have an international FB7390 in English. Is this an internationalization isssue?
"Present Absent" also doesn't work. "on off" does.
{HT}
Op vrijdag 20 juli 2012 14:35:54 UTC+2 schreef Sebastian het volgende:
>
> Danke :)
>
> Würde ich machen, wenn ich wüsste, wie man sich dort registriert xD
>
> Lg
>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Am Freitag, 20. Juli 2012 14:35:54 UTC+2 schrieb Sebastian:
>
> wenn ich wüsste, wie man sich dort registriert xD
siehe http://fhemwiki.de/wiki/FHEM
oben rechts 'news': 30.06.2011: If you want an account, please contact the *
admins
*Denn mal los :)
Gruß, Uli*
*
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com