Подтвердить что ты не робот

ruby-gmail: Исключено исключение: 534-5.7.14 <https: >

Я могу вручную войти в свою учетную запись, но когда я использую ruby-gmail, это вызовет ошибку

это мой код

require 'gmail'

gmail = Gmail.new("[email protected]", "passwd")

gmail.deliver do
  to "[email protected]"
  subject "Having fun in Puerto Rico!"
  text_part do
    body "Text of plaintext message."
  end
  html_part do
    content_type 'text/html; charset=UTF-8'
    body "<p>Text of <em>html</em> message.</p>"
  end
  add_file __FILE__
end

это мой полный выход

Uncaught exception: 534-5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbtMk

    /home/roroco/.rbenv/versions/2.1.5/lib/ruby/2.1.0/net/smtp.rb:969:in 'check_auth_response'
    /home/roroco/.rbenv/versions/2.1.5/lib/ruby/2.1.0/net/smtp.rb:740:in 'auth_plain'
    /home/roroco/.rbenv/versions/2.1.5/lib/ruby/2.1.0/net/smtp.rb:732:in 'authenticate'
    /home/roroco/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/ruby-gmail-0.3.1/lib/smtp_tls.rb:57:in 'do_tls_start'
    /home/roroco/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/ruby-gmail-0.3.1/lib/smtp_tls.rb:18:in 'start'
    /home/roroco/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/mail-2.6.1/lib/mail/network/delivery_methods/smtp.rb:112:in 'deliver!'
    /home/roroco/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/mail-2.6.1/lib/mail/message.rb:248:in 'deliver!'
    /home/roroco/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/ruby-gmail-0.3.1/lib/gmail.rb:107:in 'deliver'
    /home/roroco/Dropbox/rbs/ro_plans/ex/ex.rb:5:in '<top (required)>'

Обновить

Решение: https://security.google.com/settings/u/1/security/apppasswords > генерировать новое для почты> запомнить его> заполнить его в ruby-gmail passwd

4b9b3361

Ответ 1

В Gmail есть некоторые функции безопасности, которые необходимо включить/отключить. 1 - Внутри учетной записи gmail перейдите в "Настройки"> "Пересылка" и "POP/IMAP" и включите протоколы (протоколы), которые вы хотите использовать

2 - Включить доступ к менее безопасным приложениям https://www.google.com/settings/security/lesssecureapps

Ответ 2

Я меняю gem "ruby-gmail" на gem "gmail", он работает.

update: он не может исправить мой вопрос, gem 'gmail' игнорирует только мою ошибку (ошибка ошибки повышения)