Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.6 > vBulletin 3.6 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Email reminder for inactive users Details »»
Email reminder for inactive users
Version: 1.2.7, by C Braithwaite C Braithwaite is offline
Developer Last Online: Dec 2012 Show Printable Version Email this Page

Category: Mini Mods - Version: 3.6.8 Rating:
Released: 02-08-2007 Last Update: 08-23-2008 Installs: 1463
DB Changes Uses Plugins Auto-Templates
Additional Files Translations Is in Beta Stage  
No support by the author.

Inactive reminder emails. This mod was designed to send out a reminder to inactive members to try and win them back.

***1.2.7 Update***
This update includes built in support for bouncing emails. The script will automatically detect the bounced mail, mark it as bounced so the user is not to be contacted again so as to avoid spam, and then move that user into a seperate usergroup. This plugin is still in it's testing stages, but I have addressed the bugs mentioned previously regarding the emailing side of things.

This is important so keep reading
To install this plugin and take advantage of the bounced email features you are going to need to follow these instructions very carefully. I can not gaurentee that they will work to the letter as this will be based on each persons individual hosting settings.

Step 1: Pre Install
Before you touch this product you need to do the following
  • Create an "inactive" usergroup
  • Set up a "bounce to" email address
    Pick an email address that you want to use as your bounced email address. Im using "bounce@icora.co.uk". feel free to use whatever you wish.
  • Add a email message filter
    This is the hard part. You need to set up a filter that will 'pipe' an email sent to the above email address.
    I am using Cpanel 11 and this is how i have mine set up:
    Rules: 'To' 'Equals' 'bounce@icora.co.uk'
    Actions: 'Pipe to program' with the setting: |/usr/local/bin/php /home/icora/public_html/forum/bounce.php
    This will depend entirely on your settings and structure so you may have to do a little research. It would be very helfull if people who have to use diferent configurations would post them on here.
  • Go into vBulletin options, and find the options for 'Emails'. there is a setting asking you if you want to use '-f'. set this to yes.
  • While still inn the email options set the 'Bounce Email Address' to your above address.
Step 2: Install
Remove all previous trace of this modification, and upload all the files in the "upload" folder to your base directory of the server.
Go into your product management section and add a new product. upload the XML file with overwrite selected.
Refresh your admin CP to load the new menu items. Just under the "users" group you will find an "Inactive Reminders" group. open that up and click on settings.
Play with these settings and options to suit for the most part. when you come down to the bounce settings you MUST use the same email address as the one you created above.
Set to active and save.

I must re-iterate that this version has not been widely tested, but the simulations i have ran have worked. I look forward to your feedback!

Features:
  • Select the period of time before a user is considered inactive.
  • Select how many emails to send to each inactive user per inactivity period
  • Choose weather inactivity is based on members "Last Post" or their "Last Visit"
  • Specify how often followup emails are sent
  • Specify alternative emails to send to reduce repetition
  • Keep a log of all inactive users contacted

Planned Updates:
  • More detail in reports
  • ...such as
  • Which useres returned
  • Effectivness stats
  • Email validity

**1.2.1 Update***
Added more detail to the reports section. You can now see the email address, and quickly indicate which emails were invalid. You can link directly to that user to edit as you wish.
I have fixed some errors which have been crashing people's database. Please post any problems if you can.

**1.2.3 Update***
Fixed several problems with escaping strings
Stopped database errors locking up site
***

**1.2.4 Update***
Added a "From Email" so you can specify your own email address to send the reminders from.
Fixed potential bug for people who do not use the mail queue.

Anyone having problems with sending emails out too fast, and multiple emails being sent need to consider changing their email settings in vbulletin options.
People with emails going out too fast - edit Number of Emails to Send Per Batch to a lower amount
People with multiple emails sending - edit Use Mailqueue System to "Yes, with locking"
***

**1.2.5 Update***
Added more stats in the reports page, also added a "Send test email" option so users can test the functionality of the mod
***

Supporters / CoAuthors

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #772  
Old 06-28-2007, 05:38 AM
C Braithwaite's Avatar
C Braithwaite C Braithwaite is offline
 
