MailBot służy do wysyłania automatycznie maili o określonej treści do odbiorców, którzy są zapisani w pliku txt.
mail
- adres e-mail nadawcypassword
- hasło nadawcyhost
- adres serwera mailowegoport
- port SMTP serweramails_txt_file
- nazwa pliku.txt
w katalogudata
zawierająca listę maili wraz z użytkownikami, którzy mają być końcowymi odbiorcami wiadomości (struktura pliku poniżej)mails_json_file
- nazwa pliku.json
(w katalogudata
), do której ma być zapisana struktura danych zawierająca nazwy użytkowników, adresy e-mail oraz ich UUIDsubject
- temat wiadomościmail_template
- nazwa pliku.txt
, w którym jest szablon wiadomości przesyłanej do użytkowników (struktura pliku poniżej)date
- data zakończenia ewidencjiattachments_subject
- temat wiadomości zwrotnej do nadawcy zawierającej załączniki z wynikami działania botaattachment_mail_text
- tekst powyższej wiadomościconfirm_link
- link do strony służącej do potwierdzania użytkowników z przygotowanym już wcześniej polem w adresie do przyjęcia żądaniaHTTP GET
Pojedynczy rekord danych powinien wyglądać następująco:
mail: <mail użytkownika>
Rekordów może być dowolna ilość, wszystko poza tym schematem zostanie zignorowane.
Treść pliku może być dowolna, istnieją ponadto dwa literały podmiany indywidualizujące treść maila:
{mail}
jest zamieniane w treści maila na nazwę danego użytkownika z pliku{date}
jest zamienane na podaną datę zakończenia ewidencji{confirm_link}
jest zamienane na podany link wraz z dodanym UUID danego użytkownika
- Przekopiuj plik
config/config.json.example
jakoconfig/config.json
. - Wprowadź swoją konfigurację do utworzonego wyżej pliku.
- Postąp tak samo w przypadku pliku zapisanego pod
mail_template
. - Utwórz katalog
data
, po czym umieść w nim plik zapisany podmails_txt_file
.
Wystarczy wpisać polecenie:
./mailbot.py
Po wysłaniu maili do wszystkich podanych odbiorców następuje wysłanie maila z załącznikami o wynikach działania bota do nadawcy tych wiadomości - co zabezpiecza przed sytuacją stracenia wszystkich danych przez ponowne uruchomienie bota.
Te pliki zawierają dane potrzebne do dalszego etapu ewidencji maili
data/mails.json
- struktura danych zawierająca niezbędne UUIDlogs/logs.log
- logi, w których są zawarte informacje dlaczego nie udało się wysłać mailalogs/sent.log
- lista adresów, na które udało się wysłać maillogs/notsent.log
- lista adresów, na które nie udało się wysłać maila