When a document is added to the collection, the extension picks it up for email
delivery processing. The extension creates and updates a
delivery field in the
document as it processes the email.
Email delivery processing
delivery field can be populated with the following fields:
- state: One of
- startTime: Timestamp when email processing began.
- endTime: Timestamp when email processing completed (that is, ended in either a
- error: If there was an email delivery error, an error message will be populated here.
- attempts: Number of delivery attempts for this email.
- leaseExpireTime: In case of a hang or timeout, the time at which a
PROCESSINGstate should be considered an error.
- info: After successful email delivery (to at least one address), this field will be populated with the following fields:
- messageId: The message ID of the delivered email.
- accepted: Array of email addresses to which the email was successfully delivered.
- rejected: Array of email addresses to which the email could not be delivered.
- pending: Array of email addresses that were temporarily rejected by SMTP.
- response: The last response from the SMTP server.
An email will typically go from
PROCESSING to either
ERROR. Once in the
ERROR state, additional changes to the
document will not trigger the extension to send another email. To resend an
email with document updates, you can change the
There are instances in which email delivery fails in a recoverable fashion or
the document can be manually corrected for proper delivery with minor
modifications. While retries are not automatic, you can manually change the
state in the
delivery field to
RETRY so that the extension attempts email
delivery again (and increments the number of