Jump to:
| Project: | Subscriptions |
| Version: | 6.x-1.x-dev |
| Component: | User interface |
| Category: | feature request |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | closed (fixed) |
Issue Summary
The digest currently is sent either immediately or once at least the preset send interval has elapsed since the previous digest, whichever is later. This conflicts with user expectations because it is different from how digests usually work. Usually digests are sent out at fixed times (for example the same time every day) provided there is any content.
So I would like to propose that digests are not sent out immediately but always at regular times. So for example if the send interval is 1 hour then they should be sent on every full hour. If the send interval is a day they should be sent out every midnight. In future there might be an extra setting where the user can choose the time for the digest, but until then any natural choice will do.
Comments
#1
Nothing is sent unless cron runs. So if you run cron every hour on the hour, then digests are sent on the hour.
OTOH, if the digest Send Interval (e.g. 1 day) is larger than the cron interval (e.g. 1 hour), then the first digest is indeed sent at the very next cron run, and thereafter the Send Interval should guarantee that at least 24 hours pass before the next digest is sent. This is how the current implementation is supposed to work (for digests and for detail notifications), but I'm not sure it effectively works that way (see http://drupal.org/node/204874).
The downside of your idea (if I understand it correctly) of sending every midnight (for example) is that doesn't distribute the load. All the daily digests would pile up for midnight and nothing would run during the day. I believe this outweighs the advantage of having predictable send times.
An alternative mechanism that would distribute the load would be to wait for 24 hours after the first notification is queued and send a digest at the next cron run thereafter. This may mean a higher database load for queueing notifications (i.e. creating new posts), though.
#2
Your objection to having all daily digests run at midnight is valid. So perhaps this feature should only be implemented at the same time as a user setting that allows the user to choose their own preferred time for the daily digest. If this setting is given a random default, different for each user, then I think the problem with having too many digests at the same time will go away.
#3
I don't see overwhelming interest in this feature and I won't work on it.
Please reopen and speak up if you plan to work on a patch, then we can discuss.
#4
Is there anyone who would be willing to work (for pay) on the "send at a specific time" option? I have a client who would pay a modest amount in order to have this feature.
Since this module can't handle the load we have (over 2000 users) we are having a single digest sent to mailing list software on our server, which then delivers the mail to the subscribers. We are using poormanscron, and the digest send time is migrating forward almost an hour each day.
Please contact me with estimate of cost if you are interested. Thanks!
#5
@kddailey: I'm still waiting for your feedback on #350077: Maximum number of notification to send per cron job breaks Digest mode...
In what way can Subscriptions not handle the load, especially if you're sending only one single digest per day?
#6
See #3 above.