FBF WLAN/ FBF 7050; Status von WLAN mit PWR-LED Anzeigen?

j-g-s

Mitglied
Mitglied seit
22 Sep 2005
Beiträge
537
Punkte für Reaktionen
3
Punkte
18
Bei meiner Fritzbox_Fon_WLAN (ohne 7050) stört mich das man es Ihr von aussen nicht ansieht ob WLAN ein oder ausgeschaltet ist.

Bei der Fb_WL_3050 ist dafür die mittlere LED vorgesehen (WLAN),

bei der FBF ist dort die LED für Tel. Festnetz, so das diese nicht verwendet werden kann.

Da die meisten wohl DSL-Volumen oder Flat haben,
leuchtet die Power-LED und die DSL-LED normalerweise fast immer.

:idea: Wenn, die DSL-Verbindung steht und WLAN abgeschaltet wird, könnte man das durch das Abschalten der Power-LED signalisieren.

Wenn, DSL verloren geht, also aus, müsste die Power-LED wieder an gehen.

So ne Art Script müsste von Zeit zur Zeit, DSL-Leitung und WLAN checken
und die Power-LED, sowie DSL-LED steuern.

Vorschlag:
Powerled| DSL-LED | bedeutet
------------------------------------
aus | aus | Box nicht eingeschaltet :wink:
blinkt | aus | DSL Einwahl
ein | ein | DSL & WLAN ein
aus | ein | DSL ein; WLAN aus
(noch zu machen)
 
Na dann lieber Power-LED zus. mit DSL-Einwahl kombinieren:

Aus: Box aus
Kurzes blinken: Booten
1x Blinken, Pause: DSL-Sync besteht, nicht eingewählt
An: mit Internet-Provider verbunden

Dann ist das DSL-LED komplett frei für WLAN:

Aus: WLAN ausgeschaltet
An: WLAN mit PC verbunden
Blinken: WLAN an, keine WLAN-karte verbunden
 
Okay, ob WLAN an ist, findet man mit
ifconfig|grep wlan
raus.

Und wie lässt sich feststellen, ob eine DSL-Verbindung besteht?
 
Auch möglich,
mir fiel nur das permanete, nichts sagende leuchten zweier LEDs auf.
Und da bei wüste ich manchmal gerne ob WLAN 1 oder 0?

Wer kann das ändern?, welche Dateien?, hat jemand Erfahrung ???

und wie :noidea:

echo 8,1>var/led = Power LED aus
echo 8,2>var/led = Power LED an
echo 2,1>var/led = DSL LED aus
echo 2,2>var/led = DSL LED an

und

update_led_on
update_led_off ...

:?:
 
Pumbaa80 schrieb:
Okay, ob WLAN an ist, findet man mit
ifconfig|grep wlan
raus.

Und wie lässt sich feststellen, ob eine DSL-Verbindung besteht?

mit einem ping?
 
ja, 2 Probleme:
1. Was wenn der angepingte Server ausfällt oder keine Pings beantwortet?
2. Tritt beim Pingen der unangenehme Nebeneffekt auf, dass dabei automatisch (ungewollt) eine Verbindung hergestellt wird.
 
1. Könnte ein Problem sein, man kann aber mehrere Seiten anpingen
2. Ich denke mal, fast jeder hat inzwischen einen Volumentarif oder eine Flat. Zeittarife mit DSL und Router zu koppeln fand ich persönlich schon immer sehr unseriös! Und voipen sollte man sowieso nur mit (Volumen-) Flat. Da die kostenlose Erreichbarkeit sonst drunter leidet ;)
 
Naja, der Ping Ist ja eher ein Trick und keine direkte Verbindungserkennung.

