class twisted.mail.relay.ESMTPRelayer(RelayerMixin, smtp.ESMTPClient): (source)
Known subclasses: twisted.mail.relaymanager.ESMTPManagedRelayer
A base class for ESMTP relayers.
| Method | __init__ |
Inherited from RelayerMixin:
| Method | loadMessages | Undocumented |
| Instance Variable | messages | Undocumented |
| Instance Variable | names | Undocumented |
| Method | getMailFrom | Undocumented |
| Method | getMailTo | Undocumented |
| Method | getMailData | 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. |
Inherited from ESMTPClient:
| Instance Variable | heloFallback | Whether or not to fall back to plain SMTP if the EHLO command is not recognised by the server. If requireAuthentication is True, or requireTransportSecurity is True and the connection is not over TLS, this fallback flag will not be honored. |
| Instance Variable | requireAuthentication | If True, refuse to proceed if authentication cannot be performed. Overrides heloFallback. |
| Instance Variable | requireTransportSecurity | If True, refuse to proceed if the transport cannot be secured. If the transport layer is not already secured via TLS, this will override heloFallback. |
| Instance Variable | context | The context factory to use for STARTTLS, if desired. |
| Instance Variable | authenticators | Undocumented |
| Instance Variable | secret | Undocumented |
| Method | __getattr__ | Undocumented |
| Method | __setattr__ | Undocumented |
| Method | esmtpEHLORequired | Fail because authentication is required, but the server does not support ESMTP, which is required for authentication. |
| Method | esmtpAUTHRequired | Fail because authentication is required, but the server does not support any schemes we support. |
| Method | esmtpTLSRequired | Fail because TLS is required and the server does not support it. |
| Method | esmtpTLSFailed | Fail because the TLS handshake wasn't able to be completed. |
| Method | esmtpAUTHDeclined | Fail because the authentication was rejected. |
| Method | esmtpAUTHMalformedChallenge | Fail because the server sent a malformed authentication challenge. |
| Method | esmtpAUTHServerError | Fail because of some other authentication error. |
| Method | registerAuthenticator | No summary |
| Method | connectionMade | Called when a connection has been made, and triggers sending an EHLO to the server. |
| Method | esmtpState_ehlo | Send an EHLO to the server. |
| Method | esmtpState_serverConfig | Handle a positive response to the EHLO command by parsing the capabilities in the server's response and then taking the most appropriate next step towards entering a mail transaction. |
| Method | tryTLS | Take a necessary step towards being able to begin a mail transaction. |
| Method | esmtpState_starttls | Handle a positive response to the STARTTLS command by starting a new TLS session on self.transport. |
| Method | authenticate | Undocumented |
| Method | esmtpState_challenge | Undocumented |
| Method | smtpState_maybeAuthenticated | Called to handle the next message from the server after sending a response to a SASL challenge. The server response might be another challenge or it might indicate authentication has succeeded. |
| Instance Variable | _tlsMode | Whether or not the connection is over TLS. |
| Instance Variable | _okresponse | Undocumented |
| Instance Variable | _expected | Undocumented |
| Instance Variable | _failresponse | Undocumented |
| Instance Variable | _authinfo | Undocumented |
| Method | _esmtpState_plainAuth | Undocumented |
| Method | _authResponse | Undocumented |
Inherited from SMTPClient (via ESMTPClient):
| Class Variable | debug | Undocumented |
| Class Variable | timeout | Undocumented |
| Instance Variable | identity | Undocumented |
| Instance Variable | toAddressesResult | Undocumented |
| Instance Variable | successAddresses | Undocumented |
| Instance Variable | resp | Undocumented |
| Instance Variable | code | Undocumented |
| Instance Variable | log | Undocumented |
| Method | sendLine | Sends a line to the other end of the connection. |
| Method | connectionLost | We are no longer connected |
| Instance Variable | mailFile | Undocumented |
| Method | timeoutConnection | Called when the connection times out. |
| Method | lineReceived | Override this for when each line is received. |
| Method | smtpConnectionFailed | Undocumented |
| Method | smtpTransferFailed | Undocumented |
| Method | smtpState_helo | Undocumented |
| Method | smtpState_from | Undocumented |
| Method | smtpState_disconnect | Undocumented |
| Method | smtpState_to | Undocumented |
| Instance Variable | toAddresses | Undocumented |
| Instance Variable | lastAddress | Undocumented |
| Method | smtpState_toOrData | Undocumented |
| Method | smtpState_data | Undocumented |
| Method | smtpState_msgSent | Undocumented |
| Method | transformChunk | Perform the necessary local to network newline conversion and escape leading periods. |
| Method | finishedFileTransfer | Undocumented |
| Method | getMailFrom | Return the email address the mail is from. |
| Method | getMailTo | Return a list of emails to send to. |
| Method | getMailData | Return file-like object containing data of message to be sent. |
| 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 | sentMail | Called when an attempt to send an email is completed. |
| Instance Variable | _from | Undocumented |
| Method | _disconnectFromServer | Undocumented |
Inherited from LineReceiver (via ESMTPClient, SMTPClient):
| Class Variable | delimiter | The line-ending delimiter to use. By default this is b'\r\n'. |
| Class Variable | 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. |
| Instance Variable | line_mode | Undocumented |
| Method | clearLineBuffer | Clear buffered data. |
| Method | dataReceived | Protocol.dataReceived. Translates bytes into lines, and calls lineReceived (or rawDataReceived, depending on mode.) |
| 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. |
| Method | rawDataReceived | Override this for when raw data is received. |
| Method | lineLengthExceeded | Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way. |
| Instance Variable | _buffer | Undocumented |
| Instance Variable | _busyReceiving | Undocumented |
Inherited from Protocol (via ESMTPClient, SMTPClient, LineReceiver):
| Class Variable | factory | Undocumented |
| Method | logPrefix | Return a prefix matching the class name, to identify log messages related to this protocol instance. |
Inherited from BaseProtocol (via ESMTPClient, SMTPClient, LineReceiver, Protocol):
| Instance Variable | connected | Undocumented |
| Instance Variable | transport | Undocumented |
| Method | makeConnection | Make a connection to a transport and a server. |
Inherited from _PauseableMixin (via ESMTPClient, SMTPClient, LineReceiver):
| Instance Variable | paused | Undocumented |
| Method | pauseProducing | Undocumented |
| Method | resumeProducing | Undocumented |
| Method | stopProducing | Undocumented |
Inherited from TimeoutMixin (via ESMTPClient, SMTPClient):
| Instance Variable | timeOut | The number of seconds after which to timeout the connection. |
| Method | callLater | Wrapper around reactor.callLater for test purpose. |
| Method | resetTimeout | Reset the timeout count down. |
| Method | setTimeout | Change the timeout period |
| Instance Variable | __timeoutCall | Undocumented |
| Method | __timedOut | Undocumented |
| Parameters | messagePaths | The base filename for each message to be relayed. (type: list of bytes) |
| args | Positional arguments for ESMTPClient.__init__ (type: 3-tuple of (0) bytes, (1) None or ClientContextFactory, (2) bytes or 4-tuple of (0) bytes, (1) None or ClientContextFactory, (2) bytes, (3) int) | |
| kw | Keyword arguments for ESMTPClient.__init__ (type: dict) |