Pada sistem operasi Linux dan Unix, Anda dapat menggunakan fetchmail
untuk polling akun email IMAP Anda, dan meneruskan pesan baru apa pun procmail
. Anda bisa mengonfigurasi procmail untuk menjalankan skrip berdasarkan pencocokan pola ekspresi reguler dalam pesan yang diterima.
Untuk melakukan ini, Anda harus menginstal paket fetchmail dan procmail. Konfigurasi berikut memungkinkan saya untuk menjalankan skrip untuk setiap pesan email baru diterima di akun email saya. Saya menggunakan Ubuntu 12,04 LTS.
Dalam ~/.fetchmailrc
:
# .fetchmailrc checks my e-mail account for new messages, sends them to procmail
set logfile /home/myusername/fetchmail.log
poll mail.domain.com protocol IMAP
user "emailaccountname"
password 'emailpassword'
folder 'INBOX'
keep
ssl
mda "/usr/bin/procmail -f %F"
Perhatikan keep
arahan di atas, yang memastikan bahwa pesan tidak dihapus dari server IMAP setelah diambil.
Dalam ~/.procmailrc
:
# .procmailrc received e-mails from fetchmail and runs a script
PATH=/usr/bin:/usr/local/bin
LOGFILE=/home/username/procmail.log
SHELL=/bin/sh
# This rule triggers for every e-mail message:
:0
| `/home/username/myscript.sh`
Ada banyak tutorial online untuk fetchmail dan procmail, dan juga tutorial untuk mengintegrasikan keduanya (begitulah cara saya menemukan hal di atas).
Sekarang jika saya menjalankan fetchmail
atau fetchmail -v
skrip /home/username/myscript.sh
berjalan sekali untuk setiap pesan baru. Saya dapat menjalankan fetchmail dalam cron, atau mengkonfigurasi fetchmail untuk dijalankan sebagai daemon dengan set daemon 600
direktif dalam .fetchmailrc
( di mana 600 adalah jumlah detik di antara jajak pendapat).