2012-02-28 4 views
0

루비를 사용하여 Google 앱을 통해 이메일을 보내고 있습니다. 이메일을 보내고 받고 있습니다. 문제는 이메일이 Gmail받은 편지함에 제목이없는 공개되지 않은 수신자에게 전송되는 것으로 나타납니다.루비 이메일 비공개 수신자 보내기

require 'rubygems' 
require "tlsmail" 

message = <<MESSAGE_END 
From: From Address <[email protected]> 
To: My Address <[email protected]> 
Subject: The Subject 
Date: #{Time.now.rfc2822} 

This is the email body. 

MESSAGE_END 

Net::SMTP.enable_tls(OpenSSL::SSL::VERIFY_NONE) 
Net::SMTP.start('smtp.gmail.com', 587, 'smtp.gmail.com', '[email protected]', 'password', :login) do |smtp| 
smtp.send_message(message, '[email protected]', '[email protected]') 
end 

앞서 언급 한 것처럼 이메일이 수신되었습니다. 다음과 같은 헤더가 표시됩니다.

보낸 사람 :받는 사람 : 내 주소 제목 : 대상 날짜 : 화요일, 28 Feb 2012 09:54:22 -0500 [email protected] 발신자 : 보낸 사람 : 9 : 54 (GMT-08 : 00). 현재 시간 : 7:45 AM. ✆ ~ : 날짜 : 2012 년 2 월 28 일, 화요일 오전 9:54

제목이 누락되었습니다.

이것은 큰 문제는 아니지만 가능한 경우 일반 이메일처럼 들어오고 싶습니다.

답변

0

tlsmail을 사용하고 있는지 잘 모르겠지만 Pony와 Google Apps는 성공했습니다. 나는 기본 옵션 (여기에 표시)에 그들을 병합 도우미 (나는시나를 사용하고 있습니다)이 싸서 및 특정 매개 변수를 전달

require 'pony' 

email_data = { 
    :from    => 'Mailer <[email protected]>', 
    :to    => '[email protected]', 
    :subject   => 'Some subject', 
    :body    => 'A plain text body', 
    :html_body  => haml :email, # render html email using haml 
    :port    => '587', 
    :via    => :smtp, 
    :via_options  => { 
    :address     => 'smtp.gmail.com', 
    :port      => '587', 
    :enable_starttls_auto  => true, 
    :user_name    => '[email protected]', 
    :password     => 'mailer_password', 
    :authentication   => :plain, 
    :domain     => 'mydomain.com' 
    } 
} 
Pony.mail(email_data) 

: 여기에 광산의 변형 예이다. 나는 당신이 그것을보고 싶으면 업데이트 할 것입니다.

+0

대단히 감사합니다. – Peter

+0

@Peter 응답 양식 (예 : 문의 양식, 수신, 사용자에게 회신)과 같이 사용자가 생성하려는 일종의 전자 메일을 가지려면 해당 전자 메일을 보내야합니다. 응답 할 이메일과는 다른 이메일입니다. 이는 Google Apps의 한계점이지만이를 파악하는 것은 좌절 할 수 있습니다. –