Precisa de telnet para se conectar ao sistema telefônico, mas não no modo cliente completo

Precisa de telnet para se conectar ao sistema telefônico, mas não no modo cliente completo

Meu sistema telefônico (fritzbox 7170) gera dados de log no telnet e é necessário algum tipo de script para iniciá-lo crontab, capturar todos os dados e gravar qualquer coisa que chegue em um arquivo de log sem demora.

Ele também precisa ser capaz de detectar quaisquer desconexões, pois precisa se reconectar o mais rápido possível (digamos, dentro de alguns segundos) para que nenhuma chamada seja perdida.

Os arquivos de log serão usados ​​para monitorar a linha, enviar alertas por e-mail sobre todas as chamadas, alterar o status da linha no meu site e muito mais. No momento funciona no Windows, mas não na minha caixa Debian (RaspberryPi).

No Windows é assim; (e funciona a cada 10 minutos)

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

Responder1

OK, para obter o log da caixa, você provavelmente só precisa fazer

netcat fritz.box 1012 >> log.txt

Sua distribuição pode nomear o programa netcat nc.

O script do Windows que você postou acima está errado, pois elimina todas as instâncias do telnet - e é supérfluo, pois tudo o que faz é anexar log.txt a log.old.

Se você quiser a parte mais recente do log, simplesmente execute tail -100 log.txt.

informação relacionada