[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

net/smtp question

Michael Linfield

9/14/2007 4:12:00 AM

Ive tried several examples from numerous books trying to send mail with
net smtp and i never really get the emails.

require 'net/smtp'

message = <<MESSAGE_END
From: Nobody <nobody@power.net>
To: Someone <someone@hotmail.com>
Subject: Test SMTP

i pray that itll work
MESSAGE_END

Net::SMTP.start('mx1.hotmail.com') do |smtp|
smtp.send_message message, 'nobody@power.net', 'someone@hotmail.com'
end

#####
This was one example, i receive no errors indicating a problem but when
checking my email IE: someone@hotmail.com i dont have it in any
folders, not inbox or junkmail.

Another version that i modified to fit my own needs was this ----

require 'net/smtp'

puts "Sender: "
sender = gets.chomp
puts "Recipient: "
rcpt = gets.chomp
puts "Message: "
msg = gets.chomp

smtp = Net::SMTP.new('mx1.hotmail.com')

smtp.start()

smtp.ready(sender, rcpt) do |mail|

mail.write msg

end

#########
once again no errors

any ideas why i might not be getting the emails?
--
Posted via http://www.ruby-....

6 Answers

Mohit Sindhwani

9/14/2007 4:50:00 AM

0

Michael Linfield wrote:
> Ive tried several examples from numerous books trying to send mail with
> net smtp and i never really get the emails.
>
> require 'net/smtp'
>
> message = <<MESSAGE_END
> From: Nobody <nobody@power.net>
> To: Someone <someone@hotmail.com>
> Subject: Test SMTP
>
> i pray that itll work
> MESSAGE_END
>
> Net::SMTP.start('mx1.hotmail.com') do |smtp|
> smtp.send_message message, 'nobody@power.net', 'someone@hotmail.com'
> end
>
> #####
> This was one example, i receive no errors indicating a problem but when
> checking my email IE: someone@hotmail.com i dont have it in any
> folders, not inbox or junkmail.
>
> Another version that i modified to fit my own needs was this ----
>
> require 'net/smtp'
>
> puts "Sender: "
> sender = gets.chomp
> puts "Recipient: "
> rcpt = gets.chomp
> puts "Message: "
> msg = gets.chomp
>
> smtp = Net::SMTP.new('mx1.hotmail.com')
>
> smtp.start()
>
> smtp.ready(sender, rcpt) do |mail|
>
> mail.write msg
>
> end
>
> #########
> once again no errors
>
> any ideas why i might not be getting the emails?
>

I know I'm not directly answering your question, but there's a sample on
my blog:
http://notepad.ongh...

I think it would be good for you to try to send it to some other email
address, perhaps, you are missing some fields which make your mail look
like spam and is being dropped by something along the way?

Cheers,
Mohit.
9/14/2007 | 12:49 PM.




Konrad Meyer

9/14/2007 4:57:00 AM

0

Quoth Mohit Sindhwani on Thursday 13 September 2007 09:49:49 pm:
> Michael Linfield wrote:
> > Ive tried several examples from numerous books trying to send mail with
> > net smtp and i never really get the emails.
> >
> > require 'net/smtp'
> >
> > message = <<MESSAGE_END
> > From: Nobody <nobody@power.net>
> > To: Someone <someone@hotmail.com>
> > Subject: Test SMTP
> >
> > i pray that itll work
> > MESSAGE_END
> >
> > Net::SMTP.start('mx1.hotmail.com') do |smtp|
> > smtp.send_message message, 'nobody@power.net', 'someone@hotmail.com'
> > end
> >
> > #####
> > This was one example, i receive no errors indicating a problem but when
> > checking my email IE: someone@hotmail.com i dont have it in any
> > folders, not inbox or junkmail.
> >
> > Another version that i modified to fit my own needs was this ----
> >
> > require 'net/smtp'
> >
> > puts "Sender: "
> > sender = gets.chomp
> > puts "Recipient: "
> > rcpt = gets.chomp
> > puts "Message: "
> > msg = gets.chomp
> >
> > smtp = Net::SMTP.new('mx1.hotmail.com')
> >
> > smtp.start()
> >
> > smtp.ready(sender, rcpt) do |mail|
> >
> > mail.write msg
> >
> > end
> >
> > #########
> > once again no errors
> >
> > any ideas why i might not be getting the emails?
> >
>
> I know I'm not directly answering your question, but there's a sample on
> my blog:
> http://notepad.ongh...
>
> I think it would be good for you to try to send it to some other email
> address, perhaps, you are missing some fields which make your mail look
> like spam and is being dropped by something along the way?
>
> Cheers,
> Mohit.
> 9/14/2007 | 12:49 PM.

A lot of ISPs block people from having mail servers on their local machines,
as this is something zombie networks tend to do rather than joe idiot user.

--
Konrad Meyer <konrad@tylerc.org> http://konrad.sobertil...

Peña, Botp

9/14/2007 8:49:00 AM

0

From: Michael Linfield [mailto:globyy3000@hotmail.com]
# smtp = Net::SMTP.new('mx1.hotmail.com')
# smtp.start()

smtp.set_debug_output $stderr # insert this and email back the result

# smtp.ready(sender, rcpt) do |mail|
# mail.write msg

Dan Zwell

9/14/2007 10:08:00 AM

0

Michael Linfield wrote:
> Ive tried several examples from numerous books trying to send mail with
> net smtp and i never really get the emails.
>
> require 'net/smtp'
>
> message = <<MESSAGE_END
> From: Nobody <nobody@power.net>
> To: Someone <someone@hotmail.com>
> Subject: Test SMTP
>
> i pray that itll work
> MESSAGE_END
>
> Net::SMTP.start('mx1.hotmail.com') do |smtp|
> smtp.send_message message, 'nobody@power.net', 'someone@hotmail.com'
> end
>
> #####
> This was one example, i receive no errors indicating a problem but when
> checking my email IE: someone@hotmail.com i dont have it in any
> folders, not inbox or junkmail.
>
> Another version that i modified to fit my own needs was this ----
>
> require 'net/smtp'
>
> puts "Sender: "
> sender = gets.chomp
> puts "Recipient: "
> rcpt = gets.chomp
> puts "Message: "
> msg = gets.chomp
>
> smtp = Net::SMTP.new('mx1.hotmail.com')
>
> smtp.start()
>
> smtp.ready(sender, rcpt) do |mail|
>
> mail.write msg
>
> end
>
> #########
> once again no errors
>
> any ideas why i might not be getting the emails?

Does hotmail even allow SMTP usage? I noticed you were trying to connect
to the server mx1.hotmail.com. Try this with a GMail account or other
account, it should work. The following is part of a script that worked
for me, though I haven't tested it in 6 months. Ruby 1.8 doesn't support
TLS, so I had to require a file "smtp_tls.rb" that you can find on the
web. You won't need it if your server doesn't require TLS.


#!/usr/bin/env ruby
require 'net/smtp'
require 'smtp_tls'

myMessage = <<END_OF_MESSAGE
From: XXXXXXX <your_address@gmail.com>
To: XXXXXX <someone@example.com>
Subject: XXXXX XXXXXX

This e-mail is a test.
END_OF_MESSAGE

Net::SMTP.start('smtp.gmail.com', 587, 'localhost.localdomain',
username, password, :login) do |smtp|
smtp.send_message(myMessage, 'your_address@gmail.com',
['someone@example.com']);

end

__END__

Good luck,
Dan

Damjan Rems

9/17/2007 5:49:00 AM

0

Michael Linfield wrote:
> Ive tried several examples from numerous books trying to send mail with
> net smtp and i never really get the emails.
>
> require 'net/smtp'
>
> message = <<MESSAGE_END
> From: Nobody <nobody@power.net>
> To: Someone <someone@hotmail.com>
> Subject: Test SMTP
>
> i pray that itll work
> MESSAGE_END
>
> Net::SMTP.start('mx1.hotmail.com') do |smtp|
> smtp.send_message message, 'nobody@power.net', 'someone@hotmail.com'
> end

This example works perfectly good for me.

I would chack if server 'mx1.hotmail.com' allows message relaying.

by
TheR
--
Posted via http://www.ruby-....

BJ Dierkes

9/17/2007 6:04:00 AM

0


On Sep 17, 2007, at 12:48 AM, Damjan Rems wrote:

> Michael Linfield wrote:
>> Ive tried several examples from numerous books trying to send mail
>> with
>> net smtp and i never really get the emails.
>>
>> require 'net/smtp'
>>
>> message = <<MESSAGE_END
>> From: Nobody <nobody@power.net>
>> To: Someone <someone@hotmail.com>
>> Subject: Test SMTP
>>
>> i pray that itll work
>> MESSAGE_END
>>
>> Net::SMTP.start('mx1.hotmail.com') do |smtp|
>> smtp.send_message message, 'nobody@power.net',
>> 'someone@hotmail.com'
>> end
>
> This example works perfectly good for me.
>
> I would chack if server 'mx1.hotmail.com' allows message relaying.

Agreed.... meaning, in your example you are assuming that
mx1.hotmail.com is allowing un-authenticated SMTP. Majority of mail
server require that you perform SMTP Auth before any outgoing
transmission can occur.



Confidentiality Notice: This e-mail message (including any attached or
embedded documents) is intended for the exclusive and confidential use of the
individual or entity to which this message is addressed, and unless otherwise
expressly indicated, is confidential and privileged information of Rackspace
Managed Hosting. Any dissemination, distribution or copying of the enclosed
material is prohibited. If you receive this transmission in error, please
notify us immediately by e-mail at abuse@rackspace.com, and delete the
original message. Your cooperation is appreciated.