[CDB] [3.2][3.3] Userreminder

A place for Extension Authors to post and receive feedback on Extensions still in development. No Extensions within this forum should be used within a live environment!
Scam Warning
Forum rules
READ: phpBB.com Board-Wide Rules and Regulations

IMPORTANT: Extensions Development rules

IMPORTANT FOR NEEDED EVENTS!!!
If you need an event for your extension please read this for the steps to follow to request the event(s)
User avatar
Mike-on-Tour
Registered User
Posts: 560
Joined: Wed Jan 15, 2020 3:51 pm
Location: Germany
Name: Michael

[CDB] [3.2][3.3] Userreminder

Post by Mike-on-Tour »

Extension Name: Userreminder for phpBB
Author: Mike-on-Tour
Extension Description: This extension installs an ACP extension listing all users who have been active contributors to your forum but stopped posting a number of days ago which you can define ("Inactive users"). A second list shows you all users who have been activated but never visited your forum since ("sleepers"). A third list shows all users visiting on a regular basis but do not post anything ("Zeroposter").
Inactive users can be reminded by e-mail once (or twice, you can select this feature) after a certain number of days you can define. After ignoring all reminders they can be deleted. Reminding mails can be sent by hand or automatically as well as deleting users. Inactive users will be removed from the list as soon as they log into your forum again.
Sleepers and zeroposters are listed together with the number of inactive days (number of days since activation or last login) and can only be deleted by hand.
That there is a settings tab goes without saying.

Important !!!
  • Users are deleted by retaining their posts in order to prevent gaps in your forum threads!
  • Automatic sending of reminder mails or deletion of users is part of the login routine whenever a user logs into the board; at this moment the variables for the last reminding mails - if there were any - are reset to zero to flag this user as active. Another part of this routine is checking whether automatic mail sending and/or automatic deletion is activated, in this case the extension checks for users due to be reminded or deleted.

Requirements: phpBB >=3.2.0: PHP 5.4 + / phpBB 3.3.x: PHP 7.2 +
Extension Download: https://www.mike-on-tour.com/mot/mot_userreminder.php
Languages: en, de (formal and informal), es, fr, nl
Styles: ACP
github repository: https://github.com/Mike-on-Tour/userreminder

I've tested this extension with phpBB 3.2.0, 3.2.7, 3.2.8 and 3.2.9 under PHP 5.4 and 7.2 and with phpBB 3.3.0 and 3.3.1 under PHP 7.2, 7.3 and 7.4.7
I'm looking forward to your comments. :)
Last edited by Mike-on-Tour on Mon Mar 01, 2021 2:59 pm, edited 10 times in total.
Watz fo lunch?
If you like my extensions or my support please consider a donation: Image
User avatar
Mike-on-Tour
Registered User
Posts: 560
Joined: Wed Jan 15, 2020 3:51 pm
Location: Germany
Name: Michael

Re: [3.2][3.3][RC] User Reminder

Post by Mike-on-Tour »

I have set up a github repository and added the link to the start posting.
Watz fo lunch?
If you like my extensions or my support please consider a donation: Image
User avatar
eunaumtenhoid
Registered User
Posts: 1111
Joined: Wed Jun 03, 2009 12:46 am
Location: ????

Re: [3.2][3.3][RC] User Reminder

Post by eunaumtenhoid »

what is the difference of your extension to the existing one here >>viewtopic.php?f=456&t=2382581
My translations of the extensions for Brazilian Portuguese
https://github.com/phpBBTraducoes
User avatar
Mike-on-Tour
Registered User
Posts: 560
Joined: Wed Jan 15, 2020 3:51 pm
Location: Germany
Name: Michael

Re: [3.2][3.3][RC] User Reminder

Post by Mike-on-Tour »

The difference is that my extension shows you 3 tabs with different inactive users; the first one lists all users who have posted something and stopped a number of days ago (which you can define yourself) logging into your forum; the second tab shows all users who have registered but never visited again after activation and the third one lists all zeroposters (users who visit your forum but have not written a single post, and might have stopped visiting at all).
Hope I could answer your question.
Mike
Watz fo lunch?
If you like my extensions or my support please consider a donation: Image
KYPREO
Registered User
Posts: 392
Joined: Fri Feb 02, 2018 9:56 am

Re: [3.2][3.3][RC] User Reminder

Post by KYPREO »

Hi Mike

This looks great.

Is there scope to add a 4th category of users: users whose email contact details have gone stale?

I think it would be highly beneficial to have a mechanism by which dead email addresses can be added to a list which is then used to (a) prevent emails being sent (and thereby avoid damage to IP reputation, as sending to non existent emails is to used by blacklists as a spamming signal), (b) create a notification reminder for the user to update their email address.

