sbclからGmailをSMTPサーバとし、メール送信する
手順
cl+sslをインストール
(require :asdf) (require :asdf-install) (asdf-install:install :cl+ssl)
cl-smtpをインストール。
- 20090306現在、asdfのcl-smtpではssl/tslが使えない。
- cvsリポジトリ↓から最新のものを持ってくる。
- http://common-lisp.net/cgi-bin/viewcvs.cgi/?cvsroot=cl-smtp
$ tar -zxvf root.tar.gz $ mv ~/cl-smtp ~/.sbcl/site/ $ ln -s ~/.sbcl/site/cl-smtp/cl-smtp.asd ~/.sbcl/system/cl-smtp.asd
- asdfでロード
(asdf:oos 'asdf:load-op :cl-smtp)
Gmailからメールを送る。
;;usernameとpasswordとto-addressは読み替えてください。 (cl-smtp:send-email "smtp.gmail.com" "username@gmail.com" "to-address" "test-mail-subject" "test-mail-body." :ssl :tls :authentication '(:login "username@gmail.com" "password"))
こんなかんじでいけた。
- portを587にするとうまくいかなかった。
- GmailアカウントのPOPを有効にしておく必要があるみたい。
- http://mail.google.com/support/bin/answer.py?answer=13287
- POPで受信したい場合は、:melってのが対応してるみたい。
- http://abstractstuff.livejournal.com/31218.html
- 詳しく調べていないが、こちらは送信はできない模様。(Postfixなどで中継をはさめば可能?)