larger smaller normal text version of this page
Phplist Documentation » Message functions »

Process the Message Queue

Clicking on 'process queue' will send all queued messages, provided they are not under embargo, i.e., scheduled to be sent later on. Once you have clicked on process queue, the sending process cannot be canceled. If you do not process the message queue, messages will remain in the queue. The idea of a queue is that you can prepare messages for sending, and then have them actually sent by a scheduler or cron job.

When processing of the queue has started you should leave the browser window open till the result is displayed Depending on the load of messages to be processed, this can take from a few minutes up to an hour or more.
Note: phplist does not send any message to people who have not confirmed their subscription.

A confirmation report will be sent to the email address(es) entered on the configuration page for "Who gets the reports". In addition, you can also be alerted by email when the message sending starts and ends, by entering one or more email addresses on the "Misc" tab of the "Send a message" page.

Message sending speed and batch processing
To help avoid server overloads you can configure PHPlist to slow down the rate at which it feeds messages to the mail server, by using 'mail queue throttle' setting in config.php.
If you are on a shared hosting service, it is likely you will face limits in the number of emails you may send per hour or per day. By using the 'mail queue batch size' and 'batch period' settings in config.php, you will be able to keep the number of sent messages within these limits. For more info, see Setting the send speed.

Alternatives to processing the queue manually

Instead of processing the queue manually through your web browser, you can use a cron job or a commandline script. Or both. If you have more than 1000 users, it is recommended to use commandline queue processing. There are several reasons you might prefer processing the message queue with a cron job and/or commandline script, for instance: It will reduce the problem of timeouts, and -if your server is running PHP-cgi- you'll avoid having to leave the browser window open for hours.

Command line script
An alternative to using your web browser for queue processing is a commandline script, which you can execute on a scheduled time by using a cron job. A sample commandline script is included in the PHPlist distribution. To be able to use a command line script, the command line version of PHP (PHP-cli) must be installed on your server. Please read the three interfaces of PHP for a brief discussion of differences between PHP-cli and PHP-cgi. A second (obvious) requirement is that you must have access to the command line itself (shell access). For more info, see Using a commandline script.

Cron job
A cron job is a scheduler for unix/linux operating systems, that will execute commands on a predefined time. While you can use a cron job to execute commands embedded in a commandline script, you can also place the commands directly in the crontab file. The latter method is useful when your server is running PHP-cgi instead of PHP-cli. For more info, see Setting up a cron job.

Note: Keep in mind that whatever queue processing method you use, you still need to put the messages to be sent in the queue.

Tips & Tricks from the forum

New subscriber gets last list email automatically - This mod will automatically requeue the last list message when a subscriber confirms his subscribtion.

Page was generated in 0.0534 seconds