Fritz!Box per Anruf von außen steuern, z.B. Rechner fernstarten lassen, WLAN anschalten, etc.

Meine Fritz!Box steht an einer sehr schlecht erreichbaren Stelle und ich habe keine Telefone an der Box angeschlossen. Wenn ich jetzt z.B. in der Nacht in das WLAN möchte, dies aber ausgeschaltet ist (durch die Nachtschaltung) muss ich erst über die quälend langsame GPRS Verbindung via Telnet auf die Box (oder auf die Weboberfläche, was noch langsamer ist) und dann das WLAN aktivieren.

Künftig erledige ich das Einschalten des WLANs mit einem einzigen Anruf. In der Box muss eine VOIP-Nummer eingerichtet sein, z.B. sipgate oder eine von eurem Internetanbieter.

Selbstverständlich ergeben sich noch unzählige andere Anwendungszwecke, ursprünglich wurde das Script dazu genutzt einen Rechner im internen LAN per Anruf zu starten (ether-wake).

Jetzt wird festgelegt, wenn ein Anruf einer bestimmten Nummer auf diese Nummer eintrifft, führe folgende Aktion aus. Dazu wird die Datei calllog bearbeitet.

nvi /var/flash/calllog

Dort fügt ihr folgendes Script ein:
#!/bin/sh


caller=017212345678
called=0891234567

echo "incoming call from $1 to $2"

if [ "$2" = "$called" -a "$caller" = "$1" ]; then
echo "WLAN on"
ctlmgr_ctl w wlan settings/ap_enabled 1
else if [ "$2" = "$called" ]; then
echo "access denied: $1"
fi
echo "no action"
fi

Angepasst werden muss:

caller=<die Nummer von der ihr anruft, z.B. Handynummer>
called=<die Nummer auf der der Anruf eingeht, die VOIP-Nummer>

Die Nummern müssen jeweils ohne +49 eingetragen werden, starten also immer mit einer 0.

Das obige Script schaltet WLAN ein. Dies wird durch diese Befehlszeile erledigt:

ctlmgr_ctl w wlan settings/ap_enabled 1

Soll eine andere Aktion ausgeführt werden, eben an dieser Stelle die entsprechenden Änderungen vornehmen.

Have phun!

4 Comments

  1. Kai

    Hallo,
    dieses Script wäre genau das Richtige für meine Anforderung. Leider hänge ich schon beim öffnen der ‘callog’. Über ‘ls /var/flash/’ hab ich herausgefunden, dass die Datei bei mir ‘calllog’ (dreimal l) heißt und auch sichtbar ist. Jedoch bringt ‘nvi /var/flash/calllog’ die Fehlermeldung:

    cat: can’t open ‘/var/flash/calllog’: No such file or directory

    Welches Problem könnte hier vorliegen?

    vG
    Kai

    PS: Fritzbox 7240 mit aktueller Firmware 73.05.52

  2. Tom

    Hi,

    es ist richtig, dass die Datei mit 3 l geschrieben wird. Habs oben bereits korrigiert.

    Jedoch sollte sich die Datei dann mit nvi öffnen lassen, wenn sie, wie du schon sagst, vorhanden ist…

  3. Dee

    Okay, ist etwas spät, aber vielleicht hilft es jemand anderem. Bei mir hat geholfen, zuerst mit “echo” etwas in die Datei zu schreiben. Danach ließ sie sich mit nvi öffnen:

    “echo a > calllog”

  4. Christoph

    Hallo,
    ich befasse mich das erste mal mit php (bisher VBA). Welche Software muss ich denn
    auf meinem Windows 10 – Rechner installieren um die calllog bearbeiten zu können ?

    Habe bisher php.exe 7 installiert, bekomme aber durch den nvi-Befehl
    nichts zurückgeliefert.

    Fritzbox 7490 mit OS 6.93

Leave a Reply

Your email address will not be published. Required fields are marked *