GreXXL Wouldn’t it be beneficial to keep them small in scope to make them more easily maintainable?

In general It is easier to integrate multiple functionalities with each other if they're in single repository and not scattered across multiple extensions with different versions.

All I can say after last night I am ready for better and easier spam management. TO many clicks to mark them as spammer delete their posts then delete the posts again so they are no longer visible to me :-)

    MikeJones Yeah, exactly. Previously I had like 1-2 spam discussions a week. This morning I woke up with around 7-8 and while I was going through them and the corresponding user -> ban IP, mark as spammer; delete discussion forever, delete user permanently... I got new spam appearing in the meanwhile. So, a one-click solution would be best, even if it's a bit confusing, I agree with @GreXXL that it might not be very intuitive and logical to eradicate spammers through discussions context menus but whatever makes it easier and a one-clicker, I would take it.

    Lately my forum is also focused by spammers, at this moment is hard stop them with actual extensions.

    Seems that reCaptcha v2 doesn't stop them.

    Will any registration measure such as a human-check challenge stop them? Like “how much is two plus three?”, etc? I’ve seen those on some forums but don’t know if they are any effective. I imagine this like a very simple extension with 10-20 admin provided questions and answers. Mine is a music forum, so e.g. “how many sharps are in the E major scale?”, so the hackers can’t easily reuse a global table but will have to adapt to custom forums around the world, which will at least stop script bots for some time until the admin updates the questions.

      CyberGene Yep, that extension is very effective. I had it on my old MyBB forum and the spam was mostly 0.

      In my experience telegram have the most powerful automatic tools to prevent spammers. It will be great implementing such automatic feature based on other users spam report .

      If certain number of users report a user as a spammer ==> automatically delete all his discussion/comments or disable that and move for manual check

      Please note that this topic is specifically about improving Spamblock as has an active bounty going on. Comments on FoF Spamblock and how to better modify the functionality are very welcome. If you want to talk about spam in general, or different extensions handling the spam problem I suggest to open a new discussion. By the way we have featured different options to tackle the problem in a prior community update. You are also welcome to discuss options there.

      4 months later
      7 months later
      5 days later

      An all new FoF extension is now ready for testing & your feedback.

      Introducing FriendsOfFlarum/anti-spam 🚀

      This, once finished in it's beta period, will replace the existing extensions fof/spamblock and fof/stopforumspam, as it contains merged and improved code from both extensions. The features required for this proposal/bounty are also integrated into this new extension:

      Screenshots

      admin

      forum

      Development is continuing at pace on this extension, and is available now as a beta:

      composer require fof/anti-spam:@beta

      Ultimately, the goal is to introduce additional utilities to this extension to better fight the war on spam.

      Please, give the extension a try, and let me know your feedback 🙏

        IanM Can I install this along the StopForumSpam and Anti Spam until it's beta? Or will they clash?

        P.S. OK, I installed it and it automatically removed the two extensions, so the question is answered. I just zapped a spammer, however there's a small bug: the forum statistics widget got broken and I can only see a spinning circle instead of the widget. I believe it might be due to the widget having the deleted user in its cache and probably making a request into the DB for its alias or something and failing to retrieve it. After a while the widget got fixed, so I believe it's the cache indeed. I guess you should implement some guards inside the widget code to check for actual existence of the cached user.

        P.P.S. Is it easy to add a shortcut to "[mark as] Spammer" action directly into a flagged post that has been detected by the Spam Prevention extension? I mean, when you open a flagged post and there are buttons to approve/delete, can there also be a button "Spammer" that will directly zap the user of that post and then refresh the page, so that we don't see the post/discussion/user if on screen.

        • IanM replied to this.

          CyberGene P.S. OK, I installed it and it automatically removed the two extensions, so the question is answered. I just zapped a spammer, however there's a small bug: the forum statistics widget got broken and I can only see a spinning circle instead of the widget. I believe it might be due to the widget having the deleted user in its cache and probably making a request into the DB for its alias or something and failing to retrieve it. After a while the widget got fixed, so I believe it's the cache indeed. I guess you should implement some guards inside the widget code to check for actual existence of the cached user.

          Yes, it seems this is the case. I'll create a fix and patch the widget today 🙂

          CyberGene P.P.S. Is it easy to add a shortcut to "[mark as] Spammer" action directly into a flagged post that has been detected by the Spam Prevention extension? I mean, when you open a flagged post and there are buttons to approve/delete, can there also be a button "Spammer" that will directly zap the user of that post and then refresh the page, so that we don't see the post/discussion/user if on screen.

          Yes, it would not be too difficult to add this. I'd prefer not to add it just yet however. Once the extension is stable and out of this beta cycle, I do imagine integrating with blomstra spam prevention, so this could be handled at that point without issue 👍

            IanM Yes, it would not be too difficult to add this. I'd prefer not to add it just yet however. Once the extension is stable and out of this beta cycle, I do imagine integrating with blomstra spam prevention, so this could be handled at that point without issue 👍

            I also thought about this. The main issue I do see is that currently posts get flagged (not users). So adding an option that acts on the user account is in my opinion a mismatch because it's post-specific actions only. The ideal behaviour would be an integration with blomstra/spam-prevention that flags a user account (https://discuss.flarum.org/d/31895-introducing-user-flags) and then you can act on the reported profile with a quick action.

              GreXXL The main issue I do see is that currently posts get flagged (not users). So adding an option that acts on the user account is in my opinion a mismatch because it's post-specific actions only. The ideal behaviour would be an integration with blomstra/spam-prevention that flags a user account

              I basically agree with that, however from my experience I always have two scenarios happening with the spam-prevention:

              1. A spammer just registered and created a discussion with some spam links (I don't know why I am invaded by some "keto-gummies" spammers...) and the discussion gets flagged.
              2. A genuine user just registered and posted a link to some external website and that post gets flagged.

              In both cases I open the flagged post/discussion and it's immediately clear when it's spam or not. So I ether approve the discussion/post (when genuine user), or I have to open the profile of the spammer from the flagged post and click on the "Spammer" button. It's only one additional click, so not a big drama. But it would nevertheless be easier to have a button that can be named "Mark post's author as spammer", so that there's no confusion with the fact we're reviewing a flagged post/discussion and not a user.

              P.S. Ohh, and BTW @IanM , maybe it's a good idea to navigate to (and refresh?) the main discussion list after a hard-deletion of user/post/discussion since currently we are invoking the "mark as spammer" command from within the user's profile which will eventually be deleted. Also, I remember when I clicked on the top-left arrow button to go back to the discussion list I had the red error label about missing content for some reason (maybe the deleted discussion/post was still cached but the API couldn't load it, I'm not familiar with how Flarum works), so just in case it would be better to just hard-refresh everything to make sure the hard-deleted stuff is not on screen anymore.

              • IanM replied to this.

                IanM Thanks for this development, I'm already using it actively 👏🏻

                CyberGene P.S. Ohh, and BTW @IanM , maybe it's a good idea to navigate to (and refresh?) the main discussion list after a hard-deletion of user/post/discussion since currently we are invoking the "mark as spammer" command from within the user's profile which will eventually be deleted. Also, I remember when I clicked on the top-left arrow button to go back to the discussion list I had the red error label about missing content for some reason (maybe the deleted discussion/post was still cached but the API couldn't load it, I'm not familiar with how Flarum works), so just in case it would be better to just hard-refresh everything to make sure the hard-deleted stuff is not on screen anymore.

                Agreed. This is implemented in 0.1.0-beta.3 🙂

                Also in beta3, is a toggle to allow admins to disable the lookup of new registrations on SFS, should they wish to do so.

                @GreXXL I'd like to propose that beta.3 now meets the requirements for this proposal? What do you think?