PDA

View Full Version : Administrative and Maintenance Tools - Auto Bounce Messages Management


Milad
06-07-2008, 10:00 PM
Brought to you by Syrian Medical Society (http://www.syrianmeds.net/) & Milado (http://www.milado.net/)

Introduction: quoted from wikipedia (http://en.wikipedia.org/wiki/Variable_envelope_return_path) with adaptation.
Any long-lived forums is going to eventually contain addresses that can't be reached. Addresses that were once valid can become unusable because the person receiving the mail there has switched to a different provider (possibly as a result of changing jobs or schools). In another scenario, the address may still exist but be abandoned, with unread mail accumulating until there is not enough room left to accept any more.

The presence of invalid addresses in the forums results in bounce messages being sent to the owner of the forums. If the mailing list is small, the owner can read the bounce messages and manually remove the invalid addresses from the forums. With a larger forums, this is a tedious, unpleasant job, so it is desirable to automate the process.

In short: This hack automates handling of the bounce messages.


Requirements:
vBulletin 3.7.1
catch-all email address, with POP3 access. (I use Google app (Gmail))

Features:
Auto Bounce Messages Management.
Uses POP3 protocol to retrieve messages from your catch-all email box.
On bounce detection the user will be moved to bounce usergroup (you can set which usergroup).
Works according to VERP (http://en.wikipedia.org/wiki/Variable_envelope_return_path).
A note:
I believe there is no need to delete the user subscriptions. because once a user got moved to the "Awaiting email confirmation" usergroup, he / she won't be sent any additional emails.

How Does It Work?
You have your catch-all email box, that will be used to receive the bounce messages. Of course we must have a POP3 access to retrieve messages from it.
Let's suppose that your catch-all email address is bounces@yourdomain.ext
After we set it properly, it will work as described below:
1) By default: On every single message being sent, vBulletin generates a unique Message-ID for it, example:
Message-ID: <20080608103128.551e45224330@www.yourdomain.ext>
This ID is generated By using the following code in /includes/class_mail.php:
$msgid = '<' . gmdate('YmdHis') . '.' . substr(md5($message . microtime()), 0, 6) . vbrand(100000, 999999) . '@' . $http_host . '>';
I take the red portion from the unique Message-ID, and the red portion from the domain name of the catch-all address:
Message-ID: <20080608103128.551e45224330@www.yourdomain.ext>
bounces@yourdomain.ext
The result will be: bounce20080608103128.551e45224330@yourdomain.ext
Now every single message has its own unique envelope-from address. so if it gets returned as a bounce, I will recognize it easily.
So every message will be recorded in the database. each record consists of : toemail, bounceemail (the one we generated) and the timeline (for sake of pruning.)
2) A cron job runs every ten minutes to retrieve bounce messages from the catch-all email box.
If the message sent to something similar to the bounceemail we generate, it will update the appropriate record in the database to be marked as returned. and delete the message from the POP3 server.
3) Another cron job runs once an hour, reads the bounced emails from the database and moves their owners to an usergroup which is determined by the admin from the settings.
4) Yet another cron job, will run once daily, to prune the records that haven't returned bounces in a settable period of time (30 days by default).

Did I miss something here?
Yeh, right. this is the first beta, I believe the core is almost done. but there may be some functions to add, and few things to tweak.
I'm all opened to your suggestions. So feel free to dream!

Installation & Upgrade:
1) Have your own catch-all email with POP3 access. I don't have the time to write a how-to article for this please do it yourself, you'll be luckily if someone explains it to others.
2) Upload files from the /upload/ folder in the package to their appropriate locations.
3) Install the xml product file: product-bounce_management.xml, of course choose yes to override when upgrading.
4) Refresh your AdminCP. you will see at the navigation side, above the Users tab, a new tab called "Bounces Management"
5) At that tab, go to the settings: Set your POP server settings, your "Bounce Usergroup" and "Exclude Usergroups".
6) At the same tab you will find a link called "Test POP Connection" to test the connection with your POP server.
7) Enjoy! Click install to let me enjoy too!

Settings:
81933

Know issues:
- In rare situations, a vacation reply may returned via the bounce path rather than the webmaster path.


Change log:
1.0.0.b.1 first public release, on June, 8 2008.
Support:
The product marked as not supported, but that doesn't mean you won't see me again here.
So please try to help each other.

License & Credits:
1) I use the pop3_class from Manuel Lemos, Copyright (c) 1999-2005 to retrieve messages from the POP server, so all the credits regarding this go to him.
Here is his license (included in the package too):
Copyright (c) 1999-2005, Manuel Lemos
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the Manuel Lemos nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Click install to receive updates.
You like it? nominate it. I'm looking forward to enter the Mod Of The Month competition.
I depend on you.
Also donations will help me to improve the product. :up:

Milad
06-08-2008, 08:34 PM
/ * reserved

DanceGavinDance
06-08-2008, 08:36 PM
First install, woot :]

Zachery
06-08-2008, 08:36 PM
Looks nice, though personally I won't run it as I don't like providing back links to others websites.


READ THIS! (https://vborg.vbsupport.ru/showpost.php?p=2026781&postcount=148)

Milad
06-08-2008, 08:46 PM
Looks nice, though personally I won't run it as I don't like providing back links to others websites.
Hi Zachery,

I understand you. Actually, I want something in return for my time and efforts.

Best regards

Milad
06-08-2008, 08:49 PM
First install, woot :]
That quick? woot :)

shofolofo
06-08-2008, 09:31 PM
very nice

thanks milad

Alfa1
06-08-2008, 09:47 PM
Many thanks Milad! I am looking forward to future versions.

Please consider to add:


different responses to different error codes / Custom filters to match patterns in bounced emails. i.e. permanent error, mailbox full, etc should get a different response. Not many webmasters want their members account inactivated when a mailbox is full.
Stats on members with bouncing emails, and error codes
Turns on Popup Notification of new Private Messages for bouncing member
Automatically send a notification PM to bouncing Member (customizable message)
Return members to their original usergroup when the member updates & confirms their new email.

Hornstar
06-08-2008, 10:01 PM
I'll have to give this a try, because I have around 200 000 members and many of them will be bouncing.

Alfa1
06-08-2008, 10:09 PM
Please let us know how that goes. Are you planning to do a mass emailing?

A very nice forum BTW!

Zachery
06-09-2008, 12:33 AM
Hi Zachery,

I understand you. Actually, I want something in return for my time and efforts.

Best regards
Thats nice, but I won't run it or recomend it to anyone because of the back link. Or the copyright text in general, since this is completely a backend feature that a normal user will never see.

Not that i have a problem with copyrights, or authors wanting to benifit from their work.

Dilmah
06-09-2008, 01:12 AM
Thats nice, but I won't run it or recomend it to anyone because of the back link. Or the copyright text in general, since this is completely a backend feature that a normal user will never see.

Not that i have a problem with copyrights, or authors wanting to benifit from their work.Agreed. Why would I put your copyright on the frontend of my site when it's a backend feature?

Seems like you just want to cash in on big forums linking to you.

Milad
06-09-2008, 02:01 AM
Guys, you discourage me!

I'm disappointed that simpler mods have got attention more than this one.

ahayat
06-09-2008, 05:51 AM
Guys, you discourage me!

I'm disappointed that simpler mods have got attention more than this one.

mate, he didnt mean to discourage you.
but how many copyrights we gonna put on forumhome ?
i have already three huh.

anyway Best ever hack for 3.7.0 :up:
:D

RedTrinity
06-09-2008, 06:25 AM
Thats nice, but I won't run it or recomend it to anyone because of the back link. Or the copyright text in general, since this is completely a backend feature that a normal user will never see.

Not that i have a problem with copyrights, or authors wanting to benifit from their work.

Sorry but I have to agree as well, having a compulsory copyright is a big turnoff for me to use this feature since it is back-end. I can understand a major front-end feature having one (like VBCredits points system for example, which I agreed to having in my footer) but not something like this. If most/all authors decided to copyright their work like this, then the footers of forums would be extremely unattractive since they would be essentially full of spam links.

SO I have much respect for authors who understand this issue and give users the option to display the copyright or not from the ACP, and chances are I would be more obliged to do so knowing that its not being forced.

Don't mean to discourage either, just hope that you reconsider this decision because it really is a great feature that shouldn't be burdened with something which makes it less attractive to install/use.

Otherwise well done on great work :)

Cheers :)

testebr
06-09-2008, 06:39 AM
PM is sent to Member notifying them of bounced email & asking them to update email address

