Rastreando suas encomendas dos Correios
Publicado por Fábio Fabris (última atualização em 23/01/2010)
[ Hits: 9.207 ]
Download 1263939365.correios.sh (versão 2)
Script para rastrear os pacotes dos correios que você está esperando. Assim que o pacote mudar de estado ou chegar, um email é enviado para o usuário.
O email deve estar devidamente configurado.
Um exemplo de configuração para o gmail:
/etc/ssmtp/ssmtp.conf
#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=postmaster
# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=smtp.gmail.com:465
# Where will the mail seem to come from?
#rewriteDomain=
# The full hostname
hostname=marvin
# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=NO
UseTLS=YES
AuthUser=????@gmail.com
AuthPass=????
Versão 2 - Enviado por Fábio Fabris em 19/01/2010
Changelog: Sugestões de arthurd2 adicionadas;
Script mais robusto: prevê indisponibilidade do site;
Download 1263939365.correios.sh
#!/bin/bash
URL='http://websro.correios.com.br/sro_bin/txect01$.QueryList?P_LINGUA=001&P_TIPO=001&P_COD_UNI='
PATHTMP="/tmp"
function getPage {
wget -nv -t 10 $2 -O $1.html >>$PATHTMP/$CODE.log 2>>$PATHTMP/$CODE.log
html2text -nobs $1.html > $1.out
}
function usage {
cat << EOF
uso: $0 -c [CODIGO DE RASTREAMENTO] -e [EMAIL] -i [INTERVALO] -b
-c O código de rastreamento dado pelos correios
-e O email para enviar as atualizações (o mail deve estar configurado)
-i intervalo entre checagens em segundos (padrão: 1 hora)
-b aviso sonoro no caso de modificação
EOF
}
function checkOpt {
eval R='$'$1
if test -z '$'$1
then
echo $2
read -e $1
fi
}
function beepAux {
if ! [ -z $BEEP ]
then
beep
fi
}
while getopts "c:e:i:bh" OPTION
do
case $OPTION in
c)
CODE=$OPTARG;;
e)
EMAIL=$OPTARG;;
i)
POLLTIME=$OPTARG;;
b)
BEEP=beep;;
h)
usage
exit;;
?)
usage
exit;;
esac
done
checkOpt CODE "Entre com o código de ratreamento do produto"
checkOpt EMAIL "Entre com o email que deve ser avisado"
checkOpt POLLTIME "Entre com o intervalo de checagens"
beepAux
if [ -e $PATHTMP/${CODE}"base.out" ]
then
echo "arquivo de referencia existe"
else
echo "baixando arquivo de referencia"
getPage $PATHTMP/${CODE}"base" $URL$CODE
fi
#echo | mail $EMAIL -s "\"Quando ' $CODE ' chegar te aviso\""
while [ 1 ];
do
date
date >> $PATHTMP/$CODE.log
getPage $PATHTMP/${CODE}"tmp" $URL$CODE
if cmp -s $PATHTMP/${CODE}"base.out" $PATHTMP/${CODE}"tmp.out" >> $PATHTMP/$CODE.log
then
echo 'Sem mudança'
else
echo 'Houve mudança'
echo '***** Houve mudança *****' >> $PATHTMP/$CODE.log
beepAux
if fgrep -q Entregue $PATHTMP/${CODE}"base.out"
then
mail $EMAIL -s '"Chegou o Pacote"' <$PATHTMP/${CODE}"tmp.out"
echo "chegou o pacote"
exit
else
mail $EMAIL -s '"Mudança de Estado"' <$PATHTMP/${CODE}"tmp.out"
getPage $PATHTMP/${CODE}"base" $URL$CODE
fi
fi
sleep $POLLTIME
done
Acessar celular Motorola via USB
Monitorando acessos on-line em log do squid com autenticação.
Script para ripar CDs de audio e codificar as faixas para MP3
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Programa fora de escala na tela do pc (41)
\Boot sem espaço em disco (Fedora KDE Plasma 42) (5)
Preciso recuperar videos *.mp4 corrompidos (0)









