Documentation

Swift_SmtpTransport extends Swift_Transport_EsmtpTransport
in package

Sends Messages over SMTP with ESMTP support.

Tags
author

Chris Corbyn

Table of Contents

$addressEncoder  : mixed
$buffer  : mixed
Input-Output buffer for sending/receiving SMTP commands and responses
$domain  : mixed
The domain name to use in HELO command
$eventDispatcher  : mixed
The event dispatching layer
$pipeline  : mixed
The pipelined commands waiting for response
$pipelining  : mixed
Whether the PIPELINING SMTP extension is enabled (RFC 2920)
$sourceIp  : mixed
Source Ip
$started  : mixed
Connection status
$capabilities  : array<string|int, string>
ESMTP capabilities.
$handlers  : array<string|int, Swift_Transport_EsmtpHandler>
ESMTP extension handlers.
$params  : array<string|int, mixed>
Connection buffer parameters.
__call()  : mixed
Mixin handling method for ESMTP handlers
__construct()  : mixed
Creates a new EsmtpTransport using the given I/O buffer.
__destruct()  : mixed
Destructor.
executeCommand()  : string|null
Run a command against the buffer, expecting the given response codes.
getAddressEncoder()  : mixed
getAuthMode()  :
getBuffer()  : Swift_Transport_IoBuffer
Get the IoBuffer where read/writes are occurring.
getEncryption()  : string
Get the encryption type.
getExtensionHandlers()  : array<string|int, Swift_Transport_EsmtpHandler>
Get ESMTP extension handlers.
getHost()  : string
Get the host to connect to.
getLocalDomain()  : string
Get the name of the domain Swift will identify as.
getPassword()  :
getPipelining()  : bool|null
Returns whether SMTP pipelining is enabled.
getPort()  : int
Get the port to connect to.
getSourceIp()  : string
Returns the IP used to connect to the destination.
getStreamOptions()  : array<string|int, mixed>
Returns the stream context options.
getTimeout()  : int
Get the connection timeout.
getUsername()  :
isStarted()  : bool
Test if an SMTP connection has been established.
ping()  : bool
Check if this Transport mechanism is alive.
registerPlugin()  : mixed
Register a plugin.
reset()  : mixed
Reset the current mail transaction.
send()  : int
Send the given Message.
setAddressEncoder()  : mixed
setAuthMode()  :
setEncryption()  : $this
Set the encryption type (tls or ssl).
setExtensionHandlers()  : $this
Set ESMTP extension handlers.
setHost()  : $this
Set the host to connect to.
setLocalDomain()  : $this
Set the name of the local domain which Swift will identify itself as.
setPassword()  :
setPipelining()  : $this
Sets whether SMTP pipelining is enabled.
setPort()  : $this
Set the port to connect to.
setSourceIp()  : mixed
Sets the source IP.
setStreamOptions()  : $this
Sets the stream context options.
setTimeout()  : $this
Set the connection timeout.
setUsername()  :
start()  : mixed
Start the SMTP connection.
stop()  : mixed
Stop the SMTP connection.
assertResponseCode()  : mixed
Throws an Exception if a response code is incorrect
doDataCommand()  : mixed
Send the DATA command
doHeloCommand()  : mixed
Send the HELO welcome
doMailFromCommand()  : mixed
Send the MAIL FROM command
doRcptToCommand()  : mixed
Send the RCPT TO command
getBufferParams()  : mixed
Return an array of params for the Buffer
getFullResponse()  : mixed
Get an entire multi-line response using its sequence number
getReversePath()  : mixed
Determine the best-use reverse path for this message
readGreeting()  : mixed
Read the opening SMTP greeting
streamMessage()  : mixed
Stream the contents of the message over the buffer
throwException()  : mixed
Throw a TransportException, first sending it to any listeners
doMailTransaction()  : mixed
Send an email to the given recipients from the given reverse path
getActiveHandlers()  : mixed
Get ESMTP handlers which are currently ok to use
getCapabilities()  : mixed
Determine ESMTP capabilities by function group
sendBcc()  : mixed
Send a message to all Bcc: recipients
sendTo()  : mixed
Send a message to the given To: recipients
setHandlerParams()  : mixed
Set parameters which are used by each extension handler

Properties

$buffer

