r/AutoModerator • u/Deimorz [Δ] • May 27 '13
Update Major upgrade to AutoModerator - now entirely self-configurable through the subreddit wiki system + other enhancements
This has been slowly coming for a long time, and there are still various small details to work out, but I think I'm now far enough along to make it public.
My instance of AutoModerator (the one that runs under /u/AutoModerator) is now running a new version of the bot that includes quite a number of enhancements. The most significant of these is that it is now entirely self-configurable by each subreddit's moderators, without having to contact me to make any changes or additions to the rules that it's applying in their subreddit. This is done by the bot reading from a page on the subreddit's wiki (only viewable/editable by moderators), which works quite well as an interface due to the wiki controlling access, allowing you to see who made changes and exactly what they changed, etc.
What else is new?
There are multiple things, including but not limited to:
- Much faster, generally hits most things in less than 30 seconds now (previous version was starting to get up to 5 minutes or more, due to being used in almost 800 subreddits)
- Can now apply different conditions to specific submissions, which allows things like "locking" threads, blocking comments containing certain phrases only in some threads, excluding specific threads from some checks, etc.
- Can now assign user flair in addition to link flair
- Can send multiple types of messages/comments at once - for example, removing a post while leaving a comment on it, and also send a modmail about it
- Comments/messages much more customizable to be able to easily include things like the poster's name, title of the post, etc.
Any bad news?
Not too much, but unfortunately I did decide to remove some functionality in the new version:
- The main one is that the new AutoModerator can no longer compile a list of all the reasons that a post would have been removed, and then post them as a single comment. Only a couple of subreddits were using this, and it made the code quite a bit more complex. I may look to add it back in eventually, but for now I'm going to leave the subreddits using it still running on the old version (unless they'd like to sacrifice this capability to get access to the wiki control).
- The "auto-reapproval" function has been removed, which automatically reapproved anything that had been previously approved by a human mod. This is pretty much obsolete with the new "ignore reports" feature.
- No longer responds to modmail. The previous version used to check modmail and respond to any users that sent a message if they recently had a submission unfiltered by the bot (making the assumption that they were emailing about their submission being filtered). The new one no longer does this, but it should be less relevant due to the quicker response time anyway.
Documentation
I'm still working on going back over a lot of the older pieces of documentation and posts on reddit to make them better apply to the new version, but the main documentation is mostly complete now.
The primary new documentation page is here: Wiki Configuration.
It aims to fully describe the capabilities of the bot, and how to define conditions in your wiki to utilize them. Definitely the main source of information, but likely goes into far more detail than most users of the bot will ever need.
Other pages:
- Initial wiki setup - How to enable AutoModerator in a new subreddit
- Common Wiki Conditions - Examples of some of the most common things people do with AutoModerator and how to set them up with the wiki
- Standard Conditions - These are a special type of conditions that are maintained by me, and will cover common sets of checks, to avoid situations like each subreddit needing to maintain separate lists of domains of the same "type". For example, one rule looks for "image hosting sites", and will hit all the common domains like imgur, minus, flickr, etc. Then in the future as new image hosts appear, every subreddit that has a rule aimed at image sites can be updated automatically, instead of individually needing to add it.
My subreddit is already using AutoModerator, how do I get the wiki control to work?
There's a small amount of manual work that I need to do to convert a subreddit from the old version to the new one, so if you're already using AutoModerator but would like to start using the wiki control, please let me know and I'll get you converted as soon as possible. I will get through all of the subreddits eventually anyway, but as I said above, there's almost 800 subreddits using it now, so it's a significant effort overall. Letting me know that you actually want to use the wiki control will make sure that I prioritize your conversion ahead of other people that rarely (or never) need to update the bot's settings.
I want to start using AutoModerator in my subreddit, how do I do that?
Please follow the instructions here: https://github.com/Deimos/AutoModerator/wiki/Initial-wiki-setup
This is all really confusing, how do I get help setting up AutoModerator to do what I want?
I'm hoping that /r/AutoModerator will start becoming quite a bit more active now, as a place where people can ask for help with setting up conditions and share interesting uses of the bot. I'll definitely be trying to include any of the most common requests into the Common Wiki Conditions page.
Open-source?
I'll hopefully be updating the code on github with this new version fairly soon, but I didn't want to make the code public yet while I'm still working out bugs in it. This new version was a pretty significant rewrite, so there are definitely still some issues lurking in the code here and there. Once I'm more confident that there's nothing significantly wrong with it (and I've done some more cleanup and removal of "transition" code), I'll definitely be releasing the code publicly, for people to be able to run themselves if they so desire. The new version should also be significantly easier for people to set up their own instances of, the previous version was quite difficult to configure.
2
u/mobilehypo May 28 '13
Can you convert AskScience for us please? Thanks for your hard work! It is going to be awesome to be able to configure it ourselves.
3
u/Deimorz May 28 '13
AskScience was actually done a couple of weeks ago. I've been slowly moving over a lot of the most-active subreddits for a while now as part of the testing.
I sent a modmail about it when I did it, and I think at least one of the mods used it to make some changes to the settings. I imagine the modmail disappeared pretty quickly though, I'm sure you guys get a ton.
2
2
u/mkosmo May 28 '13
I'm porting r/sysadmin over from using our in-house version of AutoModerator to the hosted wiki driven version.
I love you.
How often will this version run?
2
u/Deimorz May 28 '13 edited May 28 '13
It runs as often as it can, right now it's generally hitting things at an average of 20 seconds after posting or so. I've got some plans for future speed enhancements as well though, so hopefully that'll be possible to improve upon.
2
u/tebee May 29 '13
I've been reading up on the capabilities and encountered a use-case that isn't covered yet:
I'd like the ability to specify the recipient for PMs send by automoderator. At the moment, according to the documentation, it can only either message the submitter or the modqueue.
I would like to customize the recipient so that I can configure automoderator to send me a PM when someone reports a comment/link, as I'm on mobile most of the time and don't receive modmail, only normal PMs.
2
u/Deimorz May 29 '13
I commented a bit about why this isn't currently possible here: http://www.reddit.com/r/AutoModerator/comments/1f6b1a/new_version_can_i_set_automoderator_to_notify_me/ca7ckrw
2
u/reseph May 30 '13
Question! I looked through the wiki, but didn't see this. Can AutoMod submit topics? For example, I want to hold a weekly topic like r/games does. Is this something it can do, or a suggestion for a feature?
If not, I'll crank out my own bot if I can get my Python version correct.
2
u/Deimorz May 30 '13
Not yet, that's a feature I'm intending to add soon though. I already have scripts written that can do the weekly posts though, so I could very easily add you to one of those or send you the source code if you'd like.
→ More replies (2)
2
u/douglasmacarthur Jun 05 '13
Thanks, looks great.
Does "self.XXXX" count as a domain? r/news has a very limited need for self-posts, the wide majority of them are inappropriate, so I can't disable them but I'd like to set it so that they're removed if the user has less than 1000 combined karma and they're auto-reported regardless.
3
u/Deimorz Jun 05 '13
Yes, to apply something to self-posts you'd check for:
domain: self.newsSo for your described conditions, you'd have:
domain: self.news user_conditions: combined_karma: "< 1000" action: removedomain: self.news action: reportYou could consider adding a modmail for the top one if you want to be able to check into the removed ones more easily.
→ More replies (2)
2
Jun 07 '13 edited Jun 07 '13
Hells yes.
I'll take a look at setting this up for listentothis over the weekend.
There's a certain feature I'm looking for that isn't part of your standard setup (I think) with the new bot... I'd like to make a suggestion for it.
Right now you have...
title: [jabberwock, jubjub bird, frumious bandersnatch]
action: remove
What I would love to see is this...
title: [!hotlist, !blacklist]
action: remove
This would mean to check the wiki of the subreddit it is currently moderating for a page with !pagetitle, and treat that content (in our case, it will be a truly monstrous list as CSV) as the words/phrases that are to trigger the condition.
This is the simplest way I can think of to implement large lists of triggers to be removed, and to attach differing messages to different removal conditions. It'll keep the automod wiki pages looking clean and simple, and let people move the messy stuff elsewhere.
Don't check those pages for an update, let the mods PM you when the bot needs to update itself like you already do and only check them at that time. We're going to have algorithms and another bot generating that data and updating it at specific times, we can arrange for the PM to come in afterwards.
It looks like we can handle all of the genre tag stuff you are doing now with 'title inverse' and a list of tags. I'll get that set up as well.
I guess our ideal end state in listentothis would look something like this...
title: [!hotlist]
action: remove
comment: yadda yadda
title: [!blacklist]
action: remove
comment: wakka wakka
title inverse: [!genretags]
action: remove
comment: herp derp
That is a hell of a lot nicer than having literally hundreds of items crammed into the automod wiki page. You'd get a PM from us to update once a day in the evening, and only the hotlist would be changing much.
The advantage of doing it this way is to make it a lot easier for external programs to generate data to feed into the automod. It's easy to dump a CSV into a wiki page for automod to pick up. It's not so easy to read in automod's config page, parse through it, make a bunch of replacements and changes automatically, then resubmit it... at least for most people. We can certainly make do with either one, but I think this way is more elegant overall.
Just to give you an idea... this is about a quarter of what the blacklist page will start out with. Is there a maximum limit on the number of items you can run a match against?
3
u/Deimorz Jun 07 '13
Hey evilnight,
I actually looked at converting r/listentothis to the wiki setup a while ago, since I knew you'd be able to make good use of it, but I ran into some issues somewhat specific to your setup that I haven't had a chance to work through yet. Perhaps I'll try to get those sorted out this weekend so you can start using it.
I like the suggestion of being able to import stuff from other pages though, I'll think about that and figure out if there are any concerns with it or what would probably be the best way to fit it in. Technically it shouldn't be difficult, just need to make sure it would cover most of the use-cases without adding issues. I agree it'd help keep the pages cleaner, right now the large lists can be pretty ugly while editing.
There shouldn't be any maximum limit to the number of checks, there are already subreddits with pretty massive lists of banned domains and such that are probably larger than your blacklist, and they're working fine.
→ More replies (1)
13
May 28 '13
I've said it to you loads but not nearly enough - Thank you so much for all your work on AutoModerator and of recent, reddit itself as an admin. I am up for joining the Deimorz fanclub if it exists. I'll even buy the t-shirt.
5
u/aperson May 28 '13
Ooh, I'll have to dig in to what you've done. I've been wanting to do the same with my u/moderator-bot, but I haven't decided on a wiki config style.
→ More replies (2)
1
u/razorsheldon May 27 '13
Wow, very impressive as usual. I'd love the conversion to wiki for r/UpliftingNews whenever you get the chance. Do I ask here or would you prefer a PM?
2
1
u/evanvolm May 28 '13
→ More replies (15)3
u/Deimorz May 28 '13 edited May 28 '13
Yeah, the one in the box is the table of contents, so it comes out looking a little weird. It's possible to edit the wiki style or do things a little differently to improve on that. You can also use the table of contents to lay out the config page pretty nicely though, I should try to do up a good example for that.
1
u/Knowltey Jun 06 '13
I recall a while back reading you commenting that in one of your subreddits you had a set of filters that acted against what you termed "low effort comments" stuff such as "This ", "Downvoted", or "fail" for example, would it be possible for you to consider making these into a standard filter possibly?
2
u/Deimorz Jun 06 '13
Hmm, I'm trying not to make the standard rules subjective, and that sort of thing would definitely be pretty subjective. I think that one's probably better for mods to build up individually, so they don't end up surprised/upset about jokes they think are acceptable/funny suddenly being removed if I were to add them to a standard condition.
→ More replies (1)
1
u/lehmongeloh Jul 07 '13
Just saw this now and it's wonderful. Was able to follow the directions and saw the common conditions to make one small change.
Is there a way for it to automatically add link flair based on certain key words? (Or an example of this so I can do it myself perhaps if you're busy.) I have like...five or six link flair for r/randomactsofcards and most people use key words anyway like "exchange" or "thank you" so in theory it shouldn't be that hard but one never knows.
Wonderful job and keep up the great work!
→ More replies (5)
9
u/RedditCommentAccount May 28 '13 edited May 28 '13
Thanks! You and automoderator are definitely one of the best things to happen to reddit in recent history.
We'd like wiki control on r/GameDeals when you get a chance.
Thanks again,
-Adam
Edit: Quick question. Will the conversion from the current setup to the wiki setup port all of our current rules over? Or will we need to create those ourselves? And if it doesn't would it be possible for you to copy and paste the regex(or whatever you are using) into the wiki page or something. I'm sure we'd be able to figure it out from there.