Habe folgende saubere Möglichkeit gefunden:
Code:
wget -O /var/tmp/indexseite "http://localhost/cgi-bin/webcm?getpage=../html/de/menus/menu2.html&var:lang=de&var:menu=home&var:pagename=home"
Nun muss man noch mit sed (kann ich net :oops: ) in /var/tmp/indexseite nach
ConnectDisplay("
suchen, wenn dann eine 5 dasteht ist DSL aktiv, bei einer 3 nicht.

Außerdem hat man dann auch noch gleich den WLAN-Status, der steht hinter
wlanstate = "
 
Hab ich auch schon gedacht.
Auf der Index Seite steht ja:

DSL: Aktiv
WLAN: Aktiv

Problem 1: Bei meiner Fritzbox ist ein Kennwort eingestellt.
Also bekomme ich die Seite wo man das Kennwort eingibt.

Problem 2:Ohne Kennwort bekomme ich die Seite, wo drinn steht
das mein Browser kein Javascript unterstützt
 
Bei mir funktioniert es. Ich habe allerdings nie ein PW für das Webinterface gesetzt. Allerdings sollte es reichen, vorher eine Anfrage mit PW abzusetzen. Habe ich zumindest hier im Forum gelesen. Bin aber grade zu faul zum suchen...

[EDIT]
Eine elegantere Möglichkeit den Onlinstatus festzustellen, ist den multid wie folgt neuzustarten:
Code:
multid -s
sleep 5
multid -S "/var/tmp/onlinestatus.sh"
Wenn sich der Onlinestatus ändert, übergibt der multid online bzw. offline als Parameter an das Script.
[/EDIT]

Gruß Sascha
 
Problem 2 kann auch ich nicht so recht nachvollziehen. Bei der 7050 funktioniert es so.

Allerdings sollte es reichen, vorher eine Anfrage mit PW abzusetzen. Habe ich zumindest hier im Forum gelesen.
Ja, aaaaaber: Es existiert keine Logout-Funktion - das heißt, der Passwortschutz wäre hinfällig, wenn man im Hintergrund ständig das Passwort eingibt wie z.B. hier:
http://www.ip-phone-forum.de/forum/viewtopic.php?p=181264#181264
Problem 1 scheint mir also im Moment unlösbar.

Das mit dem multid ist aber auch nicht gerade perfekt. Da wird doch die Verbindung getrennt?

Da muss man wohl doch auf die Ping-Variante zurückgreifen :-/
 
Pumbaa80 schrieb:
Ja, aaaaaber: Es existiert keine Logout-Funktion - das heißt, der Passwortschutz wäre hinfällig, wenn man im Hintergrund ständig das Passwort eingibt
IMHO ist aber PC-B noch lange nicht eingelogt wenn PC-A eingelogt ist. Also bloß weil die Fritzbox sich bei sich selbst einlogt, muß noch lange kein anderer PC eingelogt sein.
Pumbaa80 schrieb:
Das mit dem multid ist aber auch nicht gerade perfekt. Da wird doch die Verbindung getrennt?
Nein. Die Zeilen mit dem multid werden nur ein mal, z.B. in der debug.cfg ausgeführt, um dem multid den Parameter übergeben zu können. Wobei die erste Zeile für die debug.cfg ersetzt werden muß durch ein "killall multid". Das noch zu erstellende Script, in diesem Fall "/var/tmp/onlinestatus.sh" wird vom multid jedes mal gestartet wenn sich der Onlinestatus ändert.
[EDIT]
Zum Login hatte ich an diese Lösung von Fritzchen gedacht. Damit kann man sich den Umweg über wget ebenfalls sparen.
[/EDIT]

Hth Sascha
 
Ah, jetzt hab ichs auch kapiert. :) Okay, das ist natürlich ein großer Fortschritt.

Den WLAN-Status könnte man mit
echo wlancfg.ap_enabled | wlancfgctl -s
abfragen (gefunden in /etc/init.d/rc.net)
 
Ich habe mal Fritzchens Lösung ein wenig umgearbeitet.
Code:
PASSWORD="test" # Passwort ggf anpassen

export REQUEST_METHOD="POST"
export REMOTE_ADDR="127.0.0.1"
export CONTENT_TYPE="application/x-www-form-urlencoded"
POST_DATA="login:command/password=$PASSWORD"
export CONTENT_LENGTH=${#POST_DATA}
echo -n "$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null

export REQUEST_METHOD="GET"
export REMOTE_ADDR="127.0.0.1"
export QUERY_STRING="getpage=../html/de/menus/menu2.html&var:lang=de&var:menu=home&var:pagename=home"
cd /usr/www/html/cgi-bin
./webcm |
sed -n 's/^.*ConnectDisplay("\([0-9]\)").*$/\1/p'
Funktioniert bei mir auch mit gesetztem Passwort.

Hth Sascha

EDIT: Copy&Paste Fehler im Code korrigiert
 
Gut, das ist ja echt hervorragend!
Ich habe jetzt mal eine debug.cfg programmiert, mit der man hoffentlich schon was anfangen kann. (Beta-Version ;-))
Code:
/usr/sbin/telnetd -l /sbin/ar7login

PASSWORD="Mein_Passwort" # hier Passwort eintragen
DSL_WLAN_REFRESH=5 # Alle x Sekunden den DSL-und WLAN-Status ueberpruefen

