Fetches the message header and lines
lines of body.
The optional dest
argument is obsolete.
This method raises a POPError
if an error occurs.
Returns truth value if this object uses STARTTLS. If this object always uses STARTTLS, returns :always. If this object uses STARTTLS when the server support TLS, returns :auto.
Creates a new Net::SMTP
object and connects to the server.
This method is equivalent to:
Net::SMTP.new(address, port).start(helo_domain, account, password, authtype)
Net::SMTP.start('your.smtp.server') do |smtp| smtp.send_message msgstr, 'from@example.com', ['dest@example.com'] end
If called with a block, the newly-opened Net::SMTP
object is yielded to the block, and automatically closed when the block finishes. If called without a block, the newly-opened Net::SMTP
object is returned to the caller, and it is the caller’s responsibility to close it when finished.
address
is the hostname or ip address of your smtp server.
port
is the port to connect to; it defaults to port 25.
helo
is the HELO domain provided by the client to the server (see overview comments); it defaults to ‘localhost’.
The remaining arguments are used for SMTP
authentication, if required or desired. user
is the account name; secret
is your password or other authentication token; and authtype
is the authentication type, one of :plain, :login, or :cram_md5. See the discussion of SMTP
Authentication in the overview notes.
This method may raise:
true
if the SMTP
session has been started.
Opens a TCP connection and starts the SMTP
session.
helo
is the HELO domain that you’ll dispatch mails from; see the discussion in the overview notes.
If both of user
and secret
are given, SMTP
authentication will be attempted using the AUTH command. authtype
specifies the type of authentication to attempt; it must be one of :login, :plain, and :cram_md5. See the notes on SMTP
Authentication in the overview.
When this methods is called with a block, the newly-started SMTP
object is yielded to the block, and automatically closed after the block call finishes. Otherwise, it is the caller’s responsibility to close the session when finished.
This is very similar to the class method SMTP.start
.
require 'net/smtp' smtp = Net::SMTP.new('smtp.mail.server', 25) smtp.start(helo_domain, account, password, authtype) do |smtp| smtp.send_message msgstr, 'from@example.com', ['dest@example.com'] end
The primary use of this method (as opposed to SMTP.start
) is probably to set debugging (set_debug_output
) or ESMTP (esmtp=
), which must be done before the session is started.
If session has already been started, an IOError
will be raised.
This method may raise:
Inserts switch
at the head of the list, and associates short, long and negated long options. Arguments are:
switch
OptionParser::Switch
instance to be inserted.
short_opts
List
of short style options.
long_opts
List
of long style options.
nolong_opts
List
of long style options with “no-” prefix.
prepend(switch, short_opts, long_opts, nolong_opts)
Pushes back erred argument(s) to argv
.
Returns error reason. Override this for I18N.
Appends sep
to the text to be output. By default sep
is ‘ ’
width
argument is here for compatibility. It is a noop argument.
This is used as a predicate, and ought to be called first.
Rewinds the internal position for enumeration.
See Enumerator
#rewind.