My idea is explained in more detail here: viewtopic.php?f=496&t=2540906
phpBB user since 2002
www.AusRotary.com
User avatar
Dark❶
Registered User
Posts: 395
Joined: Mon Jan 15, 2018 1:22 pm
Location: D@rK V0id
Name: Dark❶ [dark1]

Re: [3.2][3.3][RC] User Reminder

Post by Dark❶ »

KYPREO wrote: Sat Feb 15, 2020 9:27 pm Hi Mike

This looks great.

Is there scope to add a 4th category of users: users whose email contact details have gone stale?

I think it would be highly beneficial to have a mechanism by which dead email addresses can be added to a list which is then used to (a) prevent emails being sent (and thereby avoid damage to IP reputation, as sending to non existent emails is to used by blacklists as a spamming signal), (b) create a notification reminder for the user to update their email address.

My idea is explained in more detail here: viewtopic.php?f=496&t=2540906
Question is :
How are you going to find which are Valid & Invalid/stale email ???
More Info needed...

Best regards :+1:
Dark❶ [dark1]
KYPREO
Registered User
Posts: 392
Joined: Fri Feb 02, 2018 9:56 am

Re: [3.2][3.3][RC] User Reminder

Post by KYPREO »

Dark❶ wrote: Sun Feb 16, 2020 7:03 am Question is :
How are you going to find which are Valid & Invalid/stale email ???
More Info needed...

Best regards :+1:
Monitoring your email inbox for bounce-backs ;) Within phpBB, it would be up to admin to manually mark emails as stale/invalid within a module/option residing in the ACP.
phpBB user since 2002
www.AusRotary.com
User avatar
Mike-on-Tour
Registered User
Posts: 560
Joined: Wed Jan 15, 2020 3:51 pm
Location: Germany
Name: Michael

Re: [3.2][3.3][RC] User Reminder

Post by Mike-on-Tour »

KYPREO wrote: Sat Feb 15, 2020 9:27 pm Hi Mike

This looks great.

Is there scope to add a 4th category of users: users whose email contact details have gone stale?

I think it would be highly beneficial to have a mechanism by which dead email addresses can be added to a list which is then used to (a) prevent emails being sent (and thereby avoid damage to IP reputation, as sending to non existent emails is to used by blacklists as a spamming signal), (b) create a notification reminder for the user to update their email address.

My idea is explained in more detail here: viewtopic.php?f=496&t=2540906
Thanks or your positive feedback. After reading your detailed explanation I must say that in my experience so far there has been no need for such an extension; and frankly, I don't see a similarity to my extension as your idea needs a different approach. It is a very interesting idea which I tried to solve a few years ago with a script to validate email addresses which wasn't really successful since email providers apparently use different methodes to bounce emails to nonexisting accounts. And if you are going to do it manually anyway why just don't send a PM to that user?
And users who are offline for longer periods you can identify with my extension.
Watz fo lunch?
If you like my extensions or my support please consider a donation: Image
User avatar
Dark❶
Registered User
Posts: 395
Joined: Mon Jan 15, 2018 1:22 pm
Location: D@rK V0id
Name: Dark❶ [dark1]

Re: [3.2][3.3][RC] User Reminder

Post by Dark❶ »

KYPREO wrote: Sun Feb 16, 2020 7:33 am
Dark❶ wrote: Sun Feb 16, 2020 7:03 am Question is :
How are you going to find which are Valid & Invalid/stale email ???
More Info needed...

Best regards :+1:
Monitoring your email inbox for bounce-backs ;) Within phpBB, it would be up to admin to manually mark emails as stale/invalid within a module/option residing in the ACP.
Not Possible...
as rightlly said by Mike-on-Tour here :
Mike-on-Tour wrote: Sun Feb 16, 2020 8:19 am ... email providers apparently use different methodes to bounce emails to nonexisting accounts ...
Even I am looking for a solution for a long time for this...
Apparently we need more Hooks in PHP core to stop specific Email Notification.
But checking for Invalid/stale email is impossible in PHP or it would be too much resource consuming...

Best regards :+1:
Dark❶ [dark1]
Dezdan
Registered User
Posts: 197
Joined: Thu Apr 17, 2003 8:18 pm

Re: [3.2][3.3][RC] User Reminder

Post by Dezdan »

Seeing some issues on a fresh install of v0.4.0 on phpBB 3.3.0 running php 7.2.27.:

Remind Users Tab
1. It is showing everyone of my users, including my own last visit as: 01.01.1970
2. The button at the very bottom is not in my boards default lang of en (appears to be de).

Sleepers Tab
1. It is showing everyone of my users, including me, as a sleeper.

