Я не могу заставить Mail
(или Pony
в этом отношении) подключиться для отправки электронной почты через smtp-сервер с учетными данными, номером порта и параметром адреса, которые, как я знаю, верны. Однако при использовании почтового клиента (thunderbird, ink... и т. д.) я могу нормально подключиться.
Вот трассировка стека, которую я получаю:
ruby gmx_test.rb
/Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/protocol.rb:153:in `read_nonblock': end of file reached (EOFError)
from /Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/protocol.rb:153:in `rbuf_fill'
from /Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/protocol.rb:134:in `readuntil'
from /Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/protocol.rb:144:in `readline'
from /Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/smtp.rb:937:in `recv_response'
from /Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/smtp.rb:554:in `block in do_start'
from /Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/smtp.rb:947:in `critical'
from /Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/smtp.rb:554:in `do_start'
from /Users/sy/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/net/smtp.rb:519:in `start'
from /Users/sy/.rvm/gems/ruby-2.1.0/gems/mail-2.5.4/lib/mail/network/delivery_methods/smtp.rb:112:in `deliver!'
from /Users/sy/.rvm/gems/ruby-2.1.0/gems/mail-2.5.4/lib/mail/message.rb:2129:in `do_delivery'
from /Users/sy/.rvm/gems/ruby-2.1.0/gems/mail-2.5.4/lib/mail/message.rb:234:in `deliver'
from /Users/sy/.rvm/gems/ruby-2.1.0/gems/mail-2.5.4/lib/mail/mail.rb:140:in `deliver'
from gmx_test.rb:29:in `<main>'
Вот генерация кода:
require 'mail'
gmx_options = { :address => "mail.gmx.com",
:port => 465,
:user_name => '<username_redacted>@gmx.com',
:password => '<password_redacted>',
:authentication => 'plain',
:enable_starttls_auto => true }
Mail.defaults do
delivery_method :smtp, gmx_options
end
Mail.deliver do
to '<redacted>
from '<username_redacted>@gmx.com'
subject 'TEST'
body 'Hi.'
end
Вот скриншот настроек сервера одного из настольных почтовых клиентов, который может отправлять электронные письма:
Последний поворот сюжета: этот код работает, если я использую smtp от gmail.
Спасибо за любую информацию, которую вы, ребята, можете иметь!
:domain => 'gmx.com'
в хэшgmx_options
? - person Jason Kim   schedule 14.02.2014