Слишком много параметров на Imap :: new - PullRequest
0 голосов
/ 15 февраля 2012

Я пытаюсь сделать следующее, но Imap::new жалуется на слишком много параметров

require 'rubygems'
require 'highline/import'
require 'net/imap'

puts "username"
username = gets
password = ask("Enter password: ") { |q| q.echo = false }

imap = Net::IMAP.new('imap.gmail.com', {:port => '993', :ssl => true})

puts "connecting to imap server"

imap.login(username, password)
imap.select('INBOX')
imap.select('INBOX')
imap.search(["NOT", "DELETED"]).each do |message_id|
    envelope = imap.fetch(message_id, "ENVELOPE")[0].attr["ENVELOPE"]
    puts "#{envelope.from[0].name}: \t#{envelope.subject}"
    i += 1
    Process.exit if i>10
end

Ошибка:

/Users/username/.rbenv/versions/1.9.2-p290/lib/ruby/1.9.1/net/imap.rb:1101:in `get_tagged_response': Too many arguments provided ci7if1523987wib.93 (Net::IMAP::BadResponseError)
    from /Users/username/.rbenv/versions/1.9.2-p290/lib/ruby/1.9.1/net/imap.rb:1153:in `block in send_command'
    from /Users/username/.rbenv/versions/1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
    from /Users/username/.rbenv/versions/1.9.2-p290/lib/ruby/1.9.1/net/imap.rb:1135:in `send_command'
    from /Users/username/.rbenv/versions/1.9.2-p290/lib/ruby/1.9.1/net/imap.rb:419:in `login'
    from pull.rb:13:in main

Есть идеи?

1 Ответ

0 голосов
/ 15 февраля 2012

Это должно сработать

imap = Net::IMAP.new('host', 993, true) // host, port, ssl
imap.login('IMAP_USERNAME', 'IMAP_PASSWORD')
imap.select('INBOX')

Кстати. вы выбираете INBOX дважды:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...