Zeroposters Tab
1. The list is blank. My site has ~1100 Zeroposters.

Also, in a future update, can you pull date format from the boards setting?
KYPREO
Registered User
Posts: 392
Joined: Fri Feb 02, 2018 9:56 am

Re: [3.2][3.3][RC] User Reminder

Post by KYPREO »

Mike-on-Tour wrote: Sun Feb 16, 2020 8:19 amThanks or your positive feedback. After reading your detailed explanation I must say that in my experience so far there has been no need for such an extension; and frankly, I don't see a similarity to my extension as your idea needs a different approach. It is a very interesting idea which I tried to solve a few years ago with a script to validate email addresses which wasn't really successful since email providers apparently use different methodes to bounce emails to nonexisting accounts. And if you are going to do it manually anyway why just don't send a PM to that user?
And users who are offline for longer periods you can identify with my extension.
HI. Thanks for taking the time to consider and respond.

I only thought this might tie in to your extension since by notifying inactive users, you would inevitably end up sending emails to users whose email addresses are invalid or bounce-back. I thought marking user contact details as invalid/stale would sit nicely alongside other user management functions. My suggested feature would augment management of inactive users because if reminders bounced back you would know there is little point trying to continue to remind the user - they simply won't know unless they log in again.

You are correct that different mail servers have different methods for notifying of invalid addresses. There are also bouncebacks produced by one's own mailserver for non-existent hosts. You could easily test for the latter but not for invalid addresses on a functioning mail host.

Yes, logging bouncebacks is a manual process but as explained in the other topic, PMing users is rarely effective and, more importantly, it does not stop them from receiving email notifications if they do not respond. There is no way of doing stopping this within the standard functionality of phpBB but you could either (a) modify individual user notification preferences within the database at the backend; (b) through an extension, suspend the email messenger function being invoked (assuming there is a PHP event available for doing this - see below).

Perhaps other people don't have this problem but it would depend on how long your board has been around and how many users there are. It's a massive problem for me and imagine for anyone with a board that has been around for 10+ years.
Dark❶ wrote: Sun Feb 16, 2020 4:01 pm Apparently we need more Hooks in PHP core to stop specific Email Notification.
what about https://wiki.phpbb.com/Event_List#core. ... sage_email and https://wiki.phpbb.com/Event_List#core. ... ge_process (available from phpBB 3.2.4+)?
phpBB user since 2002
www.AusRotary.com
User avatar
Dark❶
Registered User
Posts: 395
Joined: Mon Jan 15, 2018 1:22 pm
Location: D@rK V0id
Name: Dark❶ [dark1]

Re: [3.2][3.3][RC] User Reminder

Post by Dark❶ »

KYPREO wrote: Sun Feb 16, 2020 10:28 pm ...
Yes, logging bouncebacks is a manual process but as explained in the other topic, PMing users is rarely effective and, more importantly, it does not stop them from receiving email notifications if they do not respond. There is no way of doing stopping this within the standard functionality of phpBB but you could either (a) modify individual user notification preferences within the database at the backend; (b) through an extension, suspend the email messenger function being invoked (assuming there is a PHP event available for doing this - see below).
...
As I said earlier we need more phpBB events...
KYPREO wrote: Sun Feb 16, 2020 10:28 pm
Dark❶ wrote: Sun Feb 16, 2020 4:01 pm Apparently we need more Hooks in PHP core to stop specific Email Notification.
what about https://wiki.phpbb.com/Event_List#core. ... sage_email and https://wiki.phpbb.com/Event_List#core. ... ge_process (available from phpBB 3.2.4+)?
This phpBB events can be used to stop all emails...
Including but not limited to , registration , password recovery , notification , ...etc...

For this reason , I had made topic in this very forum for help...
Here : viewtopic.php?f=461&t=2516076

BTW this is not the place to talk about Notification PHP events... This is for ext dev topic...
So I won't reply here anymore related to your issue...

Best regards 👍
Dark❶ [dark1]
User avatar
Mike-on-Tour
Registered User
Posts: 560
Joined: Wed Jan 15, 2020 3:51 pm
Location: Germany
Name: Michael

Re: [3.2][3.3][RC] User Reminder

Post by Mike-on-Tour »

Dezdan wrote: Sun Feb 16, 2020 8:14 pm Seeing some issues on a fresh install of v0.4.0 on phpBB 3.3.0 running php 7.2.27.:

Remind Users Tab
1. It is showing everyone of my users, including my own last visit as: 01.01.1970
2. The button at the very bottom is not in my boards default lang of en (appears to be de).

Sleepers Tab
1. It is showing everyone of my users, including me, as a sleeper.

Zeroposters Tab
1. The list is blank. My site has ~1100 Zeroposters.