Join Date: Jan 2006
Location: Leeds
Posts: 293
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

What do you mean?
Reply With Quote
  #773  
Old 07-04-2007, 11:45 AM
fpattberg fpattberg is offline
 
Join Date: Jan 2007
Location: UK
Posts: 64
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi.

EDITED.

Thanks.

SOLVED. SORRY MATE. I SHOULD READ BEFORE POSTING! Nice hack!
Reply With Quote
  #774  
Old 07-04-2007, 11:47 AM
djbaxter djbaxter is offline
 
Join Date: Aug 2006
Location: Ottawa, Canada
Posts: 2,601
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by fpattberg View Post
Hi.

I have installed this hack but it also installs this after the copyright in the footer.

Inactive Reminders By Mished.co.uk

Was that intended? If yes will I uninstall, if not how can I remove it?

Thanks.


Please READ the first post in this thread. All your questions are answered there.
Reply With Quote
  #775  
Old 07-09-2007, 06:00 PM
bada_bing's Avatar
bada_bing bada_bing is offline
 
Join Date: Feb 2004
Location: Michigan
Posts: 1,698
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Does anyone know if this works on vb 3.5.x ?
Reply With Quote
  #776  
Old 07-13-2007, 03:52 PM
sunrise2006's Avatar
sunrise2006 sunrise2006 is offline
 
Join Date: Feb 2006
Posts: 208
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thank you. It's a good way to invite the inactive members to activity.
Reply With Quote
  #777  
Old 07-13-2007, 04:06 PM
sunrise2006's Avatar
sunrise2006 sunrise2006 is offline
 
Join Date: Feb 2006
Posts: 208
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

One question:

In comment there is this note:
Quote:
a HTML email will be sent out with a custom message
But after I installed it I saw this pattern on Inactive User Reminder Emails Settings:
Quote:
Your email body - accepts $username, $userid, $email. This email is plain text.)
Now I want to know can I use the HTML code in Email message or no?

Sorry, for my bad English!
Reply With Quote
  #778  
Old 07-17-2007, 11:29 AM
Greivog Greivog is offline
 
Join Date: Apr 2003
Posts: 17
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hello

When I install, I get the following when I run the script

Quote:
Inactive User Reminder Emails

db)) { exit; } error_reporting(E_ALL & ~E_NOTICE); if($vbulletin->options['reminder_active']){ $now = time(); $datetime = array(); $quantity = $vbulletin->options['quantity']; $datetime[lastpost] = $now - (60 * 60 * 24 * $vbulletin->options['inactivity']); $datetime[lastemail] = $now - (60 * 60 * 24 * $vbulletin->options['frequency']); $usergroups = explode(",",$vbulletin->options['usergroups']); if($vbulletin->options['reminder_posts']){ $result = $vbulletin->db->query_read("SELECT * FROM " . TABLE_PREFIX . "user WHERE lastpost < '$datetime[lastpost]' AND emailDate < '$datetime[lastemail]' AND options & 16"); //print("SELECT * FROM " . TABLE_PREFIX . "user WHERE lastpost < '$datetime[lastpost]' AND emailDate < '$datetime[lastemail]' AND options & 16
"); $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET emailDate = '$now' WHERE lastpost < '$datetime[lastpost]' AND emailDate < '$datetime[lastemail]' AND options & 16"); //print("UPDATE " . TABLE_PREFIX . "user SET emailDate = '$now' WHERE lastpost < '$datetime[lastpost]' AND emailDate < '$datetime[lastemail]' AND options & 16
"); } else { $result = $vbulletin->db->query_read("SELECT * FROM " . TABLE_PREFIX . "user WHERE lastactivity < '$datetime[lastpost]' AND emailDate < '$datetime[lastemail]' AND options & 16"); //print("SELECT * FROM " . TABLE_PREFIX . "user WHERE lastactivity < '$datetime[lastpost]' AND emailDate < '$datetime[lastemail]' AND options & 16
"); $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET emailDate = '$now' WHERE lastactivity < '$datetime[lastpost]' AND emailDate < '$datetime[lastemail]' AND options & 16"); //print("UPDATE " . TABLE_PREFIX . "user SET emailDate = '$now' WHERE lastactivity < '$datetime[lastpost]' AND emailDate < '$datetime[lastemail]' AND options & 16
"); } print("Found " . mysql_num_rows($result) . " Inactive Users.

