Postfix - wykonanie skryptu z po odebraniu maila

Konfiguracja serwerów, usług, itp.
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Postfix - wykonanie skryptu z po odebraniu maila

Post autor: giaur »

Witam.

Debian Sid, najnowsza wersja Postfixa z Sida. Postępuję według tego: http://www.linuxforums.org/forum/server ... email.html

Do mojego main.cf dodałem na końcu coś takiego:

Kod: Zaznacz cały

transport_maps = hash:/etc/postfix/transport

myscript  unix - n n - - pipe
user = postfix argv=/home/michal/test.sh
Ale po wykonaniu komendy: postmap transport

Kod: Zaznacz cały

postmap: fatal: /etc/postfix/main.cf, line 73: missing '=' after attribute name: "myscript unix - n n - - pipe"
Gdy dodam ten '=', czyli zrobię tak:

Kod: Zaznacz cały

myscript= unix - n n - - pipe
user = postfix argv=/home/michal/test.sh
to postmap bez błędów, ale po restarcie postixa mam:

Kod: Zaznacz cały

/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: myscript=unix - n n - - pipe
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: user=postfix argv=/home/michal/test.sh
Czyli i tak to ustawienie jest ignorowane. Czy to ja robię coś źle, czy ten opis jest zły?
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

giaur pisze: Do mojego main.cf dodałem na końcu coś takiego:

Kod: Zaznacz cały

transport_maps = hash:/etc/postfix/transport
myscript  unix - n n - - pipe
user = postfix argv=/home/michal/test.sh
A nie czasem do master.cf? I masz wcięcie przed drugą linią, czyli przed "user"?
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Post autor: giaur »

Zgadza się. Mój błąd, nie doczytałem. Gdy dodam to do master.cf to działa. Ale wtedy wiadomości nie przychodzą już do skrzynki odbiorczej - wykonywany jest tylko skrypt i wiadomość idzie w próżnię. Z tego co zdążyłem się dowiedzieć, tak właśnie ma być i że lepiej wykorzystać do tego procmaila. Więc, do main.cf dodałem coś takiego:

Kod: Zaznacz cały

mailbox_command = /usr/bin/procmail -a "$EXTENSION" DEFAULT=$HOME/Maildir/ 
Skrypt ma wysyłać smsa z informacjami po otrzymaniu poczty. Więc przykładowy .procmailrc w katalogu domowym użytkownika:

Kod: Zaznacz cały

:0c
| $HOME/send_sms.sh "`formail -xFrom:`" "`formail -xSubject:`"
Skrypt ma dostawać jako parametry: nadawcę wiadomości i temat wiadomości. Niestety, nie działa to tak jak chcę. Gdy zrobię to tak, to dostaję dwukrotnie tylko nadawcę wiadomości. Po drugie, mam śmieci jeśli nadawca jest w utf8 (z polskimi znakami), zamiast czystego tekstu.

Pytanie, jak to napisać żeby formail działał poprawnie?
ODPOWIEDZ