open_message_stream( from_addr, *to_addrs ) public

Opens a message writer stream and gives it to the block. The stream is valid only in the block, and has these methods:

puts(str = ’’):outputs STR and CR LF.
print(str):outputs STR.
printf(fmt, *args):outputs sprintf(fmt,*args).
write(str):outputs STR and returns the length of written bytes.
<<(str):outputs STR and returns self.

If a single CR ("\r") or LF ("\n") is found in the message, it is converted to the CR LF pair. You cannot send a binary message with this method.


from_addr is a String representing the source mail address.

to_addr is a String or Strings or Array of Strings, representing the destination mail address or addresses.


    Net::SMTP.start('smtp.example.com', 25) do |smtp|
      smtp.open_message_stream('from@example.com', ['dest@example.com']) do |f|
        f.puts 'From: from@example.com'
        f.puts 'To: dest@example.com'
        f.puts 'Subject: test message'
        f.puts 'This is a test message.'


This method may raise:

Show source
Register or log in to add new notes.