Can you add this same resource from the mod EZ Bouced Email Management (https://vborg.vbsupport.ru/showthread.php?t=138884)?

Devices
06-09-2008, 07:18 AM
Thanks a lot, This is a great starting point for a great addon. I do think that it needs the features Alfa1 suggested making it more like VBouncer. Also a catch-all address can be hard for a lot of users. I get hundreds, usually 200 - 300 a day of attempted spams to non existant addresses. These will all now not be refused and dump all the spams into the catch-all.

renep
06-09-2008, 07:51 AM
I get hundreds, usually 200 - 300 a day of attempted spams to non existant addresses. These will all now not be refused and dump all the spams into the catch-all.

Yes, it's a better idea to use an MTA with VERP support (that sends only bounces with the VERP address pattern to a bounce mailbox), instead of a catch-all address.

That would require this add-on to actually use VERP (mailbox+memberid@ourdomain), rather than a proprietary pattern similar to VERP :(

Devices
06-09-2008, 08:51 AM
Yes, it's a better idea to use an MTA with VERP support (that sends only bounces with the VERP address pattern to a bounce mailbox), instead of a catch-all address.

That would require this add-on to actually use VERP (mailbox+memberid@ourdomain), rather than a proprietary pattern similar to VERP :(

I agree. My MTA calls it + addressing I think. If the format was changed slightly to mailbox+messageid@domain.com then people could use a compatible MTA or if they do not have one they could use a catch-all. I think the messageid idea is good to verify the bounce is not a fake bounce causing havoc to your members.

Milad
06-09-2008, 09:47 AM
Thanks a lot, This is a great starting point for a great addon. I do think that it needs the features Alfa1 suggested making it more like VBouncer. Also a catch-all address can be hard for a lot of users. I get hundreds, usually 200 - 300 a day of attempted spams to non existant addresses. These will all now not be refused and dump all the spams into the catch-all.
For me, I use Gmail. it handles the spam very well. Spam messages go to the spam box, and the bounce messages will be returned to me.

This is very easy and nice.

Milad
06-09-2008, 09:50 AM
Yes, it's a better idea to use an MTA with VERP support (that sends only bounces with the VERP address pattern to a bounce mailbox), instead of a catch-all address.

That would require this add-on to actually use VERP (mailbox+memberid@ourdomain), rather than a proprietary pattern similar to VERP :(
If you have a better pattern to suggest, go on.

Milad
06-09-2008, 09:56 AM
mailbox+memberid@ourdomain won't be a good approach, because it can be abused by members. someone may send a fake email to kick someone else. so we can't use a simple pattern.

mailbox+messageid@domain.com is a good idea. I use bouncemessageid@domain.com not too different. I can alter it to mailboxmessageid@domain.com if you will get benefit from it.

Milad
06-09-2008, 09:57 AM
I think the messageid idea is good to verify the bounce is not a fake bounce causing havoc to your members.
Exactly. I'm not leaving this mod for kids to play with it. it got to be secure. for sure.

Devices
06-09-2008, 10:01 AM
For me, I use Gmail. it handles the spam very well. Spam messages go to the spam box, and the bounce messages will be returned to me.

This is very easy and nice.

Our own spam filters do a very good job at actually catching the spam. The main one is refusing connections for non existing accounts. Mail that does get through to real addresses will then be tagged if they are spam and passed to the MTA and moved by the MTA to the spam folder. By using a catch-all I increase the load on the MTA that the spam filters are currently releiving it of.

If you add a + sign in between the mailbox name and the message id then I think from what I have read about VERP you will be compatible. Then people can still use catch-all if they have no other choice. I am not an expert in VERP but this is how i understand it.

Devices
06-09-2008, 10:07 AM
mailbox+memberid@ourdomain won't be a good approach, because it can be abused by members. someone may send a fake email to kick someone else. so we can't use a simple pattern.

mailbox+messageid@domain.com is a good idea. I use bouncemessageid@domain.com not too different. I can alter it to mailboxmessageid@domain.com if you will get benefit from it.

Yes, Then an account named bounce will catch all email to bounce+(anything)@domain.com but will not catch anything that does not start bounce+. This will definatly help in my situation and as i understand it any VERP compatible MTA.

Milad
06-09-2008, 10:22 AM
If you add a + sign in between the mailbox name and the message id then I think from what I have read about VERP you will be compatible. Then people can still use catch-all if they have no other choice. I am not an expert in VERP but this is how i understand it.
Would you please give me a link to what you've read?

Regards

Milad
06-09-2008, 10:45 AM
I think it's acceptable to use + or =

Devices
06-09-2008, 12:15 PM
Would you please give me a link to what you've read?

Just the info in wikipedia.

I think it's acceptable to use + or =


I can use one of four characters + - _ or %.

On wikipedia the = sign is used as an example to replace the @ if you are adding the users full email address in the return address.

Jase2
06-09-2008, 12:27 PM
Looks good, but as others have said, the copyright on FORUMHOME is completely unnecessary. So, for that reason, I'm not installing.

woostar
06-09-2008, 12:53 PM
Looks good, but as others have said, the copyright on FORUMHOME is completely unnecessary. So, for that reason, I'm not installing.

Same here.

Support:
The product marked as not supported, but that doesn't mean you won't see me again here.
So please try to help each other.

If we help each other can we request homepage links too :p

Milad
06-09-2008, 01:56 PM
The copyright is my only method to get back what I spend of time and efforts.
I'm sorry, this is not commercial product, but it requires a lot of work. you wouldn't do it for free.

You're free not to use it.

Best regards

Milad
06-09-2008, 01:57 PM
I'm thinking about making it as a pattern. every webmaster will change it according to his/her needs.

Zachery
06-09-2008, 02:44 PM
The copyright is my only method to get back what I spend of time and efforts.
I'm sorry, this is not commercial product, but it requires a lot of work. you wouldn't do it for free.

You're free not to use it.

Best regards
Alot of us spend time working on things, we do it because we feel our own sites need it, or we wanted to help out.

If you coded this purely for wanting to attract attention to your website... I really don't have anything more to say then.

PoetJA-1975
06-09-2008, 07:59 PM
Not only that - but the vast majority of sites that will be using the Auto Bounce Messages Management hack are English-only sites, which would totally defeat the purpose of showing that ridiculous backlink anyway :D

Jacquii.

Jase2
06-09-2008, 08:02 PM
The copyright is my only method to get back what I spend of time and efforts.
I'm sorry, this is not commercial product, but it requires a lot of work. you wouldn't do it for free.

You're free not to use it.

Best regards

Everyone who makes hacks here are in the same boat, myself included. Just seems to me that you want to get a lot of backlinks to your site.

Greek76
06-09-2008, 10:57 PM
A great mod but just like the rest I will not install because of the copyright. I agree with Zachery you just want the backlinks.

Milad
06-09-2008, 11:27 PM
OK, never mind. I'm sorry for that. I'm going to make the copyright optional.

Thus, I appreciate if you post a backlink to my site. when you announce the automation to your members.

Regards

ahayat
06-10-2008, 02:03 AM
OK, never mind. I'm sorry for that. I'm going to make the copyright optional.

Thus, I appreciate if you post a backlink to my site. when you announce the automation to your members.

Regards

Great thanks, as i have a non-english community so it wont work for back linking to you :D

Milad
06-10-2008, 02:26 AM
Please let's just concentrate on the mod!

dtv100
06-10-2008, 02:35 AM
is there any way to know who was move because email bounce ?

Milad
06-10-2008, 03:28 AM
is there any way to know who was move because email bounce ?
Yes, will be added.
Regards

renep
06-10-2008, 08:29 AM
If you have a better pattern to suggest, go on.

I couldn't find an authoritative specification, but it seems '+' is universally used as the box+recipient separator, and '=' is used to encode special characters in the recipient address (that may not be unencoded in the bounce address).

By following this pattern, people can use the default VERP-support in their MTA to route bounces to a particular mailbox, which your add-on reads.

You prefer to use an id rather than the recipient address in the bounce address, to avoid abuse. That's fine of course, as long as you encode special characters in the id (in particular '@').

Milad
06-10-2008, 10:07 AM
You prefer to use an id rather than the recipient address in the bounce address, to avoid abuse. That's fine of course, as long as you encode special characters in the id (in particular '@').
The id that I use, contains a-z0-9 and dot only.

Alfa1
06-14-2008, 12:53 PM
Without a message to the inactivated member, this mod will lead to a mass of inquiries. On a large board this is a serious problem.

I know I asked for a lot of features before, but please consider to add an automatic PM.

Many thanks Milad! I am looking forward to future versions.

Please consider to add:


different responses to different error codes / Custom filters to match patterns in bounced emails. i.e. permanent error, mailbox full, etc should get a different response. Not many webmasters want their members account inactivated when a mailbox is full.
Stats on members with bouncing emails, and error codes
Turns on Popup Notification of new Private Messages for bouncing member
Automatically send a notification PM to bouncing Member (customizable message)
Return members to their original usergroup when the member updates & confirms their new email.

Milad
06-14-2008, 03:11 PM
I really have a problem that all suggestion had been copied from previous hacks such as vBouncer.

I don't like to do things already done. anyway the automatic PM notification is on its way to be added. I'm trying to add something new because I want my mod to be unique.

This is the most difficult part: different responses to different error codes / Custom filters to match patterns in bounced emails. i.e. permanent error, mailbox full, etc should get a different response.
Now I'm working on analyzing cron job which will classify the bounce messages. it's gonna take a lot of work and development.

Devices
06-14-2008, 05:35 PM
I really have a problem that all suggestion had been copied from previous hacks such as vBouncer.

I don't like to do things already done. anyway the automatic PM notification is on its way to be added. I'm trying to add something new because I want my mod to be unique.

This is the most difficult part:
Now I'm working on analyzing cron job which will classify the bounce messages. it's gonna take a lot of work and development.

I don't think you need to worry about having the same features as Vbouncer as that hack has been unsupported for a long time. Your hack is doing the same job so it is very likely it will have the same or similar features. Also new features will make your addon more unique.

I am glad to hear you are adding in a PM notification also as this is very important. As Alfa1 says it can cuase confusion for any members that have been dealt with.

Alfa1
06-14-2008, 08:17 PM
I really have a problem that all suggestion had been copied from previous hacks such as vBouncer.

I don't like to do things already done. anyway the automatic PM notification is on its way to be added. I'm trying to add something new because I want my mod to be unique.
I would not want you to copy anyone's work. Your mod is unique as there is no other working mod that automatically handles bounced mail.

The suggestions are to fill a need that is there. There will be various ways to do so.
Thank you for taking up the suggestion of a PM notification.

This is the most difficult part:
Now I'm working on analyzing cron job which will classify the bounce messages. it's gonna take a lot of work and development.
I can imagine that it will, but you can be sure that we will be grateful for your work. These functions are essential for a healthy site and there is nothing that completely handles it.

In relation to the article in my signature, there is a need to process responses from the SMTP servers of email providers and take appropriate action per response.

I am very grateful for Anti-Virus his EZ bounced management, because until now it was the only thing that helped. Only after a completely automated mod like yours handles this issue I will dare to do a mass emailing.

youradhere4222
06-14-2008, 10:31 PM
OK, never mind. I'm sorry for that. I'm going to make the copyright optional.

Thus, I appreciate if you post a backlink to my site. when you announce the automation to your members.

Regards

Thank you.

stwilson
06-15-2008, 05:06 AM
Milad,

Thank you for your work and thank you for reconsidering the back links. I will give this a try and if it works for me I will NOT put on a back link (I don't use any MODs that require back links) but rather I will send you money for your efforts. Thanks for contributing to the VB community!!!!! Keep up the great work!!

stwilson
06-17-2008, 03:12 AM
Milad,

I have installed without issue. I modifed a user account with a bogus email address but the account was not moved to the prescribed user group. I have a catch-all email account in my setup, one that will take any email address for the domain. Any suggestions?

stwilson
06-17-2008, 03:13 AM
I forgot to mention that I used the Admin account to private message the account that I updated with the bogus email address. The test account is setup to send an email notification of a new private message. I see the bounced email in the catch-all email account but the user group was not modified.

RedTrinity
06-17-2008, 04:21 AM
When will the version with optional copyright be released?

Zachery
06-17-2008, 06:30 PM
for the plugin you can disable the parse_templates hook and it will remove the copyright.

stwilson
06-18-2008, 02:46 AM
Has anyone else gotten this MOD to work? I installed OK but user accounts are not being moved upon receipt of a bounce.

Milad
06-18-2008, 04:00 AM
Has anyone else gotten this MOD to work? I installed OK but user accounts are not being moved upon receipt of a bounce.
Did you configure your POP settings?

If not do it and use the test POP connection link to make sure that the mod can connect to the POP mail.

Regards

stwilson
06-18-2008, 04:08 AM
Yes, I did. The test connection part works. Here is what it shows (I replaced my real text with mydomain):

Connecting to mail.mydomain.com ...
S +OK mail.mydomain.com My Domain Mail Server POP3 Wed, 18 Jun 2008 06:05:25 +0100 <20080618060525@mail.mydomain.com>
Connected to the POP3 server "mail.mydomain.com".
C USER bounced@mydomain.com
S +OK bounced@mydomain.com
C PASS mypass
S +OK 2 messages (5510) octets
User "bounced@mydomain.com" logged in.
C STAT
S +OK 2 5510
There are 2 message(s) in the mail box with a total of 5510 bytes.

Again, everything appears to be setup correctly. Can you tell me what CRON jobs should be found in my CRON job list? I don't think they are running.

Milad
06-18-2008, 04:38 AM
You will find one cron job with clear name, try to run it.

Regards

alessai
06-18-2008, 10:10 AM
Milad thanx for the addon and i'll try it later

for now i marked it as installed

J3rico
06-20-2008, 05:15 AM
Yes, I did. The test connection part works. Here is what it shows (I replaced my real text with mydomain):

Connecting to mail.mydomain.com ...
S +OK mail.mydomain.com My Domain Mail Server POP3 Wed, 18 Jun 2008 06:05:25 +0100 <20080618060525@mail.mydomain.com>
Connected to the POP3 server "mail.mydomain.com".
C USER bounced@mydomain.com
S +OK bounced@mydomain.com
C PASS mypass
S +OK 2 messages (5510) octets
User "bounced@mydomain.com" logged in.
C STAT
S +OK 2 5510
There are 2 message(s) in the mail box with a total of 5510 bytes.

Again, everything appears to be setup correctly. Can you tell me what CRON jobs should be found in my CRON job list? I don't think they are running.

hi, same problem for me, check is ok, but user group was not modified.

Milad
06-20-2008, 05:37 AM
try to run the cron job: bounces_retrieve.php and copy what messages it will print!

J3rico
06-20-2008, 06:56 AM
hi, thank's for the answer, i have the cron retrievebounces.php (this file is included in the zip file), when run i get this message :

ABMM: Retrive Bounces
Connected to the POP3 server "pop.gmail.com".
User "myuser@gmail.com" logged in.
There are no new bounces!
Disconnected from the POP3 server "pop.gmail.com".

Eseguito

thank's :)

Milad
06-20-2008, 11:24 AM
If the bounce messages are still in your gmail account, please open one of them and look for the "Show original" link in the drop-down menu at the upper right corner.

Please copy and paste the content here.

Regrads.

J3rico
06-20-2008, 12:14 PM
Delivered-To: myaccount@gmail.com
Received: by 10.141.20.5 with SMTP id x5cs125266rvi;
Thu, 19 Jun 2008 10:55:10 -0700 (PDT)
Received: by 10.141.151.18 with SMTP id d18mr6810126rvo.152.1213898110434;
Thu, 19 Jun 2008 10:55:10 -0700 (PDT)
Received-SPF: softfail (google.com: domain of transitioning unknown does not designate 65.54.246.91 as permitted sender) client-ip=65.54.246.91;
Received: by 10.140.83.37 with POP3 id g37mf110384rvb.6;
Thu, 19 Jun 2008 10:55:10 -0700 (PDT)
X-Gmail-Fetch-Info: postmaster@mysite.it 1 mail.mysite.it 110 postmaster@mysyte.it
Return-Path: <>

X-Spam-Checker-Version: SpamAssassin 3.1.7-deb (2006-10-05) on IT20-MAIL
X-Spam-Level: ***
X-Spam-Status: No, score=3.0 required=5.5 tests=BAYES_00,DATE_IN_PAST_06_12,
FORGED_HOTMAIL_RCVD,FRONTPAGE,HTML_IMAGE_RATIO_02, HTML_MESSAGE,
HTML_TAG_BALANCE_BODY,NO_REAL_NAME autolearn=no version=3.1.7-deb
Delivered-To: mysyte.it-postmaster@mysyte.it
Received: (qmail 14689 invoked by uid 0); 19 Jun 2008 19:45:01 +0200
Received: from unknown (HELO bay0-omc1-s19.bay0.hotmail.com) (65.54.246.91)
by xxx.xxxxxxxx.net with SMTP; 19 Jun 2008 19:45:01 +0200
Received: from BAY106-W35 ([65.54.161.135]) by bay0-omc1-s19.bay0.hotmail.com with Microsoft SMTPSVC(6.0.3790.3959);
Thu, 19 Jun 2008 10:44:56 -0700
Message-ID: <BAY106-W35453E691116F447678B16BAAA0@phx.gbl>
From: postmaster@mail.hotmail.com
To: postmaster@mysyte.it
Date: Thu, 19 Jun 2008 10:44:56 GMT
MIME-Version: 1.0
Content-Type: multipart/report; report-type=delivery-status;
boundary="9B095B5ADSN=_98C9A2A81C354B9EB49533476B1?WOM1.labi nte"
X-DSNContext: 7ce717b1 - 1196 - 00000002 - 00000000
Subject: Delivery Status Notification (Failure)
Return-Path: <>
X-OriginalArrivalTime: 19 Jun 2008 17:44:56.0485 (UTC) FILETIME=[2FF61D50:01C8D234]

This is a MIME-formatted message.
Portions of this message may be unreadable without a MIME-capable mail program.

--9B095B5ADSN=_98C9A2A81C354B9EB49533476B1?WOM1.labi nte
Content-Type: text/plain; charset=unicode-1-1-utf-7

This is an automatically generated Delivery Status Notification.

Delivery to the following recipients failed.

user@hotmail.com




--9B095B5ADSN=_98C9A2A81C354B9EB49533476B1?WOM1.labi nte
Content-Type: message/delivery-status

Reporting-MTA: dns;imc2-s4.hotmail.com
Received-From-MTA: dns;wim1-s4.hotmail.com
Arrival-Date: Thu, 19 Jun 2008 10:41:56 GMT

Final-Recipient: rfc822;user@hotmail.com
Action: failed
Status: 5.5.0
Diagnostic-Code: smtp;550 Requested action not taken: mailbox unavailable

--9B095B5ADSN=_98C9A2A81C354B9EB49533476B1?WOM1.labi nte
Content-Type: message/rfc822

X-Message-Delivery: Vj0zLjQuMDt1cz0wO2w9MDthPTE=
X-Message-Status: n:0
X-SID-PRA: postmaster@mysyte.it <postmaster@mysyte.it>
X-Message-Info: JGTYoYF78jGyls5/72tozajnpJwPuqZsfwVQyN/kbtbDSBaIM9Z9PbGtyFD0pdXELKDRxAtOj1lG5Umu5so6+Q==
Received: from it11.xxxxxxxx.net ([xxx.x.xxx.xx]) by bay0-mc5-f6.bay0.hotmail.com with Microsoft SMTPSVC(6.0.3790.2668);
Thu, 12 Jun 2008 14:10:20 -0700
Received: by it11.xxxxxxxx.net (Postfix, from userid 33)
id 615B9489A1; Thu, 12 Jun 2008 23:10:19 +0200 (CEST)
To: user@hotmail.com
Subject: TomTom GO920T ad un prezzo speciale solo da Youbuy
From: "postmaster@mysyte.it" <postmaster@mysyte.it>
Message-ID: <20080612211019.5f0801817254@www.mysyte.it>
MIME-Version: 1.0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-Priority: 3
X-Mailer: vBulletin Mail via PHP
Date: Thu, 12 Jun 2008 23:10:19 +0200 (CEST)
Return-Path: postmaster@mysyte.it
X-OriginalArrivalTime: 12 Jun 2008 21:10:21.0275 (UTC) FILETIME=[B93792B0:01C8CCD0]

Best regards :)

Milad
06-21-2008, 05:02 AM
This message didn't return to the bounce email (ex: bounce20080608103128.551e45224330@yourdomain.ext), it seems like it had been sent before you install the product.

Would you please copy and paste one of your sent messages (while the hack enabled) to see how they look?

booktoweb
06-22-2008, 12:43 PM
thanks milad
i had make registration without activation by mail from 1 year
because i have a problem in yahoo mail ( it send to bulk mail )
so i will now ban yahoo mail from register
and return the activation to work
after this i will using your Product to manage all bad members that register with not valid mail

Milad
06-22-2008, 03:25 PM
Don't be in a hurry and wait for the next beta.

Sym0n
06-28-2008, 06:12 AM
Really interested in this, but I'm waiting for a final and preferably supported version.

Sy

stwilson
06-28-2008, 05:06 PM
I still have not been able to get this to work. I have the bounced messages in my in-box. Here is the info from the To: field in the bounced message:

bounce20080616052150.d7e1a8553456@myohv.com

But the user's usergroup is never changed to the user group I identified in the MOD CP. Any suggestions?

AngelBlue
07-04-2008, 12:53 AM
I've added some code so that bouncing users now get:
* Popup PM notification set to YES
* Receive admin emails set to NO
* Recieve email PM notification set to NO
* Thread subscription mode set to "no email" (if it was previously set to instant, daily or weekly email)
* All their thread and forum subscriptions set to 'no email'.
* A PM to explain the above.

To do this, I replaced the code in your "Move Users To Bounce Usergroup" plugin with this:


$bounces = $vbulletin->db->query_read("
SELECT messageid, toemail
FROM " . TABLE_PREFIX . "sent_email
WHERE bounced = 1
");

if ($vbulletin->db->num_rows($bounces) > 0)
{
$toemails = array();
$messageids = array();

while ($bounce = $vbulletin->db->fetch_array($bounces))
{
$toemails[] = "'" . $bounce['toemail'] . "'";
$messageids[] = $bounce['messageid'];
}
$toemails = array_unique($toemails);

// start added code here... define data for PM data manager

$tonames = array();
$touids = array();
$myuid = 1;
$fromuser = fetch_userinfo($myuid);
$message = "We tried to deliver an email to you, but unfortunately, it bounced. To prevent us sending more mail to you while your email provider is not accepting it, we have deactivated all the email-related features of your account. To reactivate your account, go to your UserCP, and update your email address. You will then get a confirmation email. Clicking on the link in this confirmation email should re-enable your account, at which point you will need to visit your UserCP options page to re-enable the email notifications you wish to use.";

$affected = $vbulletin->db->query_read("SELECT userid,username FROM " . TABLE_PREFIX . "user WHERE email IN (" . implode(', ', $toemails) . ")");
while ($affected = $vbulletin->db->fetch_array($affected)) {
$tonames[] = $affected['username'];
$touids[] = $affected['userid'];
}
$tonames = array_unique($tonames);
$pmdm =& datamanager_init('PM', $vbulletin, ERRTYPE_SILENT);
$pmdm->set('fromuserid', '1');
$pmdm->set('fromusername', 'EmailBot');
$pmdm->set_info('reciept', false);
$pmdm->set_info('savecopy', false);
$pmdm->set('title', 'Email Broken!');
$pmdm->set('message', $message);
$pmdm->set_recipients(implode(";",$tonames), $fromuser['permissions']);
$pmdm->set('dateline', TIMENOW);
$pmdm->save();



// this is stock mod code to move them to the different usergroup.
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET usergroupid = " . $vbulletin->options['bm_usergroup'] . ", membergroupids = '', displaygroupid = 0 WHERE usergroupid NOT IN (" . $vbulletin->options['bm_excludeusergroups'] . ") AND email IN (" . implode(', ', $toemails) . ")");

// and stock code to delete their message tracking info...
$vbulletin->db->query_write("DELETE FROM " . TABLE_PREFIX . "sent_email WHERE messageid IN (" . implode(', ', $messageids) . ")");

// continue custom code to update their user options...
// stop them generating any more email!

// pm popup = YES
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET pmpopup = 1 WHERE email IN (" . implode(', ', $toemails) . ")");

// send notification email on PM - NO
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET options = (options - 4096) WHERE (options & 4096) AND email IN (" . implode(', ', $toemails) . ")");

// admin email OFF
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET options = (options - 16) WHERE (options & 16) AND email IN (" . implode(', ', $toemails) . ")");

// set autosubscribe = without email WHERE autosubscribe_with_email
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET autosubscribe = 1 WHERE (autosubscribe > 1) AND email IN (" . implode(', ', $toemails) . ")");

// set emailupdates = 0 for their thread subscriptions
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "subscribethread SET emailupdate = 0 WHERE (emailupdate > 0) AND userid IN (" . implode(', ', $touids) . ")");

// set emailupdates = 0 for their forum subscriptions
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "subscribeforum SET emailupdate = 0 WHERE (emailupdate > 0) AND userid IN (" . implode(', ', $touids) . ")");

// finish
unset($toemails, $messageids);
}

$vbulletin->db->free_result($bounces);

Hornstar
07-07-2008, 11:39 PM
When I test my connection I got this message: 3 POP3 server greeting was not found

What does that mean?

Edit, changed pop host to an ip instead and that worked. Looking forward to the results of this. thanks.


I've added some code so that bouncing users now get:
* Popup PM notification set to YES
* Receive admin emails set to NO
* Recieve email PM notification set to NO
* Thread subscription mode set to "no email" (if it was previously set to instant, daily or weekly email)
* All their thread and forum subscriptions set to 'no email'.
* A PM to explain the above.

To do this, I replaced the code in your "Move Users To Bounce Usergroup" plugin with this:


$bounces = $vbulletin->db->query_read("
SELECT messageid, toemail
FROM " . TABLE_PREFIX . "sent_email
WHERE bounced = 1
");

if ($vbulletin->db->num_rows($bounces) > 0)
{
$toemails = array();
$messageids = array();

while ($bounce = $vbulletin->db->fetch_array($bounces))
{
$toemails[] = "'" . $bounce['toemail'] . "'";
$messageids[] = $bounce['messageid'];
}
$toemails = array_unique($toemails);

// start added code here... define data for PM data manager

$tonames = array();
$touids = array();
$fromuser = fetch_userinfo(1);
$message = "We tried to deliver an email to you, but unfortunately, it bounced. To prevent us sending more mail to you while your email provider is not accepting it, we have deactivated all the email-related features of your account. To reactivate your account, go to your UserCP, and update your email address. You will then get a confirmation email. Clicking on the link in this confirmation email should re-enable your account, at which point you will need to visit your UserCP options page to re-enable the email notifications you wish to use.";

$affected = $vbulletin->db->query_read("SELECT userid,username FROM " . TABLE_PREFIX . "user WHERE email IN (" . implode(', ', $toemails) . ")");
while ($affected = $vbulletin->db->fetch_array($affected)) {
$tonames[] = $affected['username'];
$touids[] = $affected['userid'];
}
$tonames = array_unique($tonames);
$pmdm =& datamanager_init('PM', $vbulletin, ERRTYPE_SILENT);
$pmdm->set('fromuserid', '1');
$pmdm->set('fromusername', 'EmailBot');
$pmdm->set_info('reciept', false);
$pmdm->set_info('savecopy', false);
$pmdm->set('title', 'Email Broken!');
$pmdm->set('message', $message);
$pmdm->set_recipients(implode(";",$tonames), $fromuser['permissions']);
$pmdm->set('dateline', TIMENOW);
$pmdm->save();



// this is stock mod code to move them to the different usergroup.
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET usergroupid = " . $vbulletin->options['bm_usergroup'] . ", membergroupids = '', displaygroupid = 0 WHERE usergroupid NOT IN (" . $vbulletin->options['bm_excludeusergroups'] . ") AND email IN (" . implode(', ', $toemails) . ")");

// and stock code to delete their message tracking info...
$vbulletin->db->query_write("DELETE FROM " . TABLE_PREFIX . "sent_email WHERE messageid IN (" . implode(', ', $messageids) . ")");

// continue custom code to update their user options...
// stop them generating any more email!

// pm popup = YES
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET pmpopup = 1 WHERE email IN (" . implode(', ', $toemails) . ")");

// send notification email on PM - NO
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET options = (options - 4096) WHERE (options & 4096) AND email IN (" . implode(', ', $toemails) . ")");

// admin email OFF
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET options = (options - 16) WHERE (options & 16) AND email IN (" . implode(', ', $toemails) . ")");

// set autosubscribe = without email WHERE autosubscribe_with_email
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET autosubscribe = 1 WHERE (autosubscribe > 1) AND email IN (" . implode(', ', $toemails) . ")");

// set emailupdates = 0 for their thread subscriptions
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "subscribethread SET emailupdate = 0 WHERE (emailupdate > 0) AND userid IN (" . implode(', ', $touids) . ")");

// set emailupdates = 0 for their forum subscriptions
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "subscribeforum SET emailupdate = 0 WHERE (emailupdate > 0) AND userid IN (" . implode(', ', $touids) . ")");

// finish
unset($toemails, $messageids);
}

$vbulletin->db->free_result($bounces);


Cool! Any chance of this getting packaged up. I would really love to get this installed on my board. It is now a requirement of AOL that you remove any permanently bounced emails from your mailing list or you risk getting blacklisted.

stwilson
07-16-2008, 08:28 AM
Still not able to get this working. I have configured all the settings and have verified the bounced message has the appropriate string in it but the usergroup is not changed, even after the chron job is run manually.

Can anyone confirm this mod has worked for them?

mrahul
07-17-2008, 08:32 AM
isn't it possible to track down all emails automatically if the email bounces more than thrice the system stops sending mails to the non-active mails ?

Alfa1
07-17-2008, 03:12 PM
If a member is placed into the bounced usergroup and then updates his/her email address, will the member be placed back in his/her original usergroup?

djilou
07-23-2008, 12:02 PM
3)Another cron job runs once an hour, reads the bounced emails from the database and moves their owners to an usergroup which is determined by the admin from the settings.
4) Yet another cron job, will run once daily, to prune the records that haven't returned bounces in a settable period of time (30 days by default).