Input-Output buffer for sending/receiving SMTP commands and responses

protected mixed $buffer

$pipelining

Whether the PIPELINING SMTP extension is enabled (RFC 2920)

protected mixed $pipelining = ull

$capabilities

ESMTP capabilities.

private array<string|int, string> $capabilities = []

$params

Connection buffer parameters.

private array<string|int, mixed> $params = ['protocol' => 'tcp', 'host' => 'localhost', 'port' => 25, 'timeout' => 30, 'blocking' => 1, 'tls' => alse, 'type' => Swift_Transport_IoBuffer::TYPE_SOCKET, 'stream_context_options' => []]

Methods

__call()

Mixin handling method for ESMTP handlers

public __call(mixed $method, mixed $args) : mixed
Parameters
$method : mixed
$args : mixed
Return values
mixed —

__construct()

Creates a new EsmtpTransport using the given I/O buffer.

public __construct([string $host = 'localhost' ][, int $port = 25 ][, string $encryption = null ]) : mixed
Parameters
$host : string = 'localhost'
$port : int = 25
$encryption : string = null
Return values
mixed —

executeCommand()

Run a command against the buffer, expecting the given response codes.

public executeCommand(string $command[, array<string|int, int> $codes = [] ][, array<string|int, string> &$failures = null ][, bool $pipeline = false ][, string $address = null ]) : string|null

If no response codes are given, the response will not be validated. If codes are given, an exception will be thrown on an invalid response. If the command is RCPT TO, and the pipeline is non-empty, no exception will be thrown; instead the failing address is added to $failures.

Parameters
$command : string
$codes : array<string|int, int> = []
$failures : array<string|int, string> = null

An array of failures by-reference

$pipeline : bool = false

Do not wait for response

$address : string = null

The address, if command is RCPT TO.

Return values
string|null —

The server response, or null if pipelining is enabled

getAuthMode()

public getAuthMode() :

Get the auth mode to use to authenticate.

Return values
—

getEncryption()

Get the encryption type.

public getEncryption() : string
Return values
string —

getHost()

Get the host to connect to.

public getHost() : string
Return values
string —

getLocalDomain()

Get the name of the domain Swift will identify as.

public getLocalDomain() : string

If an IP address was specified, this will be returned wrapped in square brackets as described in RFC 5321, section 4.1.3.

Return values
string —

getPassword()

public getPassword() :

Get the password to authenticate with.

Return values
—

getPipelining()

Returns whether SMTP pipelining is enabled.

public getPipelining() : bool|null
Return values
bool|null —

a boolean if pipelining is explicitly enabled or disabled, or null if support is auto-detected.

getPort()

Get the port to connect to.

public getPort() : int
Return values
int —

getSourceIp()

Returns the IP used to connect to the destination.

public getSourceIp() : string
Return values
string —

getStreamOptions()

Returns the stream context options.

public getStreamOptions() : array<string|int, mixed>
Return values
array<string|int, mixed> —

getTimeout()

Get the connection timeout.

public getTimeout() : int
Return values
int —

getUsername()

public getUsername() :

Get the username to authenticate with.

Return values
—

isStarted()

Test if an SMTP connection has been established.

public isStarted() : bool
Return values
bool —

ping()

Check if this Transport mechanism is alive.

public ping() : bool
Return values
bool —

TRUE if the transport is alive

send()

Send the given Message.

public send(Swift_Mime_SimpleMessage $message[, array<string|int, string> &$failedRecipients = null ]) : int

Recipient/sender data will be retrieved from the Message API. The return value is the number of recipients who were accepted for delivery.

Parameters
$message : Swift_Mime_SimpleMessage
$failedRecipients : array<string|int, string> = null

An array of failures by-reference

Return values
int —

setAuthMode()

public setAuthMode(string $mode) :

Set the auth mode to use to authenticate.

Parameters
$mode : string
Return values
—

setEncryption()

Set the encryption type (tls or ssl).

public setEncryption(string $encryption) : $this
Parameters
$encryption : string
Return values
$this —

setHost()

Set the host to connect to.

public setHost(string $host) : $this

Literal IPv6 addresses should be wrapped in square brackets.

Parameters
$host : string
Return values
$this —

setLocalDomain()

Set the name of the local domain which Swift will identify itself as.

