Make retry settings for email sending configurable

Description

As can be seen here in the source code: https://github.com/lucee/Lucee/blob/master/core/src/main/java/lucee/runtime/spooler/mail/MailSpoolerTask.java#L38-L43
The retry setting for sending email messages is hard coded.
There is only 1 implementation for MailSpoolerTask, which does not set it's own retry setting (https://github.com/lucee/Lucee/blob/5544b1d528c17947b96819b3c62231e12adb1b50/core/src/main/java/lucee/runtime/net/smtp/SMTPClient.java#L711)

It would be great if the retry setting would be configurable in the admin, eg. as a list of numeric minute intervals (60,300,3600,7200).

is duplicated by

Activity

Show:

Tom Chiverton 19 April 2023 at 14:01

Is the current behaviour even documented anywhere ?

Sean S. 12 September 2016 at 22:59

It would be imperative to have this as a setting in the dashboard. Right now if you're sending hundreds or thousands of emails via an SMTP server and that server happens to have throttling by IP address, or greylisting etc - in other words, temporary delays such as 421 SMTP Server error: too many concurrent sessions - the emails sit in the lucee mail spool folder forever while it works through the EXECUTION PLANS.

If I had access to those settings, I'd want it to check the mail spool and re-attempt sending every couple minutes. ACF continually checks the mail spool folder and doesn't experience this kind of issue.

Michael Offner 10 February 2016 at 18:42

+1

Igal Sapir 28 January 2016 at 19:46

An important feature that I'd like to add to the Task is the ability to set the start time so that it is not necessarily start immediately.

Then you can easily schedule an email that would be sent, say, x days after something happens. For example, a customer places an order, and 7 days later an email is sent out to ask for her feedback and provide followup.

This is a simple change in Lucee that can save a lot of work implemented outside of Lucee.

So in emails for example (but will work with any Task as Micha stated), you could do:

<cfmail to=... from=... sendTime=dateAdd('d', 7, now())>

Michael Offner 25 January 2016 at 12:59

this is the same setting as we already have for cfthread (type task), so the possible values should be equal to this

Details

Assignee

Reporter

New Issue warning screen

Before you create a new Issue, please post to the mailing list first https://dev.lucee.org

Once the issue has been verified, one of the Lucee team will ask you to file an issue

Affects versions

Priority

Created 20 January 2016 at 11:02
Updated 19 April 2023 at 14:01

Flag notifications