Go Back   vb.org Archive > vBulletin Modifications > Archive > Modification Graveyard
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Cron based e-mail sending Details »»
Cron based e-mail sending
Version: 4.1.7.0, by Paul M Paul M is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Category: Administrative and Maintenance Tools - Version: 4.1.x Rating:
Released: 12-29-2009 Last Update: 05-23-2012 Installs: 190
Uses Plugins
Code Changes Additional Files Translations  
No support by the author.


--------------------------------------------------------------------------------
This modification has been withdrawn.
vBulletin 4.0.x and 4.1.x are no longer supported.

The feature is already built into the core vBulletin 4.2.x code.
--------------------------------------------------------------------------------


In default vBulletin, if you send a large number of e-mails, vbulletin either puts them in it's queue and attempts to send them as each user visits a page, or just simply tries to send them straight away (as is the case when you use the Administrators email users inteface).

The result of this can be that your server can gets seriously overloaded very quickly - or on many hosts, you get banned for exceeding their e-mail sending limits. This can make sending several thousand e-mails (like a newsletter) very difficult.

This modification helps in three ways ;

1. The processing of the mail queue is set-up as a vbulletin cron item.

2. You can add a small delay before each e-mail is sent (0,1,2 or 5 seconds).

3. E-mails from the ACP inteface are sent to the mail queue, not straight to the mail system.

Use option 2 carefully, otherwise you will slow your e-mail system right down.

For this to work, you must use e-mail queuing (ACP Options - Use Mailqueue System = Yes) and also the 'Number of Emails to Send Per Batch' needs to be a realistic value (see below). The installation process will attempt to set these options for you. This modification also requires two file edits to work correctly.

There are two options for the cron job, you can either set it to run every minute, and set the items to be processed to something small (like 10), or you can do what this modification does by default and set it to run every 10 minutes, and set the items to be processed to something larger (like 80, which is the default).

Remember, 10 e-mails per minute = 600 per hour while 80 e-mails every 10 minutes is 480 per hour. The numbers you set really depend on how quick you want large queues processed, and how much your mail server can handle in one go. The default settings are fine for most people.

Once working, when using the ACP mail users inteface, remember you can set it to process 9999 at once (not 500) as the mails will now go into the queue, not be sent directly.

Note: This modification will only affect queued e-mails such as subscription e-mails. It will not affect registration e-mails as they always bypass queuing.

This modification also displays the size of the e-mail queue in the ACP homepage, based on code supplied by Antivirus.

To install, download and uzip the files, then follow the instructions in the text file.


History:

v4.0.1 : 30-Dec-2009 : Initial release for vb 4.0.0 Gold.

v4.1.0 : 04-Dec-2010 : Updated for vBulletin 4.1.

v4.1.7.0 : 16-Oct-2011 : Updated for vBulletin 4.1.7.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
Благодарность от:
FinalFantasy

Comments
  #82  
Old 09-29-2010, 05:29 AM
m3_fs m3_fs is offline
 
Join Date: Aug 2006
Posts: 9
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks Paul, I will be trying this out tomorrow for sure. Cheers!

edit: this is used with the built in vb email manager right?
Reply With Quote
  #83  
Old 09-30-2010, 04:28 AM
m3_fs m3_fs is offline
 
Join Date: Aug 2006
Posts: 9
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I am getting the error:

Quote:
Unable to add cookies, header already sent.
File: /home/m3fs/public_html/forum/includes/functions.php
Line: 1
anyone else having that problem. If I set the

Code:
// exec_mail_queue(); // Paul M - Cron Mail Queue Hack //
line back to

Code:
exec_mail_queue();
it works again. Any ideas?
Reply With Quote
  #84  
Old 09-30-2010, 11:14 AM
final kaoss final kaoss is offline
 
Join Date: Apr 2006
Posts: 1,314
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

and your version of vbulletin 4.x is..?
Reply With Quote
  #85  
Old 09-30-2010, 08:46 PM
Paul M's Avatar
Paul M Paul M is offline
 
Join Date: Sep 2004
Location: Nottingham, UK
Posts: 23,748
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by m3_fs View Post
I am getting the error:



anyone else having that problem. If I set the

Code:
// exec_mail_queue(); // Paul M - Cron Mail Queue Hack //
line back to

Code:
exec_mail_queue();
it works again. Any ideas?
I dont see how that could possibly cause that, how exactly are you editing it, and changing it back ?
Reply With Quote
  #86  
Old 09-30-2010, 11:00 PM
m3_fs m3_fs is offline
 
Join Date: Aug 2006
Posts: 9
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yeah I am baffled too. I am editing everything in notepad.
Reply With Quote
  #87  
Old 10-01-2010, 10:58 AM
Paul M's Avatar
Paul M Paul M is offline
 
Join Date: Sep 2004
Location: Nottingham, UK
Posts: 23,748
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

e-mail me the edited file.
Reply With Quote
  #88  
Old 10-12-2010, 04:39 PM
Dragonsys's Avatar
Dragonsys Dragonsys is offline
 
Join Date: Jan 2008
Location: DFW, Texas
Posts: 743
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Paul M View Post
However, the more likely answer is you didnt re-do the file edits after you upgraded to 4.0.7.
you are correct, I forgot about the file changes... doh!
Reply With Quote
  #89  
Old 10-15-2010, 07:08 PM
imedic's Avatar
imedic imedic is offline
 
Join Date: Mar 2008
Location: Romania
Posts: 178
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Great mod. Should be default in VB ..
Suggestions for improvement: buton to purge queue in case you found someting wrong and want to resend them.

Frustration with my server 100 mails/ hour gii
Reply With Quote
  #90  
Old 11-01-2010, 08:10 PM
Mehmet Aca Mehmet Aca is offline
 
Join Date: Oct 2010
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi;

Can we see how many e-mail has been sent? and to whom ( username - e-mail or user id )

i can show below information. But i think this is not enogh to know the e-mail is sent to all of the user or not

3066 Process Mail Queue 21:06, 1st Nov 2010 Processed Mail Queue
Reply With Quote
  #91  
Old 11-01-2010, 11:24 PM
Paul M's Avatar
Paul M Paul M is offline
 
Join Date: Sep 2004
Location: Nottingham, UK
Posts: 23,748
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

No, the number sent is not logged.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 10:36 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.13880 seconds
  • Memory Usage 2,313KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (4)bbcode_code
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (1)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete