Tudo pode ser feito com apenas curl
.
Enviar e-mail
MSG="From: [email protected]
To: Receiver
Subject: Test"
echo "$MSG" | curl --url 'smtps://smtp.gmail.com:465' --ssl-reqd \
--mail-from "[email protected]" --mail-rcpt "[email protected]" \
--upload-file - --user "[email protected]:password" --insecure
Para ler e-mails, primeiro você precisa saber quantos e-mails estão na caixa de entrada.
EXISTS="$(curl --insecure \
--user "[email protected]:password" \
--url 'imaps://imap.gmail.com:993/' \
--request "EXAMINE INBOX" | grep "EXISTS" | grep -oP '\d*' | head -n1 )"
echo "$EXISTS"
O email mais recente tem o maior número. Imprima o assunto dos últimos cinco e-mails, o mais recente primeiro.
for ((i=$EXISTS;i!=$EXISTS-5;i--)); do
SUBJECT="$(curl --insecure -u "[email protected]:password" \
--url "imaps://imap.gmail.com:993/INBOX;UID=$i" | \
grep "Subject: " | head -n1 )"
echo "$SUBJECT"
done
Aviso: para ativar o acesso smtp / imap como este, você deve entrar nas configurações do gmail para desativar as configurações seguras.