Napisałem poradnik jak skonfigurować AquaPi by wysyłał powiadomienia e-mail za pomocą pakietu msmtp (mailutils nie udało mi się uruchomić)
Wysyłanie e-mail z Aqua pi za pomocą msmtp
Na początek odinstalować pakiet mailutils 'nie będzie potrzebny' --> sudo apt-get purge mailutils
Instalujemy msmtp --> sudo apt-get install msmtp
Następnie instalacja msmtp ca-certificates --> sudo apt-get install msmtp ca-certificates
Teraz trzeba stworzyć plik "msmtprc" w katalogu /etc --> sudo nano /etc/msmtprc
Konfiguracja pliku "msmtprc" dla gmail: (z tego e-maila będzie wysyłać).
account default
port 587
logfile /tmp/msmtp.log
tls on
tls_starttls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
auth login
password ZZZZZ <-- hasło do konta
Zapisać utworzony plik i zrestartować system --> sudo reboot
Po uruchomieniu przetestować działanie w terminalu:
przykład: echo -e "Subject: Test msmtp AquaPi Mail\r\n\r\nThis is a test mail" |msmtp --debug --from=default -t
user...@gmail.com
user...@gmail.com --> adres e-mail, na który ma być wysłana wiadomość (musi być inny niż w pliku konfiguracyjnym "msmtprc" )
Sprawdzić pocztę, czy przyszła wiadomość (może znajdować się w spamie).
Jeżeli wiadomość przyszła, kolej na modyfikację pliku "email.c" --> sudo nano /home/pi/src/Software/daemon/e-mail.c
Podmienić kod od linii 22 na:
const char *email_template =
"Content-Type: text/html; charset=UTF-8\
Subject: Aquapi\
\r\n\r\n\
<!doctype html>\
<html lang='pl'>\
<head>\
<meta charset='utf-8'>\
<style>\
body {font-family: 'Montserrat', sans-serif;}\
.header {background-color: red; text-align:center; color:white; font-size:20pt; padding:1pt;}\
</style>\
</head>\
<body>\
<div class='header'>\
<h1>⚠️</h1>\
<p>%s</p>\
</div>\
</body>\
</html>";
const char *email_templat = "%s";
const char *email_command = "msmtp --debug --from=default -t %s < /tmp/errormail";
char email_address[200];
void email_ReadSettings() {
DB_GetSetting("email_address", email_address);
}
void email_error(char *msg, int lev) {
FILE *fp;
char command[500];
remove("/tmp/errormail");
fp = fopen("/tmp/errormail", "w+");
fprintf(fp, email_template, msg); //, msg
fclose(fp);
sprintf(command, email_command, email_address);
system(command);
}
"Dodaje również w załączniku gotowy już plik email.c" -- > należy go podmienić w katalogu "daemon" za pomocą np. winscp
Zapisać i przejść do katalogu daemon --> cd /home/pi/src/Software/daemon/
wyczyść --> sudo make clean
następnie skompilować na nowo --> sudo make
Zatrzymać daemon --> sudo /etc/init.d/aquapi.rc stop
Skopiować plik "aquapi" do katalogu local --> sudo cp aquapi /usr/local/aquapi/
Uruchomić daemon --> sudo /etc/init.d/aquapi.rc start
W zakładce "powiadomienia" w WebUI wpisać swój e-mail zapisać, wysłać i sprawdzić skrzynkę.
Mam nadzieję że o niczym nie zapomniałem
Pozdrawiam Michał