Why I don't see those cron jobs on the Scheduled Tasks ??
I see only : ABMM: Retrive Bounces
This Scheduled Task retrieves the bounced emails from the server every ten minutes.

Milad
07-24-2008, 04:15 PM
Why I don't see those cron jobs on the Scheduled Tasks ??
I see only : ABMM: Retrive Bounces
This Scheduled Task retrieves the bounced emails from the server every ten minutes.
Two cron jobs run as plug-ins in other cron jobs.

djilou
07-24-2008, 08:38 PM
Edit : never mind the cron job didn't work because of this

I've added some code so that bouncing users now get:
* Popup PM notification set to YES
* Receive admin emails set to NO
* Recieve email PM notification set to NO
* Thread subscription mode set to "no email" (if it was previously set to instant, daily or weekly email)
* All their thread and forum subscriptions set to 'no email'.
* A PM to explain the above.

To do this, I replaced the code in your "Move Users To Bounce Usergroup" plugin with this:


$bounces = $vbulletin->db->query_read("
SELECT messageid, toemail
FROM " . TABLE_PREFIX . "sent_email
WHERE bounced = 1
");

if ($vbulletin->db->num_rows($bounces) > 0)
{
$toemails = array();
$messageids = array();

while ($bounce = $vbulletin->db->fetch_array($bounces))
{
$toemails[] = "'" . $bounce['toemail'] . "'";
$messageids[] = $bounce['messageid'];
}
$toemails = array_unique($toemails);

// start added code here... define data for PM data manager

$tonames = array();
$touids = array();
$fromuser = fetch_userinfo(1);
$message = "We tried to deliver an email to you, but unfortunately, it bounced. To prevent us sending more mail to you while your email provider is not accepting it, we have deactivated all the email-related features of your account. To reactivate your account, go to your UserCP, and update your email address. You will then get a confirmation email. Clicking on the link in this confirmation email should re-enable your account, at which point you will need to visit your UserCP options page to re-enable the email notifications you wish to use.";

$affected = $vbulletin->db->query_read("SELECT userid,username FROM " . TABLE_PREFIX . "user WHERE email IN (" . implode(', ', $toemails) . ")");
while ($affected = $vbulletin->db->fetch_array($affected)) {
$tonames[] = $affected['username'];
$touids[] = $affected['userid'];
}
$tonames = array_unique($tonames);
$pmdm =& datamanager_init('PM', $vbulletin, ERRTYPE_SILENT);
$pmdm->set('fromuserid', '1');
$pmdm->set('fromusername', 'EmailBot');
$pmdm->set_info('reciept', false);
$pmdm->set_info('savecopy', false);
$pmdm->set('title', 'Email Broken!');
$pmdm->set('message', $message);
$pmdm->set_recipients(implode(";",$tonames), $fromuser['permissions']);
$pmdm->set('dateline', TIMENOW);
$pmdm->save();



// this is stock mod code to move them to the different usergroup.
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET usergroupid = " . $vbulletin->options['bm_usergroup'] . ", membergroupids = '', displaygroupid = 0 WHERE usergroupid NOT IN (" . $vbulletin->options['bm_excludeusergroups'] . ") AND email IN (" . implode(', ', $toemails) . ")");

// and stock code to delete their message tracking info...
$vbulletin->db->query_write("DELETE FROM " . TABLE_PREFIX . "sent_email WHERE messageid IN (" . implode(', ', $messageids) . ")");

// continue custom code to update their user options...
// stop them generating any more email!

// pm popup = YES
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET pmpopup = 1 WHERE email IN (" . implode(', ', $toemails) . ")");

// send notification email on PM - NO
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET options = (options - 4096) WHERE (options & 4096) AND email IN (" . implode(', ', $toemails) . ")");

// admin email OFF
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET options = (options - 16) WHERE (options & 16) AND email IN (" . implode(', ', $toemails) . ")");

// set autosubscribe = without email WHERE autosubscribe_with_email
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET autosubscribe = 1 WHERE (autosubscribe > 1) AND email IN (" . implode(', ', $toemails) . ")");

// set emailupdates = 0 for their thread subscriptions
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "subscribethread SET emailupdate = 0 WHERE (emailupdate > 0) AND userid IN (" . implode(', ', $touids) . ")");

// set emailupdates = 0 for their forum subscriptions
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "subscribeforum SET emailupdate = 0 WHERE (emailupdate > 0) AND userid IN (" . implode(', ', $touids) . ")");

// finish
unset($toemails, $messageids);
}

$vbulletin->db->free_result($bounces);

testebr
07-25-2008, 07:53 PM
When will the final version be released?

scsa20
07-28-2008, 06:51 AM
I'm trying to set this up and when I test the connection to the pop server, I get the following error message:

110 could not connect to the host "pop.gmail.com": Connection timed out

what am I possibly doing wrong?

psylenced
07-28-2008, 07:37 AM
Can this mod read the message ID directly out of the email source?

If it can wouldn't it be easier to read this rather than creating an individual email address for each user or email sent.


I'm trying to set this up and when I test the connection to the pop server, I get the following error message:

110 could not connect to the host "pop.gmail.com": Connection timed out

what am I possibly doing wrong?

Have you enabled pop in your settings on gmail? Also if you read their help it might give you a different address - maybe you've typed it wrong..

scsa20
07-28-2008, 09:19 PM
no, the pop is turned on, and it's the correct address it told me to use, and set the port to 995, still gives me the error.

ThorstenA
07-29-2008, 05:35 AM
This products adds this html code to every page of your forum

<br /><span title="Auto Bounce Messages Management" style="cursor: pointer; text-decoration: underline;">ABMM</span> Powered by <a href="http://www.syrianmeds.net/" target="_blank">Syrian Medical Society</a>

