I have a campaign that is sending emails with this parameters in my config.php file:
// define the amount of emails you want to send per period. If 0, batch processing
// is disabled and messages are sent out as fast as possible
define('MAILQUEUE_BATCH_SIZE', 100);
// define the length of one batch processing period, in seconds (3600 is an hour)
define('MAILQUEUE_BATCH_PERIOD', 3600);
// to avoid overloading the server that sends your email, you can add a little delay
// between messages that will spread the load of sending
// you will need to find a good value for your own server
// value is in seconds, and you can use fractions, eg "0.5" is half a second
// (or you can play with the autothrottle below)
define('MAILQUEUE_THROTTLE', 1);
But the problem is that when it reaches 100 sent emails (batch size) it stops and I have to go to the website and click Process queue button again.
So, the question is: Can I activate any parameter in order to have the queue continue sending the emails after the BATCH_PERIOD has concluded (automatically)?
Notice the next batch of 100 in 58 minutes 01 seconds but when that time is reached it doesn’t start again, so I have to click on the Process queue button
You’re trying to send no more that 100 per hour, but you have set a pause of just 1 second from what I can see.
It might be worth trying to spread the load out more by setting MAILQUEUE_THROTLE to 36 (seconds) and giving that a try.
Also, check the sending limits that your host as set. If you are limited to (for example) 100 a day, once you hit 100, you will be unable to send more for 24 hours if that is how your host as set things on their mail server.
Hello, HostGator has a 500 email/hour limit, I’m just sending 100 emails/hour. The thing is why it doesn’t automatically start sending emails again when the 3600 seconds pass?