Používáte Raspbian a Ubunntu 16.04 LTS, takže potřebujete obecné řešení pro Linux.
Požadavek je jednoduchý:
Potřebuji způsob, jak odesílat jednořádkové e-mailové zprávy z příkazového řádku.
Nastavil jsem si účet gmail pouze pro tento konkrétní Rpi3 s adresou [email protected] – bez 2FA
Nyní tedy musím být schopen odesílat jednořádkové e-mailové zprávy odkudkoli (včetně cronu) bez zásahu uživatele.
Také bych chtěl, aby bylo možné odesílat textové soubory; v podstatě cokoliv z stdin
.
Přijatá odpověď:
Nejjednodušší odpovědí na odesílání jednořádkových zpráv přes gmail je použití ssmtp
Nainstalujte jej pomocí následujících příkazů:
sudo apt-get update
sudo apt-get install ssmtp
Upravte /etc/ssmtp/ssmtp.conf
vypadat takto:
[email protected]
mailhub=smtp.gmail.com:465
FromLineOverride=YES
[email protected]
AuthPass=testing123
UseTLS=YES
Pošlete jednořádkovou zprávu takto:
echo "Testing...1...2...3" | ssmtp [email protected]
nebo
printf "Subject: TestnnTesting...1...2...3" | ssmtp [email protected]
Pak, věrný *nix, dostanete výzvu zpět za několik sekund.
Zkontrolujte svůj [e-mail chráněný] účet a voila, je to tam!
To také funguje dobře při odesílání souboru, takže:
cat program.py | ssmtp [email protected]
A program se zobrazí ve schránce
Pokud je soubor textovým souborem, může mít první řádek, který říká Subject: xxxxxx
To lze použít s různými úlohami cron, které mi mohou posílat data s předmětem označujícím obsah.
To bude fungovat se vším, co připravuje zprávu, která je přenesena do ssmtp přes stdin.
Další podrobnosti, jako je zabezpečení těchto souborů proti jiným uživatelům a podobně, naleznete v tomto článku:
Odeslat e-mail z příkazového řádku Raspberry Pi
Nezapomeňte se také podívat níže na odpověď od Rui
o uzamčení FROM:
adresa, která může být v případě potřeby změněna ve formátovaných souborech zpráv.
Teď kdybych jen mohl přijít na to, jak posílat SMS stejným způsobem.