I did not see where product author mentioned this in his product description.

RedTrinity
07-29-2008, 07:33 AM
This products adds this html code to every page of your forum


I did not see where product author mentioned this in his product description.

Try reading the first couple of pages of this topic ;)

ThorstenA
07-29-2008, 07:47 AM
You are right. But this need to be either mentioned in product description, or this product should be deleted on vbulletin.org

Marco van Herwaarden
07-29-2008, 08:09 AM
A copyright notice in the footer is common practise and not a reason to delete a modification from vB.org (providing it is not linking to Warez/Adult content, etc..).

It is the users choice to accept this and install the modification or not.

(PS I do agree with mot of those that complain that a copyright notice should only be placed on pages where the modification is active, but this is the authors choice)

ThorstenA
07-29-2008, 09:20 AM
I agree that a copyright notice is okay. But I need to know that there is a notice and where it is placed. Here it is placed on *all* of my pages. This for an administorial modification! You'd never think there's a copyright notice at all. If administrators just install this mod, they do not always look around what this modification displays on places which have nothing to do with this mod.

I never installed a mod and then searched my website for additional copyright notices (which is here also linked - bad for SEO). And I installed a lot of mods. But now I do. Does not make vb.org a more secure place for me.

Milad
07-29-2008, 11:33 AM
Can this mod read the message ID directly out of the email source?

If it can wouldn't it be easier to read this rather than creating an individual email address for each user or email sent.

Yes. it could be easier. I'll find out whether it has any limitation or not.

no, the pop is turned on, and it's the correct address it told me to use, and set the port to 995, still gives me the error.

It seems like your host has a kind of firewall. contact your host regarding this.

Raptor
07-29-2008, 11:54 PM
I'll give this a good test :)

Raptor
07-31-2008, 02:01 PM
after install - email notifications for users is no longer working - any ideas ?

Milad
07-31-2008, 11:13 PM
Can this mod read the message ID directly out of the email source?

If it can wouldn't it be easier to read this rather than creating an individual email address for each user or email sent.

This isn't good to be implemented. because the message-ID will be quoted in the body of the bounce message. the existence of it isn't guaranteed.

On the other hand, scanning the header of the bounce message is enough to retrieve the special email address.

Regards

Milad
07-31-2008, 11:13 PM
after install - email notifications for users is no longer working - any ideas ?
Uninstall. reinstall.

Raptor
08-05-2008, 07:53 AM
ok got this all running HOWEVER its not moving any users to the bounce usergroup - I notice many others with the same problem

here is the message after the cron is run

ABMM: Retrive Bounces

Connected to the POP3 server "pop.1and1.co.uk".
User "bounce@*******.com" logged in.
There are 10521 message(s) in the mail box with a total of 31975516 bytes.
Disconnected from the POP3 server "pop.1and1.co.uk".
Done

Id love to get this to work - as you can see I have a heavy board and a lot of users to process.

I would pay $$ to get this working

Gersfan
08-05-2008, 04:58 PM
Is this working?

Raptor
08-05-2008, 05:51 PM
here is my test msg

Connecting to pop.1and1.co.uk ...
S +OK POP server ready H mimap11
Connected to the POP3 server "pop.1and1.co.uk".
C USER bounce@*********.com
S +OK password required for user "bounce@*********.com"
C PASS *******
S +OK mailbox "bounce@*********.com" has 10521 messages (31975516 octets) H mimap11
User "bounce@*********.com" logged in.
C STAT
S +OK 10521 31975516
There are 10521 message(s) in the mail box with a total of 31975516 bytes.

ams3521
08-06-2008, 12:39 AM
Same problem as Raptor, seems to work ok but the bounced users do not get moved to the new usergroup.

Great hack by the way if it worked.

Raptor
08-06-2008, 06:46 PM
so far 15 users have been moved - out of around 10,000 that need sorting lol

so its almost there - im sure it will get sorted

ams3521
08-07-2008, 08:35 PM
lol
did u do anything Raptor to move those 15 or did u just leave it?
I'm asking as i have disabled it at the moment.

Raptor
08-09-2008, 09:32 AM
I just left it - its at 53 atm however there is still many thousands to be processed.

is this mod still being worked on ?

Connecting to pop.1and1.co.uk ...
S +OK POP server ready H mimap40
Connected to the POP3 server "pop.1and1.co.uk".
C USER bounce@********.com
S +OK password required for user "bounce@********.com"
C PASS *******
S +OK mailbox "bounce@********.com" has 11242 messages (34093668 octets) H mimap40
User "bounce@********.com" logged in.
C STAT
S +OK 11242 34093668
There are 11242 message(s) in the mail box with a total of 34093668 bytes.

Gersfan
08-14-2008, 09:38 AM
I guess It's not working them, I'll probarly have to install the EZ version and manualy move accounts.

TheInsaneManiac
08-14-2008, 05:33 PM
So is there a way that if a user has inputted a fake email and it gets bounced, that the email would no longer be emailed therefor saving server resources.?

Raptor
08-15-2008, 05:48 AM
Is this going to get updated or not ?

I've already offered $$$

Milad
08-15-2008, 07:06 AM
Raptor, please don't push!

Gene Steinberg
08-19-2008, 12:23 PM
I guess It's not working them, I'll probarly have to install the EZ version and manualy move accounts.
I can't get the EZ version to function at all with 3.7.2. I get the bounced mails, but they don't have the requisite links that EZ is supposed to insert. I tried both the header and the insertion at the bottom of the message -- no luck. The coder doesn't respond to the post I presented on the subject.

So I'm back to this one, but it's not fully reliable either. It doesn't appear to be parsing even a fraction of the actual bounces.

Milad, any help here?

Peace,
Gene

Milad
08-20-2008, 11:21 AM
This is beta 1, you're expecting too much from the first beta.

I worked on beta 2. but din't finish it yet. Some commercial projects have higher priorities.

So please be patient.

Gene Steinberg
08-20-2008, 01:22 PM
This is beta 1, you're expecting too much from the first beta.

I worked on beta 2. but din't finish it yet. Some commercial projects have higher priorities.

So please be patient.
I just want it to work. :)

Do you have any ideas yet when beta 2 will be finished?

Peace,
Gene

fatal1980
08-22-2008, 02:02 AM
I agree that a copyright notice is okay. But I need to know that there is a notice and where it is placed. Here it is placed on *all* of my pages. This for an administorial modification! You'd never think there's a copyright notice at all. If administrators just install this mod, they do not always look around what this modification displays on places which have nothing to do with this mod.

I never installed a mod and then searched my website for additional copyright notices (which is here also linked - bad for SEO). And I installed a lot of mods. But now I do. Does not make vb.org a more secure place for me.

Deal with it. He isn't Hans Reiser, he didn't murder his wife. So don't get so bent out of shape.

fatal1980
08-22-2008, 02:17 AM
I do have one suggestion. If a message is going to bounce properly, the messages sent from vBulletin wouldn't even be accepted by the destination host. Typically if an email no longer exists, the message is bounced during the SMTP transaction.

Instead of your current method of verifying bounce messages. Why don't you either re-write the vBulletin sending function or place a hook before the message is to be sent. And have a script resolve the domains mx record. Then connect to the destination mail server and confirm the message is valid. You pretty much just have to issue a HELO, MAIL FROM, and RCPT TO. You don't even have to send a message through.

