# ``twisted`.`mail`.`relaymanager`.`SMTPManagedRelayer``

class documentation

`class SMTPManagedRelayer(ManagedRelayerMixin, relay.SMTPRelayer): (source)`

View In Hierarchy

An SMTP managed relayer.

This managed relayer is an SMTP client which is responsible for sending a set of messages and keeping an attempt manager informed about its progress.

Method | `__init__` |
Instance Variable | `factory` | The factory that created this relayer. This must be set by the factory.

Inherited from `ManagedRelayerMixin`:

Method | `connectionLost` | called when connection is broken
Method | `factory.setter` | Undocumented
Method | `sentMail` | called when e-mail has been sent
Instance Variable | `manager` | Undocumented
Instance Variable | `_factory` | Undocumented

Inherited from `RelayerMixin` (via `SMTPRelayer`):

Method | `getMailData` | Undocumented
Method | `getMailFrom` | Undocumented
Method | `getMailTo` | Undocumented
Method | `loadMessages` | Undocumented
Method | `sentMail` | Since we only use one recipient per envelope, this will be called with 0 or 1 addresses. We probably want to do something with the error message if we failed.
Instance Variable | `messages` | Undocumented
Instance Variable | `names` | Undocumented

Inherited from `SMTPClient` (via `SMTPRelayer`):

Method | `connectionLost` | We are no longer connected
Method | `connectionMade` | Called when a connection is made.
Method | `finishedFileTransfer` | Undocumented
Method | `getMailData` | Return file-like object containing data of message to be sent.
Method | `getMailFrom` | Return the email address the mail is from.
Method | `getMailTo` | Return a list of emails to send to.
Method | `lineReceived` | Override this for when each line is received.
Method | `sendError` | If an error occurs before a mail message is sent sendError will be called. This base class method sends a QUIT if the error is non-fatal and disconnects the connection.
Method | `sendLine` | Sends a line to the other end of the connection.
Method | `sentMail` | Called when an attempt to send an email is completed.
Method | `smtpConnectionFailed` | Undocumented
Method | `smtpState_data` | Undocumented
Method | `smtpState_disconnect` | Undocumented
Method | `smtpState_from` | Undocumented
Method | `smtpState_helo` | Undocumented
Method | `smtpState_msgSent` | Undocumented
Method | `smtpState_to` | Undocumented
Method | `smtpState_toOrData` | Undocumented
Method | `smtpTransferFailed` | Undocumented
Method | `timeoutConnection` | Called when the connection times out.
Method | `transformChunk` | Perform the necessary local to network newline conversion and escape leading periods.
Class Variable | `debug` | Undocumented
Class Variable | `timeout` | Undocumented
Instance Variable | `code` | Undocumented
Instance Variable | `identity` | Undocumented
Instance Variable | `lastAddress` | Undocumented
Instance Variable | `log` | Undocumented
Instance Variable | `mailFile` | Undocumented
Instance Variable | `resp` | Undocumented
Instance Variable | `successAddresses` | Undocumented
Instance Variable | `toAddresses` | Undocumented
Instance Variable | `toAddressesResult` | Undocumented
Method | `_disconnectFromServer` | Undocumented
Instance Variable | `_expected` | Undocumented
Instance Variable | `_failresponse` | Undocumented
Instance Variable | `_from` | Undocumented
Instance Variable | `_okresponse` | Undocumented

Inherited from `LineReceiver` (via `SMTPRelayer`, `SMTPClient`):

Method | `clearLineBuffer` | Clear buffered data.
Method | `dataReceived` | Protocol.dataReceived. Translates bytes into lines, and calls lineReceived (or rawDataReceived, depending on mode.)
Method | `lineLengthExceeded` | Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way.
Method | `rawDataReceived` | Override this for when raw data is received.
Method | `setLineMode` | Sets the line-mode of this receiver.
Method | `setRawMode` | Sets the raw mode of this receiver. Further data received will be sent to rawDataReceived rather than lineReceived.
Constant | `MAX_LENGTH` | The maximum length of a line to allow (If a sent line is longer than this, the connection is dropped). Default is 16384.
Class Variable | `delimiter` | The line-ending delimiter to use. By default this is `b'\r\n'`.
Instance Variable | `line_mode` | Undocumented
Instance Variable | `_buffer` | Undocumented
Instance Variable | `_busyReceiving` | Undocumented

Inherited from `Protocol` (via `SMTPRelayer`, `SMTPClient`, `LineReceiver`):

Method | `logPrefix` | Return a prefix matching the class name, to identify log messages related to this protocol instance.

Inherited from `BaseProtocol` (via `SMTPRelayer`, `SMTPClient`, `LineReceiver`, `Protocol`):

Method | `makeConnection` | Make a connection to a transport and a server.
Instance Variable | `connected` | Undocumented
Instance Variable | `transport` | Undocumented

Inherited from `_PauseableMixin` (via `SMTPRelayer`, `SMTPClient`, `LineReceiver`):

Method | `pauseProducing` | Undocumented
Method | `resumeProducing` | Undocumented
Method | `stopProducing` | Undocumented
Instance Variable | `paused` | Undocumented

Inherited from `TimeoutMixin` (via `SMTPRelayer`, `SMTPClient`):

Method | `callLater` | Wrapper around `reactor.callLater` for test purpose.
Method | `resetTimeout` | Reset the timeout count down.
Method | `setTimeout` | Change the timeout period
Instance Variable | `timeOut` | The number of seconds after which to timeout the connection.
Method | `__timedOut` | Undocumented
Instance Variable | `__timeoutCall` | Undocumented

def __init__(self, messages, manager, *args, **kw): (source)
overrides `twisted.mail.relaymanager.ManagedRelayerMixin.__init__`

Parameters
messages:`list` of `bytes` | The base filenames of messages to be relayed.
manager:`_AttemptManager` | An attempt manager.
*args:1-`tuple` of (0) `bytes` or 2-`tuple` of (0) `bytes`, (1) `int` | Positional arguments for `SMTPClient.__init__`
**kw:`dict` | Keyword arguments for `SMTPClient.__init__`

factory: `SMTPManagedRelayerFactory` = (source)
overrides `twisted.mail.relaymanager.ManagedRelayerMixin.factory`
The factory that created this relayer. This must be set by the factory.