Retrieve Gmail using Ruby
- by Kartik Rao
I need to retrieve emails from my Gmail account using Ruby on Rails. I'm currently using this piece of code, but it gives me a timeout error everytime.
require 'net/pop'
pop = Net::POP3.new 'mail.isp.com'
pop.start '[email protected]', 'password'
if pop.mails.empty?
   puts "No mail."
else
   puts "You have #{pop.mails.length} new messages."
   puts "Downloading..."
   pop.mails.each_with_index do|m,i|
   File.open( "inbox/#{i}", 'w+' ) do|f|
   f.write m.pop
end
   m.delete
 end
end
This is the error I recieve
/usr/lib/ruby/1.8/timeout.rb:60:in `new': execution expired (Timeout::Error)
    from /usr/lib/ruby/1.8/net/protocol.rb:206:in `old_open'
    from /usr/lib/ruby/1.8/net/protocol.rb:206:in `old_open'
    from /usr/lib/ruby/1.8/net/pop.rb:438:in `do_start'
    from /usr/lib/ruby/1.8/net/pop.rb:432:in `start'
    from script/mail.rb:4
Any help will be appreciated!