The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Comments |
#732
|
||||
|
||||
no. it will either give an error, or send emails out non stop. I forget which.
|
#733
|
|||
|
|||
It uses the email address you set for your forum. Change it in basic vBulletin options.
|
#734
|
|||
|
|||
Quote:
|
#735
|
|||
|
|||
Contact your host and ask him why you're getting a path error.
|
#736
|
||||
|
||||
I'm finding this mod to be the most effective tool for my forum. In just one week, I have seen almost 75-80% of my registered users come back and 20% of those who did return, posted. I swear by this and I was specially surprised to see that email reports were built into the program. This gives you so many new ways to market and strategize your forum.
|
#737
|
||||
|
||||
Quote:
Glad to hear it! |
#738
|
|||
|
|||
is it possible to send HTML emails to inactive users?
thianks for this great hack |
#739
|
|||
|
|||
Yes. Use version 1.09.
|
#740
|
||||
|
||||
Bugs I found:
1) When emailing for the first time, I had several thousand members to contact. The script stopped after 30 seconds, and I had no way to tell who had been emailed because the script sets everyone as being sent before it's actually done. No way to resume this, but not sure how to fix this either. Same thing will happen again in 30 days, because the same people will be contacted. 2) The $uheaders variable messed up the header of the email, it was from Site Title <"Site Title"> rather than Site Title <"email@site.com">. I removed this section to make it match the default vBulletin email cron scripts. I've done some testing and I think I've managed to fix it, or at least get it to a standard that I'm personally happy with. So my changes: 1) I add the list of sent and failed emails to an array which has the userid in it, to make it easier to troubleshoot and read when you receive the Report by email. 2) For the failed emails in the report, it shows the email address after the username. This is so you can see exactly why they failed (eg username.hotmail.com, username@email, etc). 3) I've added a quick summary at the top which tells you how many reminders were sent, how many failed, and the total number of inactive users that were found (successful+failed). 4) Made some changes to the script so it adds the emails to the queue rather than trying to send them all at once. So it may take a couple of hours to send 10,000 emails (using the CRON system), but at least the script won't fail half way. 5) Fixed the headers so now the email actually comes from the correct address. Before it was being rejected by a whole bunch of servers because the sending address was "Forum Name" instead of the email address. I've attached my version to this post. Install the original script first, but upload my remindermail.php file into includes/cron/ instead of the default. I'm not sure how this will work if you aren't using the mail queue, but I think it should be fine. And if you want to integrate my changes back into the original then go right ahead If anyone uses my code, please don't bug the original author about it, he's not obligated to support someone else's modifications. By the way, the Report email that I received listing 10,000 users that were emailed, it was 180KB. That's not a big problem though |
#741
|
||||
|
||||
OK, well I feel like an idiot now. My script changes didn't fix the timeout issue (the rest of it was worth doing though).
But this time I opened the vb_mailqueue table, found the last email address that was queued up. I found the userid of that account, and ran the following query: UPDATE vb_user SET `emailDate`=0 WHERE userid>=9245 So the last 2000 accounts were set back to 0, and then I just ran the script again, this time it picked up from where it left off. I wish there was a more elegant way of doing it, but unfortunately not without running a lot more SQL queries. And it's not a regular thing anyway. What I might do to make it work next time is: UPDATE vb_user SET emailDate=(YESTERDAY'S TIMESTAMP) WHERE userid<5000 UPDATE vb_user SET emailDate=(TODAY'S TIMESTAMP) WHERE userid>5000 That way 5000 members will be notified again in 29 days, and the rest (6000) will be notified in 30 days. It fails after about 9000, so this should be safe enough. And after 37 days (1 week after the second email) I'll be pruning anyone who hasn't logged in in the last 67 days |
Thread Tools | |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|