public setLocalDomain(string $domain) : $this

This should be a fully-qualified domain name and should be truly the domain you're using.

If your server does not have a domain name, use the IP address. This will automatically be wrapped in square brackets as described in RFC 5321, section 4.1.3.

Parameters
$domain : string
Return values
$this —

setPassword()

public setPassword(string $password) :

Set the password to authenticate with.

Parameters
$password : string
Return values
—

setPipelining()

Sets whether SMTP pipelining is enabled.

public setPipelining(bool $enabled) : $this

By default, support is auto-detected using the PIPELINING SMTP extension. Use this function to override that in the unlikely event of compatibility issues.

Parameters
$enabled : bool
Return values
$this —

setPort()

Set the port to connect to.

public setPort(int $port) : $this
Parameters
$port : int
Return values
$this —

setSourceIp()

Sets the source IP.

public setSourceIp(string $source) : mixed
Parameters
$source : string
Return values
mixed —

setStreamOptions()

Sets the stream context options.

public setStreamOptions(array<string|int, mixed> $options) : $this
Parameters
$options : array<string|int, mixed>
Return values
$this —

setTimeout()

Set the connection timeout.

public setTimeout(int $timeout) : $this
Parameters
$timeout : int

seconds

Return values
$this —

setUsername()

public setUsername(string $username) :

Set the username to authenticate with.

Parameters
$username : string
Return values
—

assertResponseCode()

Throws an Exception if a response code is incorrect

protected assertResponseCode(mixed $response, mixed $wanted) : mixed
Parameters
$response : mixed
$wanted : mixed
Return values
mixed —

doDataCommand()

Send the DATA command

protected doDataCommand(mixed &$failedRecipients) : mixed
Parameters
$failedRecipients : mixed
Return values
mixed —

doHeloCommand()

Send the HELO welcome

protected doHeloCommand() : mixed
Return values
mixed —

doMailFromCommand()

Send the MAIL FROM command

protected doMailFromCommand(mixed $address) : mixed
Parameters
$address : mixed
Return values
mixed —

doRcptToCommand()

Send the RCPT TO command

protected doRcptToCommand(mixed $address) : mixed
Parameters
$address : mixed
Return values
mixed —

getBufferParams()

Return an array of params for the Buffer

protected abstract getBufferParams() : mixed
Return values
mixed —

getFullResponse()

Get an entire multi-line response using its sequence number

protected getFullResponse(mixed $seq) : mixed
Parameters
$seq : mixed
Return values
mixed —

readGreeting()

Read the opening SMTP greeting

protected readGreeting() : mixed
Return values
mixed —

doMailTransaction()

Send an email to the given recipients from the given reverse path

private doMailTransaction(mixed $message, mixed $reversePath, array<string|int, mixed> $recipients, array<string|int, mixed> &$failedRecipients) : mixed
Parameters
$message : mixed
$reversePath : mixed
$recipients : array<string|int, mixed>
$failedRecipients : array<string|int, mixed>
Return values
mixed —

getActiveHandlers()

Get ESMTP handlers which are currently ok to use

private getActiveHandlers() : mixed
Return values
mixed —

getCapabilities()

Determine ESMTP capabilities by function group

private getCapabilities(mixed $ehloResponse) : mixed
Parameters
$ehloResponse : mixed
Return values
mixed —

sendBcc()

Send a message to all Bcc: recipients

private sendBcc(Swift_Mime_SimpleMessage $message, mixed $reversePath, array<string|int, mixed> $bcc, array<string|int, mixed> &$failedRecipients) : mixed
Parameters
$message : Swift_Mime_SimpleMessage
$reversePath : mixed
$bcc : array<string|int, mixed>
$failedRecipients : array<string|int, mixed>
Return values
mixed —

sendTo()

Send a message to the given To: recipients

private sendTo(Swift_Mime_SimpleMessage $message, mixed $reversePath, array<string|int, mixed> $to, array<string|int, mixed> &$failedRecipients) : mixed
Parameters
$message : Swift_Mime_SimpleMessage
$reversePath : mixed
$to : array<string|int, mixed>
$failedRecipients : array<string|int, mixed>
Return values
mixed —

setHandlerParams()

Set parameters which are used by each extension handler

private setHandlerParams() : mixed
Return values
mixed —

Search results