Wikipedia:Bots/Requests for approval/ExpireBot
From Wikipedia, the free encyclopedia
- The following discussion is an archived debate. Please do not modify it. Subsequent comments should be made in a new section. The result of the discussion was Request Expired.
[edit] ExpireBot
tasks • contribs • count • sul • logs • page moves • block user • block log • flag log • flag bot
Automatic or Manually Assisted: Automatic
Programming Language(s): PHP
Function Summary: Monitor pages with {{Expire}}, removes expired text when expire date arrives.
Edit period(s) (e.g. Continuous, daily, one time run): Continuous.
Edit rate requested: probably around 2 per minute (i.e., expiration times could overlap). If we implement the tagging log (see below) it might be an extra update every few minutes. It'd all depend on how widely-used the bot is, but I'll probably code in 5/min worst case.
Already has a bot flag (Y/N): N
Function Details:
It occurred to me that it'd be pretty cool to be able to add a template, e.g., a {{Warning}} to a page but have it automatically be removed after a certain period of time. Initially I thought I'd have to modify every template to support it, but turns out editors could just wrap whatever is needed in {{Expire}}, which I created for this bot. By doing so, an editor can cause the bot to automatically remove a block of text at a valid strtotime() timestamp. {{pp-semi-protected}} (et al) comes to mind as a good candidate, but also things like {{Censor}} for Talk:Main Page when something like a controversial image is featured.
I figure that there are more applications than I'm currently imagining, so I figure I might as well write the thing and let people do with it what they want.
My main concern is that it could be used for abuse. Someone could maliciously add the template to a certain page and *bam* a huge block of text gets removed a few days/hours/weeks later. So, I'm thinking that for a possible solution for the time being is that it might be better to restrict its use to longstanding users or only sysops. That way, the bot will check api.php for new embeddedin data, and if it finds it, it will check the recent history for when it was added and by whom, which is particularly even easier now that api.php supports diffs.
Alternatively/additionally, I could just set a minimum expiration time in the bot (say, 6 hours) and have it add/update data in a log, so that bad {{expire}} additions are easily trackable and undoable by admins/whomever else. If someone tries to alter the bounds/content of tag who isn't authorized, it can flag it and refuse to remove the text even after the expiration has passed.
The main thing that's currently off the table is simply adding a "|expiredate=" onto existing templates, since mediawiki has no way of communicating template parameters in the embeddedin prop for api.php, so the bot wouldn't know what to do. So, unless there are other ideas, it seems like {{Expire}} might be the best choice.
Comments? Thoughts? Suggestions?
Cheers =) --slakr\ talk / 10:08, 8 December 2007 (UTC)
[edit] Discussion
- One down-side, especially if this is really used a lot, is that the template requires the bot's actions to function properly. If your bot breaks down, or if you decide to leave wikipedia, or if any of a several other things happen, everybody's templates will stop expiring. Staecker (talk) 14:19, 9 December 2007 (UTC)
-
- I agree with the above, but from what I have seen, he doesn't seem likely to leave anytime soon. So, as such:
Approved for trial (10 edits). <DREAMAFTER> <TALK> 00:06, 10 December 2007 (UTC)
- I agree with the above, but from what I have seen, he doesn't seem likely to leave anytime soon. So, as such:
- I have put the template on my userpage, feel free to run this bot. Also, you might want to, on the template, instead of putting 1 parameter for the date, have 1 for year, 1 for month, 1 for day, 1 for time in 24 hour time. That way, it can eliminate confusion with the format of the date (e.g. 15 December 2007 vs. 2007 December 15 vs. December 15 2007, and the commas too). Soxred93 has a boring sig 15:52, 16 December 2007 (UTC)
- I have also put this template on my page. <DREAMAFTER> <TALK> 16:01, 16 December 2007 (UTC)
- Cool. Unfortunately I have to wait for a week before putting the final touches on it and testing it out, as from the 17th to the 25th I'll be on a cruise with my family, and I'm obviously not going to run something in development unattended. :P Since the internet at sea is ridiculously expensive and slow, chances are I won't be active until the 25th or 26th. Sorry for the delay :\ Cheers =) --slakr\ talk / 19:11, 16 December 2007 (UTC)
- It's cool, we'll wait for it, just top see how it performs, I am going to add it to many of my pages for the bot to use. <DREAMAFTER> <TALK> 19:17, 16 December 2007 (UTC)
- Cool. Unfortunately I have to wait for a week before putting the final touches on it and testing it out, as from the 17th to the 25th I'll be on a cruise with my family, and I'm obviously not going to run something in development unattended. :P Since the internet at sea is ridiculously expensive and slow, chances are I won't be active until the 25th or 26th. Sorry for the delay :\ Cheers =) --slakr\ talk / 19:11, 16 December 2007 (UTC)
Now that you are back, how are you going with this? -- maelgwn - talk 03:48, 1 January 2008 (UTC)
- I have contacted slakr. He is busy right now working on the script. Soxred93 has a boring sig 04:19, 1 January 2008 (UTC)
I've altered the template to use ParserFunctions to automatically hide the text when the time is reached, this way it'll be less of a problem if the bot runs intermittently or goes down for a day or so. also, note that DumbBOT already removes pp templates from unprotected pages. —Random832 00:42, 10 January 2008 (UTC)
- Maybe if it is past, it should add the page to the category Category:Pages with out of date text or the like. Soxred93 | tcdb 05:03, 13 January 2008 (UTC)
- The above discussion is preserved as an archive of the debate. Please do not modify it. Subsequent comments should be made in a new section.