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
  #32  
Old 01-21-2010, 11:09 AM
cloferba cloferba is offline
 
Join Date: Apr 2009
Posts: 437
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

all values from mailqueue table?

i only see
mailqueueid
dateline
toemail
fromemail
subject
message
header
Reply With Quote
  #33  
Old 01-22-2010, 05:42 AM
EricPSF's Avatar
EricPSF EricPSF is offline
 
Join Date: Jan 2007
Posts: 46
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi Paul,

I encountered 1 problem, need yr advice.

I send email (to three of my own accounts) using the ACP; it prompted sent..but I didn't received any of the emails...?

I can see from the ACP front page "The current e-mail queue size is 7" and my Number of Emails to Send Per Batch is only 15.
Reply With Quote
  #34  
Old 01-22-2010, 09:50 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

What is your question ?
Reply With Quote
  #35  
Old 01-22-2010, 10:29 AM
cloferba cloferba is offline
 
Join Date: Apr 2009
Posts: 437
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

paul help me...it still sending emails :S
Reply With Quote
  #36  
Old 01-22-2010, 10:57 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

Help you do what ? Its supposed to send e-mails.
Reply With Quote
  #37  
Old 01-22-2010, 09:31 PM
cloferba cloferba is offline
 
Join Date: Apr 2009
Posts: 437
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

well..i will tell you

i wanted to send newsletters...so i did it, but using a @gmail.com address. So, it is consider has spam (i have all my gmail account full of mails saying

Quote:
This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

dbmaster@example.com
SMTP error from remote mail server after MAIL FROM:<xxx@gmail.com>:
host gateway.websitewelcome.com [64.5.52.8]: 553 5.5.4 I was unable to send this e-mail because the domain ( gmail.com ) has been black listed due to spam or forgery.
so, im not going to wait all days until it finish to send emails consider spam, so i want to cancel the sending...
Reply With Quote
  #38  
Old 01-22-2010, 11:12 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

Then you need to delete the records form the mailqueue table. Im sure I told you this once.
Reply With Quote
  #39  
Old 01-23-2010, 05:54 AM
EricPSF's Avatar
EricPSF EricPSF is offline
 
Join Date: Jan 2007
Posts: 46
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Paul M View Post
What is your question ?
Hi Paul,

My 7 trial emails were delayed sending for abt. 3 hrs. Is it true that this mod needs heavy traffic in order to perform better? Any ways of triggering it to send the emails at a faster speed?

Btw, where can I find the mailqueue table that you have mentioned in yr last post?
Reply With Quote
  #40  
Old 01-23-2010, 01:18 PM
cloferba cloferba is offline
 
Join Date: Apr 2009
Posts: 437
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Paul M View Post
Then you need to delete the records form the mailqueue table. Im sure I told you this once.
ok, but then am i going to have problems to send emails if i delete all from mailqueue table?

or that table is created every time a email is set to be sended?
Reply With Quote
  #41  
Old 01-23-2010, 04:03 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 EricPSF View Post
Hi Paul,

My 7 trial emails were delayed sending for abt. 3 hrs. Is it true that this mod needs heavy traffic in order to perform better? Any ways of triggering it to send the emails at a faster speed?

Btw, where can I find the mailqueue table that you have mentioned in yr last post?
It uses the vbulletin cron system, which does require (proper) visitors to your site to work. If you have little or no traffic at all then its not going to trigger, or take a while.

The mailqueue table is just another table in your vb database.


Quote:
Originally Posted by cloferba View Post
ok, but then am i going to have problems to send emails if i delete all from mailqueue table?

or that table is created every time a email is set to be sended?
You seem to be confusing deleting records with deleting the table. You need to delete the records from the table, not the table. If you dont understand this then you need to seek help from someone who does.
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 01:36 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05523 seconds
  • Memory Usage 2,321KB
  • Queries Executed 27 (?)
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
  • (5)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
  • (1)pagenav_pagelinkrel
  • (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_postinfo_query
  • fetch_postinfo
  • 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