Limit sending to no more than 100 emails per hour

Start here! No need to ask twice :)

Postby H2B2 » 1:52pm, Sun 10 Dec, 2006

jojomojo wrote:instead of processing the queue from the link on the web page, I fire up the cron? Is that the idea? And does the whole send get done independently of the browser?
Exactly, take a look at http://docs.phplist.com/ProcessQueueInfo

jojomojo wrote:And would I only have to fire it up once, since there's no browser to be timed out?
That depends on a number of other factors, like whether your server is running PHP-cli or PHP-cgi, or whether your ISP limits the number of mails per hour or day. You'd best take a look at these documentation pages:
http://docs.phplist.com/PhpListConfigSendRate
http://docs.phplist.com/PhpInterfacesInfo
http://docs.phplist.com/CronJobExamples
http://docs.phplist.com/SetupCronJob
H2B2
Moderator
 
Posts: 7188
Joined: 1:51am, Wed 15 Mar, 2006

Thanks for the response...

Postby jojomojo » 10:29pm, Sun 10 Dec, 2006

Thanks for responding so promptly.

I'm permitted 700 emails per hour. If I put a 6-second delay between emails that will give me 10 per minute, and 600 per hour, well within the permitted 700.

Is this how it works?

jojomojo
jojomojo
phpLister
 
Posts: 6
Joined: 11:23pm, Fri 08 Dec, 2006

Postby H2B2 » 1:18am, Mon 11 Dec, 2006

Yes, that is one way of dealing with mail limits. In this case you would be using the mailqueue_throttle setting to get the delay of 6 seconds.

The cron job is just a scheduler to process the queue.
H2B2
Moderator
 
Posts: 7188
Joined: 1:51am, Wed 15 Mar, 2006

Postby jojomojo » 1:09am, Tue 12 Dec, 2006

H2B2 wrote:Yes, that is one way of dealing with mail limits. In this case you would be using the mailqueue_throttle setting to get the delay of 6 seconds.

The cron job is just a scheduler to process the queue.


Thanks so much for this assistance.
The throttle is working perfectly, sending one email every six seconds.

I'm trying to set up a cron job to send my email queue, here:
http://www.mysite.com/phplist/admin/ind ... d=PASSWORD

but I keep getting the error message:

/bin/sh: http://www.mysite.com/phplist/admin/ind ... d=PASSWORD: No such file or directory

If I type the processqueue message (the above URL) into a browser and hit Enter, it works OK, so the file is in fact there. Is there something about specifying the URL for a cronjob that I'm missing?

* I'm using the cronjob function in cPanelx
* The url above is enclosed in single quotes 'like this'
* There is a one-line-only input box for the Command to run:

Thanks!
jojomojo
jojomojo
phpLister
 
Posts: 6
Joined: 11:23pm, Fri 08 Dec, 2006

Postby H2B2 » 2:15am, Tue 12 Dec, 2006

First you need to know if your server is running PHP-cgi or PHP-cli.

If it's running PHP-cgi, you could try one of these:

/bin/usr/php /home/domain/lists/admin/index.php page=processqueue login=myusername password=mypassword >/dev/null


lynx -dump 'http://www.example.com/lists/admin/index.php?page=processqueue&login=myusername&password=mypassword' >/dev/null


wget -q -O - 'http://www.example.com/lists/admin/index.php?page=processqueue&login=myusername&password=mypassword' >/dev/null


GET 'http://www.example.com/lists/admin/index.php?page=processqueue&login=myusername&password=mypassword' >/dev/null


curl -s 'http://www.example.com/lists/admin/index.php?page=processqueue&login=USERNAME&password=PASSWORD' >/dev/null


If your server is running PHP-cli you could try this:

USER=listprocessor; export USER; /usr/bin/php /home/mydomain/lists/admin/index.php -pprocessqueue -c/home/mydomain/lists/config/config.php

You will need to edit config.php and make sure that the $commandline_users setting includes listprocessor, or any other user name.

Ref: http://docs.phplist.com/PhpInterfacesInfo
H2B2
Moderator
 
Posts: 7188
Joined: 1:51am, Wed 15 Mar, 2006

thanks...

Postby jojomojo » 3:58am, Tue 12 Dec, 2006

Thank you for this comprehensive response... but the problem is that there's only a one-line input box for the command that you want to run. The above suggestions presumably need three lines.

Also... the url+username+password etc. works perfectly well in the browswer. I can set up the mail to be sent, save everything, log out... go to a new browser and paste it in, and the mail job gets sent out perfectly.

admin is in the config.php file btw...

This must be frustrating for you... working with such a neophite... but believe me I appreciate your support.

Sincerely
jojomojo
jojomojo
phpLister
 
Posts: 6
Joined: 11:23pm, Fri 08 Dec, 2006

Postby H2B2 » 4:32am, Tue 12 Dec, 2006

No that's the wrap feature of this board that breaks long lines. Each cron command should always be on one single line.
H2B2
Moderator
 
Posts: 7188
Joined: 1:51am, Wed 15 Mar, 2006

Postby jojomojo » 8:56pm, Tue 12 Dec, 2006

Perfect! That Lynx command worked. Thank you all so much for your patience.

jojomojo
jojomojo
phpLister
 
Posts: 6
Joined: 11:23pm, Fri 08 Dec, 2006

Postby alphaswerve » 9:13am, Fri 12 Jan, 2007

Would you need to set the cronjob to activate log-in on multiple occasions during an embargoed nightime/early morning session given the fact that PHPList will continue to log itself out? I have the batch & throttle settings enabled, but of the 1500 mails I wish to send it only ever manages around 200 before logging itself out, therefore, I would need to keep telling it to log back in to ensure all mails get sent out...
alphaswerve
phpLister
 
Posts: 5
Joined: 2:07am, Tue 09 Jan, 2007

Postby H2B2 » 1:18am, Mon 22 Jan, 2007

Not sure. Might have something to do with your server/host clearing session ID's. Perhaps this might help fixing it.

Add this line in your config.php file:
Code: Select all
ini_set('session.gc_maxlifetime',14400);

To extend login time to 4 hours.

Ref:
http://forums.phplist.com/viewtopic.php?t=4603
http://www.php.net/manual/en/ref.sessio ... axlifetime


Alternatively you check whether running the cron repeatedly would fix the problem.

Ref:
http://docs.phplist.com/SetupCronJob
http://docs.phplist.com/CronJobExamples
H2B2
Moderator
 
Posts: 7188
Joined: 1:51am, Wed 15 Mar, 2006

Is it impossible to send mass

Postby ayakata » 11:58pm, Tue 17 Apr, 2007

email out to to 1200 email ids at once?

I tried and send a test email to myself and it went through fine, however I have sent email to all the email ids in my database since this morning including my own email together but I am still yet to receive the mail? please can anyone help?


To my greatest surprise , I have been trying to even send a message to myself but I am not receiving anything anymore despite the fact that it gives the same report before
Please somebody help
Thanks in advance
ayakata
PL Nut
 
Posts: 18
Joined: 4:11pm, Sun 11 Feb, 2007
Location: U.S

Postby santanu » 1:14pm, Sun 04 May, 2008

i have a limit of 1000 mails per day.

I have set batch = 800
timed each batch = 86400 (24 hours)
time between each msg = 1 sec


now the browser says not to lose the browser. ok 800 emails are sent. now what will happen to the other emails remaining. will it be sent after 24 hours automatically or I have to process the queue after 24 hours manually.
santanu
phpList newbie
 
Posts: 3
Joined: 6:04am, Sat 03 May, 2008

Postby vogelj » 5:07pm, Sun 04 May, 2008

Santanu,

It seems I'm having the exact same problem as you are. My server has a limit of 100 per hour. I set the batch size to 90 and the period to 3600. I left the mailqueue throttle to 0.

It all seems to be working except that after each hour I have to click on the "Process Queue" button otherwise phpList will never send out the next batch of 90 emails. It will just say its processing a batch and do nothing, just sit there.

Is there anything short of writing a cron job to fix this problem? As our mailing list grows to over 10,000 it will become impossible to be hitting the "Process Queue" button every hour.

Thanks!
vogelj
phpList newbie
 
Posts: 1
Joined: 2:14pm, Sun 04 May, 2008

Postby H2B2 » 3:55am, Mon 05 May, 2008

The script is likely to time out if your server is running PHP-cgi instead of PHP-cli, and if you are using a batch period over 600 to 1200 seconds. A cron job might help in this case, though you'll probably have to explicitely reload every consecutive batch in your crontab file. You'll find an example titled "Cron job with batch processing (PHP-cgi)" in the documentation.
See also: http://docs.phplist.com/PhpInterfacesInfo

Using a mailqueue throttle of 1 or 2 seconds might be a good idea in shared hosting environments.

You should keep in mind that sending 10,000 emails at a rate of 90 messages per hour will take about 5 days to send, and would require more than 100 reloads in your crontab file. It might therefore be easier to dispense with using batch processing and rely on a mailqueue throttle of 40 seconds to get the same 90 messages per hour rate.
H2B2
Moderator
 
Posts: 7188
Joined: 1:51am, Wed 15 Mar, 2006

Sending not completed after 8 hours

Postby Obsidian » 8:36am, Tue 20 May, 2008

Im very new at Php List...
Im not thourough at talking the language either!!~!

Im sending round about 2400 newsletters out, but after 8hours the list is still busy sending..

What I dont understand is that under the message info it tells me that the messages are being sent at 6080 msg/hr so it should have all been completed sending.
Obsidian
phpList newbie
 
Posts: 1
Joined: 8:21am, Tue 20 May, 2008

PreviousNext

Return to Frequently Asked Questions

Who is online

Users browsing this forum: No registered users and 0 guests

cron