
私の電話システム (fritzbox 7170) は、telnet でログ データを出力します。これを起動し、すべてのデータをキャプチャし、受信したすべてのデータを遅延なくログ ファイルに書き込むには、何らかの形式のスクリプトが必要ですcrontab
。
また、通話が失われないように、できるだけ早く(数秒以内など)再接続する必要があるため、切断を検出できる必要があります。
ログ ファイルは、回線の監視、すべての通話に関する電子メール アラートの送信、Web サイトでの回線ステータスの変更などに使用されます。現在、Windows では動作しますが、Debian ボックス (RaspberryPi) では動作しません。
Windows では次のようになります (10 分ごとに実行されます)
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
答え1
さて、ボックスからログを取得するには、おそらく次のようにすればよいでしょう
netcat fritz.box 1012 >> log.txt
ディストリビューションによっては、netcat プログラムに という名前が付けられる場合がありますnc
。
上記に投稿された Windows スクリプトは、すべての telnet インスタンスを強制終了するため間違っています。また、log.old に log.txt を追加するだけなので、不必要です。
ログの最新部分が必要な場合は、 を実行するだけですtail -100 log.txt
。