Fantom

 

class

email::SmtpClient

sys::Obj
  email::SmtpClient

SmtpClient implements the client side of SMTP (Simple Mail Transport Protocol) as specified by RFC 2821.

See docLib and examples.

Slots

authCramMd5Source

Void authCramMd5()

Authenticate using CRAM-MD5 mechanism.

authLoginSource

Void authLogin()

Authenticate using LOGIN mechanism.

authPlainSource

Void authPlain()

Authenticate using PLAIN mechanism.

authenticateSource

Void authenticate()

Authenticate using the strongest mechanism which both the server and myself support.

closeSource

Void close()

Close the session to the SMTP server. Do nothing if session already closed.

hostSource

Str? host

DNS hostname of server.

isClosedSource

Bool isClosed()

Return true if there is no open session.

logSource

Log log := Log.get("smtp")

Log for tracing

openSource

Void open()

Open a session to the SMTP server. If username and password are configured, then SMTP authentication is attempted. Throw SmtpErr if there is a protocol error. Throw IOErr is there is a network problem.

passwordSource

Str? password

Password to use for authentication, or null to skip authentication.

portSource

Int port := 25

TCP port number of server, defaults to 25.

sendSource

Void send(Email email)

Send the email to the SMTP server. Throw SmtpErr if there is a protocol error. Throw IOErr if there is a networking problem. If the session is closed, then this call automatically opens the session and guarantees a close after it is complete.

usernameSource

Str? username

Username to use for authentication, or null to skip authentication.