foreach(address, port = nil, account, password, isapop=false) {|mail| .... } -> ()[permalink][rdoc]POP セッションを開始し、サーバ上のすべてのメールを取りだし、個々のメールを引数としてブロックを呼びだします。
個々のメールは Net::POPMail のインスタンスで渡されます。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を使います。
以下のコードと同様の処理をします。
require 'net/pop'
Net::POP3.start(address, port, account, password, isapop=false) {|pop|
pop.each_mail do |m|
yield m
end
}
使用例:
require 'net/pop'
Net::POP3.foreach('pop.example.com', 110,
'YourAccount', 'YourPassword') do |m|
file.write m.pop
m.delete if $DELETE
end
[SEE_ALSO] Net::POP3.start, Net::POP3#each_mail