isso-comments / isso

a Disqus alternative
https://isso-comments.de
MIT License
5k stars 439 forks source link

Ability to block specific commenters #941

Open fluffy-critter opened 1 year ago

fluffy-critter commented 1 year ago

Checklist

What is not working?

I have a couple of extremely persistent spammers who have not yet realized that I moderate all my comments. It would be nice if I could make comments from specific email addresses or matching specific URL patterns just go into a black hole so that I don't have to see them ever again.

How can one reproduce this issue?

  1. Have good enough SEO
ix5 commented 1 year ago

That certainly is an annoying issue to deal with.

At the heart of the issue (IMO) is the fact that for Isso, commenters are mostly ephemeral. As of right now, Isso doesn't have much in the way of user management - https://github.com/posativ/isso/pull/261 has been open for quite some time without a resolution.

Hardcoding blocked or allowed users into the config seems kind of iffy to me as well.

@fluffy-critter do you have any ideas which would be elegant but still fit within the project's current paradigms?

fluffy-critter commented 1 year ago

I feel like a good solution in general would be to have a plugin architecture of some sort where all incoming comments can call into a function which takes all of the message data and returns a disposition, such as "delete," "post," or "hold for moderation," which could then also be a good spot to hook in a spam filter. I seem to have mentioned the nucleus of idea on #11 (without going into any actual details of what I had in mind, oops) and I still feel like it's a fundamentally good idea, and maybe now that I have some free time I can bring myself to actually work on it.

ix5 commented 1 year ago

That sounds lovely!

Make sure to include the other maintainers and regular contributors into your thought process - I'm already onboard with your plugin idea, and we do have a signals architecture in place that might prove useful for it.

jelmer commented 5 months ago

An alternative to a plugin system might be to have say a good Python package that uses the API to automatically moderate? That might be simpler to set up and easier to extend in the future. It also allows isso itself to stay fairly lean.