7170 per Anruf neu starten

Deiti

Neuer User
Mitglied seit
26 Apr 2006
Beiträge
3
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

ich hab mir schon eien Wolf gesucht, aber finde leider keine Lösung zu meinem Problem.
Ich habe Alice als Provider und leider bricht die Internetverbindung ab und zu zusammen. Eine erneute Einwahl ist erst nach dem Neustart der Box möglich. Gibt es eine Möglichkeit die Box per Telefonanruf neu zu starten? Dann könnte ich wieder auf meinen FTP Server zugreifen, falls sich die Box mal wieder "abschiesst".

Vielen Dank für Eure Hilfe
Deiti
 
Hallo,
ich habe da eine Möglichkeit gefunden.
Man muss folgenden Code an die debug.cfg anhängen, und es müsste funktioniren. (Noch ungetestet)
Code:
# Lokales Verzeichnis (muss beschreibbar sein) in dem die Dateien liegen sollen
localdir="/var/tmp"
# In das Lokale Verzeichnis wechseln
cd $localdir
#############################
# reebot-on-call config START #
#############################
# Wenn ein Anruf auf diesem SIP Port erfolgt, dann soll er die Fritzbox neustarten
# SIP Port Nummer gibts hier: FBF Web-Interface öffnen / Telefonie / Internettelefonie
# Beispiel: *124# ist dann z.B. SIP4
# Wenn reebot-On-Call deaktivert werden soll, dann irgendwas eintragen
wolsip=SIP4

# Wer darf die Kiste neustarten???
# jeder         Jeder der die Nummer $wolsip anruft, darf den Rechner aufwecken
# TelNummer        Wenn es nur eine bestimmte Tel-Nummer darf
woltel=0123456789

############################
# reebot-on-call config ENDE #
############################

######################
#reebot-on-call START #
######################

# reebot-on-call.sh erstellen
cat > $localdir/reebot-on-call.sh << 'END'
#!/bin/sh
trap "" SIGCHLD
# stdin: Ausgabe vom Telefon Daemon wird erwartet
while read line
do
case ${line} in
IncomingCall:*)
caller=${line#*caller: \"}
caller=${caller%%\"*}
called=${line#*called: \"}
called=${called%%\"*}
echo Angerufende Nummer = $called  > $localdir/reebot-on-call.info
echo Nummer vom Anrufer = $caller >> $localdir/reebot-on-call.info
END
echo "# Pruefen ob die angerufende Nr die WOL-SIP ist"                       >> $localdir/reebot-on-call.sh
echo "if [ "$"called = $wolsip ]; then"                                      >> $localdir/reebot-on-call.sh
echo "  # Prüfen ob jeder die Box reeboten lasse darf. Wenn "jeder" dann neustarten" >> $localdir/reebot-on-call.sh
echo "  if [ jeder = $woltel ]; then"                                        >> $localdir/reebot-on-call.sh
echo "    /sbin/reboot"                                                 >> $localdir/reebot-on-call.sh
echo "  fi"                                                                  >> $localdir/reebot-on-call.sh
echo "  # Dann darf es wohl nur eine bestimmte Nummer"                       >> $localdir/reebot-on-call.sh
echo "  # Prüfen ob es die bestimmte Nummer ist"                             >> $localdir/reebot-on-call.sh
echo "  if [ "$"caller = $woltel ]; then"                                    >> $localdir/reebot-on-call.sh
echo "    /sbin/reboot"                                                 >> $localdir/reebot-on-call.sh
echo "  fi"                                                                  >> $localdir/reebot-on-call.sh
echo "fi"                                                                    >> $localdir/reebot-on-call.sh
chmod +x $localdir/reebot-on-call.sh

#reebot-on-call einbinden
# Telefon Daemon neu starten; Ausgabe ge-piped nach reebot-on-call.sh
if [ -x $localdir/reebot-on-call.sh ]
  sleep 4
  then
  # Telefon Daemon sicher stoppen
  killall -15 telefon
  sleep 4
  killall -9 telefon
  rm -f /var/run/telefon.pid
  sleep 4
  # Telefon Daemon starten
  telefon a127.0.0.1 | $localdir/reebot-on-call.sh &
fi
#####################
# reebot-on-call ENDE #
#####################
Es müsste funktioniren. Zur Info: Ich habe dieses Skript aus einem Wake-on-Call Skript zusammengebastelt, nur statt einen PC zu wecken soll es die Fritz Box reeboten lassen.
Ich wünch dir viel Glück damit :)
 
Hi,
erst mal vielen Dank für Deine Mühe.
Aber die von Dir beschriebene Methode geht ja nur über eine SIP Nummer, die geht aber leider nicht wenn ich kein Internet habe. Oder kann ich das auch über eine Festnetznummer machen?
Gruss
Deiti
 
Hallo,
das mit dem Internetausfall habe ich leider übersehen.
Wie wäre es denn, wenn die Box automatisch reebotet, wenn eine gewisse Zeit (hier 2 Minuten, kann aber angepasst werden) keine Internetverbindung verfügbar ist? Das folgende Skript für die debug.cfg würde dafür sorgen.(Edit: noch ungetestet)
Code:
while !(ping www.computerbild.de) do #warten auf Internet, falls im folgenden Teil ein fehler ist kann so die Datei per ziehen des Internetkabels gestoppt werden, und damit man nicht in eine endlosschleife geraet.
sleep 10 # 10 Sekunden zwichen den versuchen warten
done
while (true) do # dauerhafte pruefung, damit es auch z.B. eine Woche nach dem letzten Neustart noch klappt
while (ping www.computerbild.de) do #solange Internetverbindung besteht,
sleep 10                                               # 10 Sekunden warten
done
#jetzt besteht keine verbindung mehr
sleep 120                                             # 2 Minuten warten, fuer den Fall, dass es die taegliche zwangstrennung war
if !(ping www.computerbild.de) then  #wenn die Internetverbindung immernoch nicht verfuegbar ist
sbin/reboot     #neustarten
fi
done
 
Wie wäre es denn, wenn die Box automatisch reebotet, wenn eine gewisse Zeit (hier 2 Minuten, kann aber angepasst werden) keine Internetverbindung verfügbar ist?
Tu es nicht, denn auch aus/eingehende Telefonate (in diesem Fall per Festnetz) werden sofort unterbrochen. Das gibt auf Dauer böses Blut :(
 
Kostenlos!

Statistik des Forums

Themen
248,106
Beiträge
2,281,527
Mitglieder
377,316
Neuestes Mitglied
philippderdiedas