Masowe wysyłanie maili

31 Lipca 2017

Spotkaliście się kiedyś z problemem wysłania czegoś do dużej liczby osób, tak żeby nie zdradzać każdemu listy adresatów? Albo wysyłając maile, chcieliście zmienić treść dla każdej osoby (np. zacząć od “Cześć [Imię]”)?

Ja też spotkałem się z tym problemem i poniżej opisuję po krótce, co miałem zrobić i jak to zrobiłem.

Robimy w drużynie Quidditcha raz na rok wybory. Żeby zachować anonimowość, a jednocześnie zapewnić, że nikt nie zagłosuje dwa razy, wpadłem na pomysł, by wygenerować dla głosujących tokeny. Każdy token może być użyty tylko raz i ma dodatkowe warunki walidacji, żeby nie było tak, że ktoś wpisze dowolny ciąg znaków i mu to przejdzie.

Żebym nie musiał pisać do każdego na facebooku i żebym nie miał wglądu do tego, kto dostał jaki token i jak zagłosował, postanowiłem wysłać je ludziom mailem.

W związku z tym ściągnąłem Thunderbird, klienta pocztowego, dodałem do niego swoje konto i zacząłem szukać pluginów do masowego rozsyłania maili.

W końcu natrafiłem na Mail Merge, którego zaletą jest to, że może ciągnąć dane z pliku CSV. Więc mój generator tokenów przygotowywał mi plik CSV o nagłówku

Email,Notes

który wykorzystałem do wysyłania maili z tokenami (token był w polu ‘Notes’).

W polu “Do” wpisałem {{Email}}, a w treści maila pojawiło się {{Notes}} i na tej podstawie wysłałem ponad 20 zcustomizowanych wiadomości.

Jedyną trudność sprawiło mi to, że nie wiedziałem, że spacje w CSV są istotne i że postawienie spacji po przecinku zmienia mi pole Notes w  Notes.

Na koniec wspomnę, że GMail zapisuje w “wysłanych” wiadomości wysyłane przez SMTP (czego większość serwerów pocztowych nie robi). Więc żeby nie pozostawić śladu, kto dostał jaki token, musiałem je ręcznie usunąć.