User:HagermanBot



Tasks

 * 1) [[Image:Symbol keep vote.svg|20px]] Place the template on a talk page and requested pages when a user adds a comment and forgets to sign.
 * 2) [[Image:Symbol keep vote.svg|20px]] Place the template on the user's talk page when the user leaves three unsigned comments in a rolling 24-hour period.

Sandbox
If you'd like to test the behaviour of the bot, you may use the HagermanBot sandbox.

Problems
If the bot leaves an unsigned template on an edit you made when it shouldn't have done so, please notify Hagerman making sure to include the page. Feel free to remove the unsigned template, it won't put it back in the same spot twice.

Turning it On
The bot is enabled by default for all pages under the talk namespaces. If you want the bot to monitor a talk page, you don't need to do anything. However, if you want it to monitor a non-talk page, place the page in the appropriate category and the bot will begin marking unsigned comments. It may take up to 5 minutes for the bot to begin signing comments after the category is applied.
 *  Category:Non-talk pages automatically signed by HagermanBot ]]  This will mark any unsigned comments on the page the category was applied to.
 *  Category:Non-talk pages with subpages automatically signed by HagermanBot ]]  This will mark any unsigned comments on the subpages of the page the category was applied to. It will not mark comments on the parent unless it includes both categories.

Turning it Off
If you want to turn it off, this bot supports three functions for disabling the engine:
 * One-Time: If you think an edit you are making to a talk page might be interpreted as a comment when it shouldn't be, putting !NOSIGN! somewhere in your edit summary will cause the bot to ignore your edit.
 * Article Permanent: If you do not wish to have the bot monitor a specific talk page, putting somewhere on the page will cause the bot to stop watching the page until the flag is removed. Note that it must be placed directly on your talk page and not on a template that is transcluded.
 * User Permanent: If you do not wish to have the bot mark unsigned comments left by you, you may follow the instructions at opting out.

Delay
The bot intentionally acts as quickly as possible to sign an unsigned comment, with most getting signed after a few seconds. It does this to avoid giving an edit conflict to a user replying to your comment. If you accidentally leave an unsigned comment and the bot beats you to signing it, feel free to go back and remove the unsigned template and replace it with your signature.

Architecture

 * Interface: Windows Service
 * Programming Language: Visual C# .NET
 * Libraries Used: WikiFunctions.dll from the AWB project.

Conditions
In order for the bot to classify an edit as a new unsigned comment, the following conditions must be met:
 * The edit must fall under the Talk or User Talk namespace or an article with a special category.
 * The edit must only contain the addition of new lines and those lines must all be adjacent.
 * The edit must not already contain a signature in the added lines. A signature is determined by either the presence of a link to the User namespace, a link to the User talk namespace, or the string "(UTC)".
 * The edit must either create a new heading or exist as an indent under an existing heading.
 * The edit must not contain a template unless it is to the Wikipedia namespace or the template is.

Clones
The following Wikimedia projects, at some point, ran a clone of HagermanBot:


 * English Wikiversity