cat << EOF > /var/tmp/DSL-Status
#!/bin/sh
LAST_PATH=\`pwd\`
export REQUEST_METHOD="POST"
export REMOTE_ADDR="127.0.0.1"
export CONTENT_TYPE="application/x-www-form-urlencoded"
POST_DATA="login:command/password=$PASSWORD"
export CONTENT_LENGTH=\${#POST_DATA}
echo -n "\$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null
export REQUEST_METHOD="GET"
export REMOTE_ADDR="127.0.0.1"
export QUERY_STRING="getpage=../html/de/menus/menu2.html&var:lang=de&var:menu=home&var:pagename=home"
cd /usr/www/html/cgi-bin
./webcm | sed -n 's/^.*ConnectDisplay("\(.\).*/\1/p'
cd \$LAST_PATH
EOF

chmod 700 /var/tmp/DSL-Status

cat << EOF > /var/tmp/DSL-WLAN-Check
#!/bin/sh
case \`/var/tmp/DSL-Status\` in
3|4)
  echo DSL-Verbindung wird hergestellt ;;
5)
  echo DSL-Verbindung ist aktiv ;;
*)
  echo DSL-Verbindung ist getrennt ;;
esac
case \`echo wlancfg.ap_enabled | wlancfgctl -s\` in
0)
  echo WLAN ist aus ;;
1)
  echo WLAN ist an ;;
*)
  echo Unbekannter WLAN-Status! ;;
esac
EOF

chmod +x /var/tmp/DSL-WLAN-Check

cat << EOF > /var/tmp/DSL-WLAN-Daemon
#!/bin/sh
while [ 1 ]
do
/var/tmp/DSL-WLAN-Check
sleep $DSL_WLAN_REFRESH
done
EOF

chmod +x /var/tmp/DSL-WLAN-Daemon
#/var/tmp/DSL-WLAN-Daemon &
Es werden folgende Skripte erstellt:
/var/tmp/DSL-Status
/var/tmp/DSL-WLAN-Check
/var/tmp/DSL-WLAN-Daemon (z.Zt. deaktiviert)

Nun müsste man noch die "echo"-Zeilen durch entsprechende LED-Kommandos ersetzen.
Hilfe dazu gibt es hier:
http://www.ip-phone-forum.de/forum/viewtopic.php?t=23709
Aber ich blicke immer noch nicht so ganz durch, wie das ganze genau funktioniert.

Wenn alles einigermaßen läuft, kann man die drei Skripte natürlich zu einem einzigen zusammenfassen.
Zum Testen finde ich es so aber angenehmer.
 
Super Arbeit!

Habe gestern schon ein wenig getestet, läuft prima bis jetzt.

So weit währe ich selber nicht gekommen, schon wegen der Zeit...
 
Die Power-LED scheint durch irgend einen Prozess fest ein zu sein.
([s:988dbac29a]dsld?[/s:988dbac29a] bei meiner F3050 WDS-ATA gehts)

echo 8,1>/var/led # sollte ausgehen, tut aber nicht :(

Damit scheiden auch alle Blink-Varianten aus.

Da die Internet und Festnetz - LED sowie die INFO für kostenlose Gespräche bleiben sollten, schlage ich die DSL-LED vor.

echo 2,1>/var/led # aus; kein DSl- Kein WLAN ? zwecklos
echo 2,2>/var/led # ein; DSL & WLAN an
echo 2,4>/var/led # blinkt langsam; DSL ein, WLAN aus

echo 2,3>/var/led # blinkt und nervt, Fritzbox heiß gelaufen ;)

echo 17,3>/var/led # Star-Wars landet ; auch POWER-LED !
echo 17,1>/var/led # wieder alles normal

edit:
Wenn man eine LED mit zB "echo 18,2" (INFO) einschaltet muß man auch mit "echo 18,1" ausschalten, nicht mit "echo 7,1"

echo 17,x wirkt auf alle

Wenn alles aus ist leuchte immer die Power-LED, auch wenn sie nicht gesetzt ist.

Alles bezieht sich auf eine Fritzbox Fon WLAN, dürft aber auch bei der 7050 gehen.
 
wäre es nicht auch gut eventuell noch etwas anderes zu modifizieren:
die powerled blinkt zur zeit bei dsl-problemen. wenn man das nun ändern könnte in:
an=box an, wlan aus
blinken=box an, wlan an
aus=box aus

somit müsste man dann die funktion der dsl-led noch ändern um das blinken der powerled nachzubilden:
an=internetverbindung besteht
aus=keine internetverbindung
langsam blinken: dsl-problem (kein dsl-connect)
schnell blinken: provider-problem (kein login möglich, aber dsl da)

aber natürlich könnte man auch die dsl-led für alles benutzen:
an=internetverbindung
aus=keine internetverbindung
schnell-blinken=wlan an mit internetverbindung
langsam-blinken=wlan an ohne internetverbindung
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.