Showing posts with label mutt. Show all posts
Showing posts with label mutt. Show all posts

Thursday, March 10, 2011

Wysyłanie poczty przez mutt (w skrypcie)

"All mail clients suck. This one just sucks less."
The Mutt E-Mail Client
www.mutt.org

Prawda, że ładne hasło? Miałem problem z wysyłaniem wiadomości przez mutt, a właściwie z kodowaniem znaków. Napisałem skrypt, który wysyła powiadomienia o zmianie pliku na listę mailingową. Swoją drogą miało być góra po 10 linii kodu na plik (mniej więcej jak to przedstawiłem we wcześniejszym wpisie), a wyszło prawie 300 linii - jak zwykle :).
Kodowanie w systemie mam ustawione na UTF-8, jak wysyłam e-maila poleceniem

echo "śćńłó" | mutt -s "test ółąę" do@mnie.nie

to nie ma problemów z polskimi znakami, czyli kodowaniem, ale jak wrzucę to w skrypt i odpalę przez crona to w niektórych serwisach (zwłaszcza poczta przez www) jest problem z polskimi znakami.
Zacząłem grzebać w opcjach klienta mutt i znalazłem parę fajnych opcji (plik /etc/Muttrc):

set send_charset="utf-8"
set charset="utf-8"
set edit_headers=yes
set realname="od kogo [jak chcesz]"
set from="to@nie.jestod.root"
set use_from=yes
my_hdr Reply-To: odp@do.mnie.pl

Ta druga rozwiązuje ten problem, szkoda tylko, że przez cały dzień myślałem, że to ta pierwsza - trudno, czasami trzeba się przespać z problemem.

Dlaczego wybrałem Mutt? Wygodny sposób na wysyłanie e-maili z załącznikami (opcja -a)

Jak objawiały się problemy z kodowaniem? Pierwszy to

Content-Type: multipart/mixed; boundary="ZGiS0Q5IWpPtfppv"
powinno być
Content-Type: text/plain; charset=utf-8

oraz

Subject: Zmiana =?unknown-8bit?Q?rozk?= =?unknown-8bit?B?xYJhZHUgemFqxJnEhyAtIFJhZHp5bWnFhHNrYQ==?=

powinno być

Subject: =?utf-8?B?YWFhw7PFgsWExbzFmw==?=

i wszystko jasne, prawda :)