This definitely cut down the time and resources used to determine if an address is legitimate. You would obviously have to setup the pop account as well to catch mail servers that are accepting mail and then bouncing it (which is bad and shouldn't happen).

Furthermore, the process of the bad mail addresses would happen during regular mail operations.

Thanks for the great mod.

Milad
08-22-2008, 11:11 AM
I do have one suggestion. If a message is going to bounce properly, the messages sent from vBulletin wouldn't even be accepted by the destination host. Typically if an email no longer exists, the message is bounced during the SMTP transaction.

Instead of your current method of verifying bounce messages. Why don't you either re-write the vBulletin sending function or place a hook before the message is to be sent. And have a script resolve the domains mx record. Then connect to the destination mail server and confirm the message is valid. You pretty much just have to issue a HELO, MAIL FROM, and RCPT TO. You don't even have to send a message through.

This definitely cut down the time and resources used to determine if an address is legitimate. You would obviously have to setup the pop account as well to catch mail servers that are accepting mail and then bouncing it (which is bad and shouldn't happen).

Furthermore, the process of the bad mail addresses would happen during regular mail operations.

Thanks for the great mod.
That's bad approach. you don't need to send a "Hello" email whenever you want to send an email.

fatal1980
08-23-2008, 02:16 AM
That's bad approach. you don't need to send a "Hello" email whenever you want to send an email.

You dont send a "HELLO" email message. You just connect to the SMTP server for the domain name and send some regular SMTP commands to verify if the email exists.

Ill show you how it can be done manually.

Find the MX record

[comm@taco:/home/comm]> dig hotmail.com mx

;; ANSWER SECTION:
hotmail.com. 3600 IN MX 5 mx4.hotmail.com.
hotmail.com. 3600 IN MX 5 mx1.hotmail.com.
hotmail.com. 3600 IN MX 5 mx3.hotmail.com.
hotmail.com. 3600 IN MX 5 mx2.hotmail.com.

Connect the the one of the MX records (I've *** out my email address):

[comm@taco:/home/comm]> telnet mx2.hotmail.com 25
Trying 65.54.245.40...
Connected to mx2.hotmail.com.
Escape character is '^]'.
220 bay0-mc10-f11.bay0.hotmail.com Sending unsolicited commercial or bulk e-mail to Microsoft's computer network is prohibited. Other restrictions are found at http://privacy.msn.com/Anti-spam/. Violations will result in use of equipment located in California and other states. Fri, 22 Aug 2008 19:53:02 -0700
HELO test.example.com
250 bay0-mc10-f11.bay0.hotmail.com (3.6.0.91) Hello [64.40.106.55]
MAIL FROM: j***@gmail.com
250 j****@gmail.com....Sender OK
RCPT TO: n*****@hotmail.com
250 n****@hotmail.com
DATA
354 Start mail input; end with <CRLF>.<CRLF>
^]
telnet> Connection closed.

As you can see the mail was accepted after the DATA command. So this was successful.

Now lets see one thats failed on an address that didn't exist.

[comm@taco:/home/comm]> telnet mx2.hotmail.com 25
Trying 65.54.244.168...
Connected to mx2.hotmail.com.
Escape character is '^]'.
220 bay0-mc6-f8.bay0.hotmail.com Sending unsolicited commercial or bulk e-mail to Microsoft's computer network is prohibited. Other restrictions are found at http://privacy.msn.com/Anti-spam/. Violations will result in use of equipment located in California and other states. Fri, 22 Aug 2008 19:56:44 -0700
helo test.example.com
250 bay0-mc6-f8.bay0.hotmail.com (3.6.0.91) Hello [64.40.106.55]
MAIL FROM: ****@gmail.com
250 *****@gmail.com....Sender OK
RCPT TO: badmail1231233123@hotmail.com
550 Requested action not taken: mailbox unavailable
^]
telnet> Connection closed.

As you can see the SMTP session fails! Easy test and you don't need to send a message to the server or process bounce messages. This is the same process used in the following module that works very well:

https://vborg.vbsupport.ru/showthread.php?t=144590

Your wasting your time and resources on use a POP3 account, just use the above method. While your at it you can also re-create the above module for 3.7 since it hasn't been coded over to 3.7 and it would be fairly easy.

Gene Steinberg
08-23-2008, 02:25 AM
I don't presume to know why this particular product doesn't work, and I'l accept your logic. For now, I'm using EZ Bounce which, while requiring some manual labor (and a plugin mod until the coder added it himself), does what it supposed to do. And it works with 3.7.2PL2.

Peace,
Gene

TooTall52
08-24-2008, 06:51 PM
This won't work accurately as many email servers out there accept all mail, process it then kick back bounces for the invalid ones. microsoft exchange works this way for example, may Lotus Notes as well.

so just because a helo passes does not mean it is valid address, the seperate pop account is probably more accurate.

TooTall52

You dont send a "HELLO" email message. You just connect to the SMTP server for the domain name and send some regular SMTP commands to verify if the email exists.

Ill show you how it can be done manually.

Find the MX record

[comm@taco:/home/comm]> dig hotmail.com mx

;; ANSWER SECTION:
hotmail.com. 3600 IN MX 5 mx4.hotmail.com.
hotmail.com. 3600 IN MX 5 mx1.hotmail.com.
hotmail.com. 3600 IN MX 5 mx3.hotmail.com.
hotmail.com. 3600 IN MX 5 mx2.hotmail.com.

Connect the the one of the MX records (I've *** out my email address):

[comm@taco:/home/comm]> telnet mx2.hotmail.com 25
Trying 65.54.245.40...
Connected to mx2.hotmail.com.
Escape character is '^]'.
220 bay0-mc10-f11.bay0.hotmail.com Sending unsolicited commercial or bulk e-mail to Microsoft's computer network is prohibited. Other restrictions are found at http://privacy.msn.com/Anti-spam/. Violations will result in use of equipment located in California and other states. Fri, 22 Aug 2008 19:53:02 -0700
HELO test.example.com
250 bay0-mc10-f11.bay0.hotmail.com (3.6.0.91) Hello [64.40.106.55]
MAIL FROM: j***@gmail.com
250 j****@gmail.com....Sender OK
RCPT TO: n*****@hotmail.com
250 n****@hotmail.com
DATA
354 Start mail input; end with <CRLF>.<CRLF>
^]
telnet> Connection closed.

As you can see the mail was accepted after the DATA command. So this was successful.

Now lets see one thats failed on an address that didn't exist.

[comm@taco:/home/comm]> telnet mx2.hotmail.com 25
Trying 65.54.244.168...
Connected to mx2.hotmail.com.
Escape character is '^]'.
220 bay0-mc6-f8.bay0.hotmail.com Sending unsolicited commercial or bulk e-mail to Microsoft's computer network is prohibited. Other restrictions are found at http://privacy.msn.com/Anti-spam/. Violations will result in use of equipment located in California and other states. Fri, 22 Aug 2008 19:56:44 -0700
helo test.example.com
250 bay0-mc6-f8.bay0.hotmail.com (3.6.0.91) Hello [64.40.106.55]
MAIL FROM: ****@gmail.com
250 *****@gmail.com....Sender OK
RCPT TO: badmail1231233123@hotmail.com
550 Requested action not taken: mailbox unavailable
^]
telnet> Connection closed.

As you can see the SMTP session fails! Easy test and you don't need to send a message to the server or process bounce messages. This is the same process used in the following module that works very well:

https://vborg.vbsupport.ru/showthread.php?t=144590

Your wasting your time and resources on use a POP3 account, just use the above method. While your at it you can also re-create the above module for 3.7 since it hasn't been coded over to 3.7 and it would be fairly easy.

Milad
08-25-2008, 12:28 PM
You dont send a "HELLO" email message. You just connect to the SMTP server for the domain name and send some regular SMTP commands to verify if the email exists.

Ill show you how it can be done manually.

Find the MX record

[comm@taco:/home/comm]> dig hotmail.com mx

;; ANSWER SECTION:
hotmail.com. 3600 IN MX 5 mx4.hotmail.com.
hotmail.com. 3600 IN MX 5 mx1.hotmail.com.
hotmail.com. 3600 IN MX 5 mx3.hotmail.com.
hotmail.com. 3600 IN MX 5 mx2.hotmail.com.

Connect the the one of the MX records (I've *** out my email address):

[comm@taco:/home/comm]> telnet mx2.hotmail.com 25
Trying 65.54.245.40...
Connected to mx2.hotmail.com.
Escape character is '^]'.
220 bay0-mc10-f11.bay0.hotmail.com Sending unsolicited commercial or bulk e-mail to Microsoft's computer network is prohibited. Other restrictions are found at http://privacy.msn.com/Anti-spam/. Violations will result in use of equipment located in California and other states. Fri, 22 Aug 2008 19:53:02 -0700
HELO test.example.com
250 bay0-mc10-f11.bay0.hotmail.com (3.6.0.91) Hello [64.40.106.55]
MAIL FROM: j***@gmail.com
250 j****@gmail.com....Sender OK
RCPT TO: n*****@hotmail.com
250 n****@hotmail.com
DATA
354 Start mail input; end with <CRLF>.<CRLF>
^]
telnet> Connection closed.

As you can see the mail was accepted after the DATA command. So this was successful.

Now lets see one thats failed on an address that didn't exist.

[comm@taco:/home/comm]> telnet mx2.hotmail.com 25
Trying 65.54.244.168...
Connected to mx2.hotmail.com.
Escape character is '^]'.
220 bay0-mc6-f8.bay0.hotmail.com Sending unsolicited commercial or bulk e-mail to Microsoft's computer network is prohibited. Other restrictions are found at http://privacy.msn.com/Anti-spam/. Violations will result in use of equipment located in California and other states. Fri, 22 Aug 2008 19:56:44 -0700
helo test.example.com
250 bay0-mc6-f8.bay0.hotmail.com (3.6.0.91) Hello [64.40.106.55]
MAIL FROM: ****@gmail.com
250 *****@gmail.com....Sender OK
RCPT TO: badmail1231233123@hotmail.com
550 Requested action not taken: mailbox unavailable
^]
telnet> Connection closed.

As you can see the SMTP session fails! Easy test and you don't need to send a message to the server or process bounce messages. This is the same process used in the following module that works very well:

https://vborg.vbsupport.ru/showthread.php?t=144590

