.titleBar { margin-bottom: 5px!important; }

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

Dieses Thema im Forum "FRITZ!Box Fon: Modifikationen" wurde erstellt von j-g-s, 21 Nov. 2005.

  1. j-g-s

    j-g-s Mitglied

    Registriert seit:
    22 Sep. 2005
    Beiträge:
    503
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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)
     
  2. Novize

    Novize Moderator
    Forum-Mitarbeiter

    Registriert seit:
    17 Aug. 2004
    Beiträge:
    20,619
    Zustimmungen:
    25
    Punkte für Erfolge:
    48
    Beruf:
    Jepp!
    Ort:
    NRW
    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
     
  3. Pumbaa80

    Pumbaa80 Mitglied

    Registriert seit:
    17 Mai 2005
    Beiträge:
    374
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Okay, ob WLAN an ist, findet man mit
    ifconfig|grep wlan
    raus.

    Und wie lässt sich feststellen, ob eine DSL-Verbindung besteht?
     
  4. j-g-s

    j-g-s Mitglied

    Registriert seit:
    22 Sep. 2005
    Beiträge:
    503
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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 ...

    :?:
     
  5. fritzchen

    fritzchen Aktives Mitglied

    Registriert seit:
    29 Dez. 2004
    Beiträge:
    813
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    mit einem ping?
     
  6. j-g-s

    j-g-s Mitglied

    Registriert seit:
    22 Sep. 2005
    Beiträge:
    503
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
  7. Pumbaa80

    Pumbaa80 Mitglied

    Registriert seit:
    17 Mai 2005
    Beiträge:
    374
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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.
     
  8. Novize

    Novize Moderator
    Forum-Mitarbeiter

    Registriert seit:
    17 Aug. 2004
    Beiträge:
    20,619
    Zustimmungen:
    25
    Punkte für Erfolge:
    48
    Beruf:
    Jepp!
    Ort:
    NRW
    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 ;)
     
  9. Pumbaa80

    Pumbaa80 Mitglied

    Registriert seit:
    17 Mai 2005
    Beiträge:
    374
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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 = "
     
  10. sascha

    sascha Neuer User

    Registriert seit:
    30 Sep. 2004
    Beiträge:
    165
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Guten Abend,
    Wie wäre es hiermit?
    Code:
    sed -n 's/^.*ConnectDisplay("\([0-9]\)").*$/\1/p' /var/tmp/indexseite
    Gruß Sascha
     
  11. j-g-s

    j-g-s Mitglied

    Registriert seit:
    22 Sep. 2005
    Beiträge:
    503
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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
     
  12. sascha

    sascha Neuer User

    Registriert seit:
    30 Sep. 2004
    Beiträge:
    165
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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
     
  13. Pumbaa80

    Pumbaa80 Mitglied

    Registriert seit:
    17 Mai 2005
    Beiträge:
    374
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Problem 2 kann auch ich nicht so recht nachvollziehen. Bei der 7050 funktioniert es so.

    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 :-/
     
  14. sascha

    sascha Neuer User

    Registriert seit:
    30 Sep. 2004
    Beiträge:
    165
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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.
    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
     
  15. Pumbaa80

    Pumbaa80 Mitglied

    Registriert seit:
    17 Mai 2005
    Beiträge:
    374
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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)
     
  16. sascha

    sascha Neuer User

    Registriert seit:
    30 Sep. 2004
    Beiträge:
    165
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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
     
  17. Pumbaa80

    Pumbaa80 Mitglied

    Registriert seit:
    17 Mai 2005
    Beiträge:
    374
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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.
     
  18. j-g-s

    j-g-s Mitglied

    Registriert seit:
    22 Sep. 2005
    Beiträge:
    503
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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...
     
  19. j-g-s

    j-g-s Mitglied

    Registriert seit:
    22 Sep. 2005
    Beiträge:
    503
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    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.
     
  20. niemand0815

    niemand0815 Guest

    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