Module: Redmine::POP3
- Defined in:
- lib/redmine/pop3.rb
Class Method Summary
Class Method Details
+ (Object) check(pop_options = {}, options = {})
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/redmine/pop3.rb', line 23 def check(={}, ={}) host = [:host] || '127.0.0.1' port = [:port] || '110' apop = ([:apop].to_s == '1') delete_unprocessed = ([:delete_unprocessed].to_s == '1') pop = Net::POP3.APOP(apop).new(host,port) puts "Connecting to #{host}..." pop.start([:username], [:password]) do |pop_session| if pop_session.mails.empty? puts "No email to process" else puts "#{pop_session.mails.size} email(s) to process..." pop_session.each_mail do |msg| = msg.pop = ( =~ /^Message-ID: (.*)/ ? $1 : '').strip if MailHandler.receive(, ) msg.delete puts "--> Message #{message_id} processed and deleted from the server" else if delete_unprocessed msg.delete puts "--> Message #{message_id} NOT processed and deleted from the server" else puts "--> Message #{message_id} NOT processed and left on the server" end end end end end end |