Für die Verbindung zum Telefonsystem ist Telnet erforderlich, jedoch kein vollständiger Client-Modus.

Für die Verbindung zum Telefonsystem ist Telnet erforderlich, jedoch kein vollständiger Client-Modus.

Mein Telefonsystem (Fritzbox 7170) gibt Protokolldaten über Telnet aus und es wird eine Art Skript benötigt, um es zu starten crontab, alle Daten zu erfassen und alles, was eingeht, unverzüglich in eine Protokolldatei zu schreiben.

Außerdem muss es in der Lage sein, Verbindungsabbrüche zu erkennen, da es die Verbindung so schnell wie möglich (sagen wir innerhalb weniger Sekunden) wiederherstellen muss, damit keine Anrufe verloren gehen.

Die Protokolldateien werden verwendet, um die Leitung zu überwachen, E-Mail-Benachrichtigungen über alle Anrufe zu senden, den Leitungsstatus auf meiner Website zu ändern und vieles mehr. Derzeit funktioniert es unter Windows, aber nicht auf meiner Debian-Box (RaspberryPi).

Unter Windows sieht es so aus; (und läuft alle 10 Minuten)

taskkill /f /im telnet.exe
copy /B log.old+log.txt log.old
sleep 1
del log.txt /f
telnet.exe -flog.txt fritz.box 1012

Antwort1

OK, um das Protokoll aus der Box zu erhalten, müssen Sie wahrscheinlich nur Folgendes tun:

netcat fritz.box 1012 >> log.txt

Ihre Distribution könnte das Netcat-Programm benennen nc.

Das Windows-Skript, das Sie oben gepostet haben, ist falsch, da es alle Telnet-Instanzen beendet – und überflüssig, da es lediglich log.txt an log.old anhängt.

Wenn Sie den neuesten Teil des Protokolls wünschen, führen Sie einfach aus tail -100 log.txt.

verwandte Informationen