Your wasting your time and resources on use a POP3 account, just use the above method. While your at it you can also re-create the above module for 3.7 since it hasn't been coded over to 3.7 and it would be fairly easy.
Sending a "hello" trial on every single message is more server intensive than retrieving only the bounced messages from a pop mail.

fatal1980
08-25-2008, 08:10 PM
Sending a "hello" trial on every single message is more server intensive than retrieving only the bounced messages from a pop mail.

You're running a cron to process the messages from a pop account. Your method, takes more code, and more time to process messages. Your method works, however is inefficient and takes longer.

Instead you could have levels of verification. I'm assuming you're using the mail function to just blindly send the message along. Instead you could use sockets and make a connection to the mail server, try and send the message and if it doesn't go through then you don't need to generate an email. Otherwise you can just send the mail and process the bounce message. Also, you don't really need to use a POP Account. For linux users you could use a .forward file that pipes the mail to a script. Usually shared hosting providers have a mailbox setup on the local machine for each account, or for big boards that run VIPS or have a Dedicated Server.

This won't work accurately as many email servers out there accept all mail, process it then kick back bounces for the invalid ones. microsoft exchange works this way for example, may Lotus Notes as well.

so just because a helo passes does not mean it is valid address, the seperate pop account is probably more accurate.

TooTall52

Yes, another reason why bounce back spam invades mailboxes. A properly written or configured MTA would do checks at SMTP time. And reject messages that it doesn't relay for, and for non-existent email addresses.

If the MTA accepts the message, and generates a bounce back afterwards. Spammers could use a forged from address, and now your server is spamming. Bad. In any case, if you're making a add-on that is going to change or improve the vBulletin mail portion then you should consider all the factors in making it secure and not server intensive.

You must understand that I'm only discussing this with you as general feedback. I praise anyone that provides modules for free to the vbulletin community and I thank you for your effort.

dtv100
09-12-2008, 12:18 AM
it work on my forum but is nto moving members also from time to time when cron run i get a white page on forum home with info how many email are in bounce@mydomain.com

SnapOff Racing
09-22-2008, 06:19 AM
Great mod. I have a question...when the users register...is there a way to edit the registration text to let users know if they do not put a valid email address they will not receive the code to activate their account? I have a LOT of kids registering on my site using fake email addresses and am having to manually bounce the users with vbounce. Even if this mod automatically does it I'd like to know how to edit the registration text to let them know.

testebr
09-23-2008, 11:14 PM
Any ETA for next version?

ryancooper
10-14-2008, 12:12 PM
I am getting a message - 3 POP3 server greeting was not found When I test the pop connection. I am using gmail have pop turned on and am using the correct port?

Any ideas what this means?

EDIT - Needed POP Secure Connection set to ON

dfe
10-28-2008, 02:54 PM
Hi

Great mod! It seems to be working, well partly at least. It's appending the id's, logging in and retrieving the bounces, but at which point does it move the members to a different usergroup? (I have created a new group for that.)

Dirk

mcyates
11-09-2008, 05:05 PM
Hi

Great mod! It seems to be working, well partly at least. It's appending the id's, logging in and retrieving the bounces, but at which point does it move the members to a different usergroup? (I have created a new group for that.)

Dirk
Its not moving members for anyone. Seems to be a massive letdown!!!

DebtFree
12-15-2008, 01:19 PM
So has this mod died? It would seem a shame if it has because it appears that there are only minor bugs (if you can call not moving the members to the correct group minor :rofl: )

Milad
12-15-2008, 06:03 PM
It didn't die. I just have no time to continue the development. I've already started the beta 2.

If I have two projects, paid and non-paid. I would choose to work on the paid one for sure.

This mod doesn't get the support it needs, as members here refuse to post a back link to my website, and on the other side they ask for product improvements. I'm kind of disappointed by the community response.

So, this mod need to be sponsored by someone, as it's not on top of my priority list.

Regards

Hornstar
12-20-2008, 03:41 AM
I have a feeling it is because of this modification that I was finally able to send out 200 000 emails without my site lagging and crashing to death lol.

This morning I set it to send out to 1000 people at a time, and it just finished sending. My server load was under 5 all day which is fantastic compared to past results. and I just went to my mail queue and there are only 92 people left in the mail queue! I will check those accounts to see what happens to them in the next few days, but so far they are all still reg accounts. Thanks :)

Alfa1
12-25-2008, 12:28 PM
It didn't die. I just have no time to continue the development. I've already started the beta 2.

If I have two projects, paid and non-paid. I would choose to work on the paid one for sure.

This mod doesn't get the support it needs, as members here refuse to post a back link to my website, and on the other side they ask for product improvements. I'm kind of disappointed by the community response.

So, this mod need to be sponsored by someone, as it's not on top of my priority list.
If you update this hack, so that it works and does the following, then I will donate $100. I am sure others will also donate. I ask others that want to donate to post here.

different responses to different error codes / Custom filters to match patterns in bounced emails. i.e. permanent error, mailbox full, etc should get a different response. Not many webmasters want their members account inactivated when a mailbox is full.
Does not affect moderators, super moderators and admins
Turn off all email notifications & remove subscriptions
Stats on members with bouncing emails, and error codes
Turns on Popup Notification of new Private Messages for bouncing member
Automatically send a notification PM to bouncing Member (customizable message)
Return members to their original usergroup when the member updates & confirms their new email.That the following information is added to the bottom of all outgoing email messages:

If the email is an subscription, then add an explanation how to remove subscriptions by going to the userCP.
If the email is an subscription, then add an explanation how to stop receiving email from the site by going to the userCP.
To which email address the email has been sent.
Why the recipient is receiving the email. i.e. You have subscribed to thread X with your account Y on website Z.
From who(Name and url of site) the email is sent
How often the email will be sent.
The physical address of the organisation sending the email. This would comply to the demands of large email providers like hotmail, AOL, Gmail, Yahoo, etc. For more information, see this article: How to keep your board from getting blacklisted as a spammer (https://vborg.vbsupport.ru/showthread.php?p=1533552)

raagaswaram
01-03-2009, 07:03 PM
does this work on 3.6.8

Zachery
01-04-2009, 04:55 AM
It didn't die. I just have no time to continue the development. I've already started the beta 2.

If I have two projects, paid and non-paid. I would choose to work on the paid one for sure.

This mod doesn't get the support it needs, as members here refuse to post a back link to my website, and on the other side they ask for product improvements. I'm kind of disappointed by the community response.

So, this mod need to be sponsored by someone, as it's not on top of my priority list.

Regards
Are you really that suprised that people don't want to provide a link to your webiste on every page of their forum for your back-end administrative feature. Thats like Brad wanting a link to his website for vB-Pizza Boy. Ok, so that is a stretch. But like I said before, you should be developing modifications that you use for your own needs or reasons. Not specificly to gain recognition. I understand you need to pay your bills, I'm sure many people would be willing to pay you for your time and effort to code addons. But none of us want a link to your website on _every_ page of our forum for something that none of our users will get any benifit out of.

You do good work, but the way you want to get recognized for it is not so well thought out.

Its a shame really, the community used to be alot more friendly. People helped each other and great things came from it.

franzis
01-06-2009, 10:53 AM
now i got following infomation in my acp, but i'm not sure how to handle with them.

1) can i have a look at ... maybe a users list.. where it's notived which users are now in an other usergroup?
2) can i set up the time when the cronejob moves the users? it does it one time a day, ok, but what time?
is there a crone-log to have a look at?

or maybe my crone doesn't work if there's no log?
i can see the 4 users noticed on my acp screen for more than a week.. shouldn't change that number (into f.e. zero not available users) the next day?

yours sincerely
franzis

Skyrider
01-06-2009, 01:38 PM
I can't get this to work, any idea why?

Connected to the POP3 server "pop.gmail.com".
User "forum@xxxxx.net" logged in.
There are 1 message(s) in the mail box with a total of 2783 bytes.
Disconnected from the POP3 server "pop.gmail.com".

That 1 message has the following email:
To: idonotexistherebecauseijustdont@gmail.com
Auto-Submitted: auto-generated
Return-Path: bounce@xxxxx.com
Message-ID: <20090106153133.6886912a2f2e@forum.xxxxx.net>
Yet, it didnt moved me nor did any action. And this is not a test. I forced a run..

Milad
01-06-2009, 02:48 PM
this is a beta product

MissKalunji
01-14-2009, 04:43 PM
i'de love to get more details on that sponsor comment .....i'm not too familiar with that?

kahethu
03-12-2009, 10:36 PM
If you update this hack, so that it works and does the following, then I will donate $100. I am sure others will also donate. I ask others that want to donate to post here.

different responses to different error codes / Custom filters to match patterns in bounced emails. i.e. permanent error, mailbox full, etc should get a different response. Not many webmasters want their members account inactivated when a mailbox is full.
Does not affect moderators, super moderators and admins
Turn off all email notifications & remove subscriptions
Stats on members with bouncing emails, and error codes
Turns on Popup Notification of new Private Messages for bouncing member
Automatically send a notification PM to bouncing Member (customizable message)
Return members to their original usergroup when the member updates & confirms their new email.That the following information is added to the bottom of all outgoing email messages:

If the email is an subscription, then add an explanation how to remove subscriptions by going to the userCP.
If the email is an subscription, then add an explanation how to stop receiving email from the site by going to the userCP.
To which email address the email has been sent.
Why the recipient is receiving the email. i.e. You have subscribed to thread X with your account Y on website Z.
From who(Name and url of site) the email is sent
How often the email will be sent.
The physical address of the organisation sending the email. This would comply to the demands of large email providers like hotmail, AOL, Gmail, Yahoo, etc. For more information, see this article: How to keep your board from getting blacklisted as a spammer (https://vborg.vbsupport.ru/showthread.php?p=1533552)

I'll donate...

For now I choose not to install it based on the comments on this thread.
will keep an eye

Zachery
03-13-2009, 01:20 AM
He said he'd remove it originally in the first few pages of the thread, then never did.

AngelBlue
04-10-2009, 03:59 AM
I've added some code so that bouncing users now get:
* Popup PM notification set to YES
* Receive admin emails set to NO
* Recieve email PM notification set to NO
* Thread subscription mode set to "no email" (if it was previously set to instant, daily or weekly email)
* All their thread and forum subscriptions set to 'no email'.
* A PM to explain the above.

To do this, I replaced the code in your "Move Users To Bounce Usergroup" plugin with this:


$bounces = $vbulletin->db->query_read("
SELECT messageid, toemail
FROM " . TABLE_PREFIX . "sent_email
WHERE bounced = 1
");

if ($vbulletin->db->num_rows($bounces) > 0)
{
$toemails = array();
$messageids = array();

while ($bounce = $vbulletin->db->fetch_array($bounces))
{
$toemails[] = "'" . $bounce['toemail'] . "'";
$messageids[] = $bounce['messageid'];
}
$toemails = array_unique($toemails);

// start added code here... define data for PM data manager

$tonames = array();
$touids = array();
$myuid = 1;
$fromuser = fetch_userinfo($myuid);
$message = "We tried to deliver an email to you, but unfortunately, it bounced. To prevent us sending more mail to you while your email provider is not accepting it, we have deactivated all the email-related features of your account. To reactivate your account, go to your UserCP, and update your email address. You will then get a confirmation email. Clicking on the link in this confirmation email should re-enable your account, at which point you will need to visit your UserCP options page to re-enable the email notifications you wish to use.";

$affected = $vbulletin->db->query_read("SELECT userid,username FROM " . TABLE_PREFIX . "user WHERE email IN (" . implode(', ', $toemails) . ")");
while ($affected = $vbulletin->db->fetch_array($affected)) {
$tonames[] = $affected['username'];
$touids[] = $affected['userid'];
}
$tonames = array_unique($tonames);
$pmdm =& datamanager_init('PM', $vbulletin, ERRTYPE_SILENT);
$pmdm->set('fromuserid', '1');
$pmdm->set('fromusername', 'EmailBot');
$pmdm->set_info('reciept', false);
$pmdm->set_info('savecopy', false);
$pmdm->set('title', 'Email Broken!');
$pmdm->set('message', $message);
$pmdm->set_recipients(implode(";",$tonames), $fromuser['permissions']);
$pmdm->set('dateline', TIMENOW);
$pmdm->save();



// this is stock mod code to move them to the different usergroup.
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET usergroupid = " . $vbulletin->options['bm_usergroup'] . ", membergroupids = '', displaygroupid = 0 WHERE usergroupid NOT IN (" . $vbulletin->options['bm_excludeusergroups'] . ") AND email IN (" . implode(', ', $toemails) . ")");

// and stock code to delete their message tracking info...
$vbulletin->db->query_write("DELETE FROM " . TABLE_PREFIX . "sent_email WHERE messageid IN (" . implode(', ', $messageids) . ")");

// continue custom code to update their user options...
// stop them generating any more email!

// pm popup = YES
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET pmpopup = 1 WHERE email IN (" . implode(', ', $toemails) . ")");

// send notification email on PM - NO
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET options = (options - 4096) WHERE (options & 4096) AND email IN (" . implode(', ', $toemails) . ")");

// admin email OFF
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET options = (options - 16) WHERE (options & 16) AND email IN (" . implode(', ', $toemails) . ")");

// set autosubscribe = without email WHERE autosubscribe_with_email
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET autosubscribe = 1 WHERE (autosubscribe > 1) AND email IN (" . implode(', ', $toemails) . ")");

// set emailupdates = 0 for their thread subscriptions
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "subscribethread SET emailupdate = 0 WHERE (emailupdate > 0) AND userid IN (" . implode(', ', $touids) . ")");

// set emailupdates = 0 for their forum subscriptions
$vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "subscribeforum SET emailupdate = 0 WHERE (emailupdate > 0) AND userid IN (" . implode(', ', $touids) . ")");

// finish
unset($toemails, $messageids);
}

$vbulletin->db->free_result($bounces);


Changed the lines listed in bold to avoid a 'only variables may be passed by reference' error when the hourly2 cleanup job runs. If you are using my patch, above, you should update. This error can prevent the running of that job, without alerting you.

Smitty
04-10-2009, 04:58 AM
If you update this hack, so that it works and does the following, then I will donate $100. I'd throw in US$50. I deal with bounces daily and hate it.

Milad
04-10-2009, 05:36 AM
Will continue beta 2 as soon as I have time.

wfouly
05-16-2009, 03:03 AM
Uninstalled
it stop the all mail function of the forum
so members waiting email activation not activated

Adam_EOGamer
06-03-2009, 01:32 PM
Just a warning before anyone else adds this
It automatically placed a link in the footer of your forum, which when clicked, goes to the Syrian medical society (or something), the webpage has a trojan virus on it.

Milad
06-03-2009, 06:28 PM
1- Everyone knows that this hack adds credits in the footer, and is free to remove them.
2- How can you make such an accusation? My website (Syrian Medical Society) is reputable website, and have never been as a distribution for malwares.
Here are what google says about it:
safe browsing (http://www.google.com/safebrowsing/diagnostic?site=www.syrianmeds.net)
unmask parasites (http://www.unmaskparasites.com/security-report/?page=www.syrianmeds.net) says: This page seems to be <suspicious> because of the following line:

document.write('<marquee onmouseover="this.stop()" onmouseout="this.start()" direction="right" scrollamount="3" scrolldelay="20" class="smallfont">آخر ما نُشر لدينا&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12165-newpost.html" target="_blank" class="smallfont">الفيزيولوجيا المرضية</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12162-newpost.html" target="_blank" class="smallfont">جراحة 3</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12160-newpost.html" target="_blank" class="smallfont">دوري علامات الطب سنة تانية</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12159-newpost.html" target="_blank" class="smallfont">داخلية 4</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12158-newpost.html" target="_blank" class="smallfont">داخلية 2</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12157-newpost.html" target="_blank" class="smallfont">التشريح المرضي العام</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12156-newpost.html" target="_blank" class="smallfont">أدوية 1</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12155-newpost.html" target="_blank" class="smallfont">تشريح 2</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12149-newpost.html" target="_blank" class="smallfont">الصحة تطلب من الصيادلة سحب عدد من المستحضرات الدوائية لمخالفتها للمواصفات</a>&nbsp;&nbsp;&nbsp;??&nbsp;&nbsp;&nbsp;<a href="http://www.syrianmeds.net/forum/topic12147-newpost.html" target="_blank" class="smallfont">ألم شديد في القدم</a></marquee>');

Which prints the marquee section, without causing the page to fail in the XHTML validation.

So please, before you make such an accusation, have the evidence that supports your claim.

Alfa1
06-04-2009, 07:46 AM
Just a warning before anyone else adds this
It automatically placed a link in the footer of your forum, which when clicked, goes to the Syrian medical society (or something), the webpage has a trojan virus on it.
The only mallware that there is, is your virus scanner. For some reason several virus scanners/ link scanners report a lot of sites, that have no problem whatsoever, as containing mallware, virus or troyan horses. This happened to a site of mine that was coded in prolog in 1998 and therefore contained exotic code antivira could not understand and therefor antivira classified it as a troyan horse. I assure you that it was not. There are a mass of examples to be found on the net. Antivirus programs are simply not fit to scan websites for 'suspect' scripts.

Milad
06-05-2009, 09:14 PM
Statistics!

testebr
06-12-2009, 03:53 PM
Stats? That cool, this feature will be released in next update?

Any ETA, Milad?

Thanks!

Hornstar
06-29-2009, 08:55 AM
Statistics!

nice! any more word on this feature or any other updates on this mod? It is truly a fantastic modification which I hope to see continued!

Ross L
07-05-2009, 07:29 PM
Excellent! Installed :)

To the people complaining about the link, just open:

product-bounce_management.xml

and look for this code:

<plugin active="1" executionorder="1">
<title><![CDATA[Copyright: don't disable this plugin at all!]]></title>
<hookname>parse_templates</hookname>
<phpcode><![CDATA[// Copyright: don't disable this plugin at all! or you'll violate the product license.

$vbphrase['powered_by_vbulletin'] .= '<br /><span title="Auto Bounce Messages Management" style="cursor: pointer; text-decoration: underline;">ABMM</span> Powered by <a href="http://www.syrianmeds.net/" target="_blank">Syrian Medical Society</a>';]]></phpcode>
</plugin>

Delete it and save.

Bish, bash, bosh the jobs a good'un.

checkmail
08-24-2009, 12:20 AM
Does this work on 3.8?

Milad
08-24-2009, 07:29 AM
Does this work on 3.8?
No, it doesn't.

AngelBlue
11-07-2009, 10:03 PM
Any chance of a 3.8 version?

Most people are using 3.8, and this is a very useful mod.

Hornstar
12-22-2009, 12:31 AM
Milad, how have you been?

You were talking about and even showed a pic of a future update. Are you still intending to release that? Vb4 would be very nice to see an update for.

katoom400
02-03-2010, 10:21 PM
I would love to see this on vb4.x!

Gene Steinberg
02-03-2010, 10:30 PM
Why? It never worked in 3.7 or 3.8?

Peace,
Gene

Zachery
04-24-2010, 11:49 PM
Everyone should be aware that this product is still backlinking the authors sites and you are not informed of this PRIOR to installing the product:


$vbphrase['powered_by_vbulletin'] .= '<br /><span title="Auto Bounce Messages Management" style="cursor: pointer; text-decoration: underline;">ABMM</span> Powered by <a href="http://www.syrianmeds.net/" target="_blank">Syrian Medical Society</a>'

I am all for authors rights and copyright, but this is still from my original post unaccectable for a backend feature.

You can simply disable/remove the following plugin: "Copyright: don't disable this plugin at all!"

There is no license file, or requirement in your modification that says that the copyright must remain intact on your code. Removing the copyright notice and link back to the page should not violate any license implied or otherwise.


OK, never mind. I'm sorry for that. I'm going to make the copyright optional.

Thus, I appreciate if you post a backlink to my site. when you announce the automation to your members.

Regards
https://vborg.vbsupport.ru/showpost.php?p=1545461&postcount=37
https://vborg.vbsupport.ru/showpost.php?p=1551888&postcount=53

MonkYZ
06-24-2011, 11:28 PM
Is there any chance for an updated version to work with 4.x vB? Thanks in advance!

kacem
02-02-2013, 12:48 PM
Is there any chance for an updated version to work with 4.x vB? Thanks in advance!

fomag
10-12-2014, 09:44 AM
What should I see after 'Test POP3 connection'? I have clean, white right side of the screen (admincp panel)...
I've checked passowrd, sever name, port etc, twice. Unfortunatelly this plugin doesn't work. No users were place in 'Bounces' group though mailure failure emails are in the inbox...
My version is v3.7.2