"); while($row = $vbulletin->db->fetch_array($result)){ if(is_member_of($row, $usergroups)){ print("Sent To: $row[username]
"); $username = $row[username]; $toemail = $row[email]; $userid = $row[userid]; $bbtitle = $vbulletin->options['bbtitle']; $homeurl = $vbulletin->options['homeurl']; $forumurl = $vbulletin->options['bburl']; $hometitle = $vbulletin->options['hometitle']; eval('$message = "' . addslashes($vbulletin->options['message']) . '";'); $message = stripslashes($message); //$headers = "MIME-Version: 1.0" . "\r\nContent-type: text/html; charset=iso-8859-1" . "\r\n"; $uheaders .= "To: $username <$email>" . "\r\n"; $uheaders .= "From: " . $vbulletin->options['bbtitle'] . " Reminder Service <" . $vbulletin->options['webmasteremail'] . ">" . "\r\n"; eval('$subject = "' . addslashes($vbulletin->options['subject']) . '";'); $subject = stripslashes($subject); if($vbulletin->options['reminder_emailfooter']){ $message = $message . "Email Reminder System Provided By Mished.co.uk"; } /*if(@mail($email, $subject, $message, $headers)){ print("mailing $email (done)
"); } else { print("mailing $email (failed)
"); }*/ if(is_valid_email($toemail)){ $sentlist .= "$username "; vbmail($toemail, $subject, $message, $notsubscription = false, $from = $vbulletin->options['bbtitle'], $uheaders = '', $username = ''); } else { $failedlist .= "$username "; } } } if($sentlist == ""){ log_cron_action("No Emails to send", $nextitem); vbmail($vbulletin->options['webmasteremail'], "Inactive User Reminder Email Report", "This email shows that the product is installed and working as it should be.\n\n\nThere were no inactive users at this time.", $notsubscription = false, $from = $vbulletin->options['bbtitle'], $uheaders = "From: " . $vbulletin->options['bbtitle'] . " Reminder Service <" . $vbulletin->options['webmasteremail'] . ">" . "\r\n", $username = ''); } else { log_cron_action("Emails sent to:$sentlist. We tried to email the following users, but their email address was invalid:$failedlist", $nextitem); vbmail($vbulletin->options['webmasteremail'], "Inactive User Reminder Email Report", "This email shows that the product is installed and working as it should be.\n\n\nEmails sent to:" . $sentlist . ". We tried to email the following users, but their email address was invalid:" . $failedlist . "", $notsubscription = false, $from = $vbulletin->options['bbtitle'], $uheaders = "From: " . $vbulletin->options['bbtitle'] . " Reminder Service <" . $vbulletin->options['webmasteremail'] . ">" . "\r\n", $username = ''); } } else { print("Product is inactive at this time!"); } ?>
Done
The script dosnt sent out any emails if i run it myself or let it run itsself.

Any ideas?

Thanks

Paul
Reply With Quote
  #779  
Old 07-19-2007, 12:36 AM
raiderlax's Avatar
raiderlax raiderlax is offline
 
Join Date: Sep 2006
Location: Ontario, Canada
Posts: 499
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Looks good I'm going to install this now.
Reply With Quote
  #780  
Old 07-20-2007, 05:39 PM
mathias mathias is offline
 
Join Date: Feb 2002
Posts: 102
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

try to import I get this

XML Error: not well-formed (invalid token) at Line 1
Reply With Quote
  #781  
Old 07-21-2007, 07:19 AM
Greivog Greivog is offline
 
Join Date: Apr 2003
Posts: 17
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Has support finished on this mod?
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 11:21 PM.


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.05860 seconds
  • Memory Usage 2,336KB
  • Queries Executed 26 (?)
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_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (4)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (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
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • 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