Also, in a future update, can you pull date format from the boards setting?
Thanks for your feedback. I guess that you installed the extension and right after installing went to the extension tab? There is a routine to fill the additional columns in the users table at the next login of a user, so when you checked there was the default setting for the last login (0, which means Jan 1, 1970). After logging out and in again everything should work as intended. But I take this into account and will check whether this "Setup" routine could be run from the ACP as well.

Pulling the date format from the board settings looks like a feasible thing which I will implement, thanks for the hint.

And you are right, there is one translation missing (first copy & paste - and after that forgotten :oops: ), instead of "Markierte erinnern" it should read "Remind marked users" or something similar. I will correct it, meanwhile you may edit the en language file, line 56 - if you like. There is an additional error in line 48, it must read "... 1 user" instead of "... 1 users".
Watz fo lunch?
If you like my extensions or my support please consider a donation: Image
Dezdan
Registered User
Posts: 197
Joined: Thu Apr 17, 2003 8:18 pm

Re: [3.2][3.3][RC] User Reminder

Post by Dezdan »

Mike-on-Tour wrote: Mon Feb 17, 2020 7:53 am I guess that you installed the extension and right after installing went to the extension tab? There is a routine to fill the additional columns in the users table at the next login of a user, so when you checked there was the default setting for the last login (0, which means Jan 1, 1970). After logging out and in again everything should work as intended. But I take this into account and will check whether this "Setup" routine could be run from the ACP as well.
That is an odd way to processes something, but once I logged out and logged back in everything did populate correctly.
Mike-on-Tour wrote: Mon Feb 17, 2020 7:53 amAnd you are right, there is one translation missing (first copy & paste - and after that forgotten :oops: ), instead of "Markierte erinnern" it should read "Remind marked users" or something similar. I will correct it, meanwhile you may edit the en language file, line 56 - if you like. There is an additional error in line 48, it must read "... 1 user" instead of "... 1 users".
Fixed, thanks for the heads up on line locations.

I did receive an error when I edited the email, Information An error occurred while saving the file "./../ext/mot/userreminder/language/en/email/reminder_one.txt"! I would venture to guess that the files need to be chmod 777 or such.

As far as workflow, my personal suggestion would be to flip 'Number of days between last reminder and deletion of a user' and 'Delete users automatically?' in the user interface, as the number of days won't be implemented unless the deletion of users is selected - cart before the horse situation.

Also, not mentioned, with the deletion of users, will that users post also be deleted? That is a big deal! I want to delete users, but I do not want their post deleted, as that would cause big gaps of information on the forum.

Great work, keep it up!
User avatar
Mike-on-Tour
Registered User
Posts: 560
Joined: Wed Jan 15, 2020 3:51 pm
Location: Germany
Name: Michael

Re: [3.2][3.3][RC] User Reminder

Post by Mike-on-Tour »

Dezdan wrote: Mon Feb 17, 2020 4:14 pm That is an odd way to processes something, but once I logged out and logged back in everything did populate correctly.
You are right, I am looking now into the possibility to do it with a custom function within a migration file. To be honest that solution never occured to me until I saw a hint in the German phpbb forum. Hopefully I will find a working solution.
Dezdan wrote: Mon Feb 17, 2020 4:14 pm I did receive an error when I edited the email, Information An error occurred while saving the file "./../ext/mot/userreminder/language/en/email/reminder_one.txt"! I would venture to guess that the files need to be chmod 777 or such.
I just checked with my test installation, all files are chmod 644 and I've never received an error message; I'll have to give this one some thought.
Dezdan wrote: Mon Feb 17, 2020 4:14 pm Also, not mentioned, with the deletion of users, will that users post also be deleted? That is a big deal! I want to delete users, but I do not want their post deleted, as that would cause big gaps of information on the forum.
Don't worry, the posts are not deleted since I came to an identical conclusion.
Dezdan wrote: Mon Feb 17, 2020 4:14 pm As far as workflow, my personal suggestion would be to flip 'Number of days between last reminder and deletion of a user' and 'Delete users automatically?' in the user interface, as the number of days won't be implemented unless the deletion of users is selected - cart before the horse situation.
Frankly, this one I don't understand. This is part of the settings tab and the 'Number of days between last reminder and deletion of a user' setting determines after what number of days you are shown the markup to delete users in the reminder tab.
Same with the 'Delete users automatically?' setting, it enables the automatic deletion of users like the automated sending of reminder mails. And what user interface do you refer to?
Dezdan wrote: Mon Feb 17, 2020 4:14 pm Great work, keep it up!
Thank you very much, I appreciate that :D
Watz fo lunch?
If you like my extensions or my support please consider a donation: Image

Return to “Extensions in Development”