Botserv Frequently asked questions may answer your question
Help Video: BotServ Tutorial
BotServ is one of the parts that come with the Anope services package. BotServ's capabilities focus mainly on dealing with channel management and control. In the original, unmodified services package, BotServ comes with some fun commands, allowing you to use actions and send messages through the bot itself. This has been removed on SwiftIRC because there was no necessity for it and it was often abused, causing channel owners to be fooled into thinking the bot was a threat and getting their channel taken over or stolen. Below you will find the different commands BotServ has, in-depth explanations of each, and examples.
/bs help is the command that takes you to the different command options, with an explanation on how to use the command. /BS help has a few different sections to explore. These are as follows: BOTLIST, ASSIGN, SET, KICK, BADWORDS, INFO, and UNASSIGN. To learn about these different commands, you would type /bs help command.
Ex: If you wanted to learn about ASSIGN, you would type /bs help assign.
The botlist is a list of the current services bots available to assign on the network. The amount of bots depends on the networks, because they are created by the administrators. Some networks have a variety depending on what kind of network they are. The different bots do not have different capabilities. The only difference between them is their names and vHosts (some are the even the same).
The current SwiftIRC bot list as of 24/02/2013 consists of:
Bot list: Anna (firstname.lastname@example.org) BanHammer (services@SwiftIRC.net) Bot (services@SwiftIRC.net) Captain_Falcon (F@LCON.PUNCH) ClanWars (ClanWars@Enter.The.Wilderness) Client (services@SwiftIRC.net) Coder (services@SwiftIRC.net) FridgeServ (email@example.com) Hodor (Hodor@Hodor.Hodor) Machine (AJustM@chine.to.make.big.decisions) milk (firstname.lastname@example.org) Minibar (email@example.com) mIRC (mIRC@services.swiftirc.net) Noobs (firstname.lastname@example.org) Pancake (email@example.com) PlanetSide (PS2@Aurax.is) PlayStation (Ps3@it.only.does.everything) Q (firstname.lastname@example.org) Riot (League@f.Legends) RuneScape (services@SwiftIRC.net) SEO (Search@Engine.Optimization) snoozles (email@example.com) Spam (firstname.lastname@example.org) Unknown (email@example.com) W (firstname.lastname@example.org) Warcraft (email@example.com) Wheatley (Whe@tley.Laboratories) X (firstname.lastname@example.org) Y (email@example.com) 29 bots available.
To view the current list of bots, type
The Assign command does exactly what the name says. It assigns a services bot to your channel provided the channel is registered and you are the founder of the channel. If you are trying to assign a bot, your nick is registered, and you are sure you are the founder of the channel, make sure you are identified or it will not work without being identified. After assigning the bot you wish to have in your channel, you can then configure it to meet your channel's needs.
To assign a bot to your channel, type
/bs assign #channel botname
Ex: Perhaps you wanted Warcraft in your channel because it's a World of Warcraft-related channel. For this, you would type
/bs assign #SwiftChannel Warcraft
Immediately after you hit enter, the bot should join your channel. If services are down, the bot will join after they come online. Again, make sure your channel is registered, you are the founder of the channel, and you are identified or it will not work.
This table shows the current fantasy commands, how to use them, and what they do. Bracketed syntax () indicates an optional value.
If you would like to find out how to change the channel levels for certain actions, click here.
|Command||Syntax||Description||Conditions of Usage|
|!op||[nickname]||Sets mode +o on the specified user.||If SECUREOPS is on, target will be autodeoped if not on the access list.|
|!deop||[nickname]||Sets mode -o on the specified user.||Cannot DEOP target if target is at a higher access level than user.|
|!halfop||[nickname]||Sets mode +h on the specified user||If SECUREOPS is on, target will be autodehalfoped if not on the access list.|
|!dehalfop||[nickname]||Sets mode -h on the specified user.||Cannot DEHALFOP target if target is at a higher access level than user.|
|!voice||[nickname]||Sets mode +v on the specified user.|
|!devoice||[nickname]||Sets mode -v on the specified user.||Cannot DEVOICE target if target is at a higher access level than user.|
|!kick (or !k)||[nickname] [reason]||Kicks the specified user from the channel.||Can only kick target of an equal (if PEACE is off) or lesser access level.|
|!kb||[nickname] [reason]||Bans (+b), then kicks the specified user from the channel.||Can only ban target of an equal (if PEACE is off) or lesser access level.|
|!unban||[nickname]||Unbans (-b) the specified user from the channel.||Can only unban if user is at or above the level for UNBAN for the channel.|
|!seen||nickname||Returns the last time the specified user was seen in the channel.|
|!tb||nick time [reason]|| Kicks and bans (+b) the specified user for the amount of time specified. Time format: m = minutes - h = hours - d = days
Time syntax for usage with the !tb command: 1s2m3h4d. Incorrect time syntax usage will result in the bot immediately unbanning the user.
|Can only timeban target of an equal (if PEACE is off) or lesser access level.|
The Set command is what you can use to configure your bot to your channel's needs. The syntax for the Set command is: /bs set #channel option parameters. The different options are listed below:
Dontkickops is a setting that prevents or allows the bot to kick ops in the channel. Ops include ops and halfops. To configure this setting, type
/bs set #channel dontkickops on|off
If you choose to turn it on, the bot will not kick ops within the channel. However, if someone uses the /cs kick command and Symbiosis is on, the bot will appear to have kicked you, where it is really ChanServ. Dontkickops does not prevent /cs kick. The command is commonly used in channels that have Kick options set for the bot to prevent the ops and halfops from getting kicked for spamming, flooding, or using a word on the badwords list.
Dontkickvoices is a similar setting to Dontkickops except it works for voiced users instead of ops and halfops.
/bs set #channel dontkickvoices on|off
A greet is a message displayed by your bot when you enter a channel provided you have the access level required for it to be displayed. This option is used to turn this display on or off. To configure this option, type
/bs set #channel greet on|off
If turned on, the bot will actively display greets of users who have them set that have the required access level as they join the channel. If turned off, the bot will not display greets at all.
Fantasy commands are shortcuts such as !op, !deop, !voice, !k, etcetera, that you can use instead of the /mode command provided you have the Fantasy option turned on. To configure this setting, type
/bs set #channel fantasy on|off
Should you choose to turn it on, you will be able to use the Fantasy commands, but if it is turned off, you will not.
Symbiosis is a simple command that allows your bot to perform all of the actions that are normally done by ChanServ. For example, if you use the /cs kick command with Symbiosis set off, it will display ChanServ kicking the user. With Symbiosis on, your bot will be kicking the user. The bot will perform mode changes, kicks, and will display the entry message (if one is set) with Symbiosis on. The option has no legitimate use specifically, but it is a nice addition if you like to see your bot perform the actions instead of ChanServ. To configure the setting, type
/bs set #channel symbiosis on|off
The Kick option for BotServ allows you to configure kicks for different criteria such as bolds, underlines, flooding, and more. The different criteria are as follows:
NOTE: All of these have ttb (times till ban). If you want the bot to ban after four kicks, you would change ttb to number 4. The default setting is 3. If you set ttb to 0, no one will be banned.
Bolds Badwords Caps Colors Flood Repeat Reverses Underlines
The bolds option will kick anyone using bold formatting. If the user is on access and the Dontkickops or Dontkickvoices settings are turned on, the user will not be kicked. To turn the kicker on, type
/bs kick #channel bolds on|off ttb
Badwords and Badwords List
The badwords option kicks for words matching the badwords list. By default, the badwords list is empty. You have to manually add words to the list by typing
/bs badwords #channel add word(s)
You can add any word you wish the bot to kick for, even phrases. The list can hold thirty-two entries. To turn on the kicker itself, type
/bs kick #channel badwords on|off ttb
The badwords command is commonly used in channels where maturity and order are required. If you do not want your users to be offended by cursing, other demeaning words or phrases, make use of this option and it should prevent it.
For more information on badwords, you may scroll down or use this link: [Badwords]
Usually, talking in caps is not appreciated in channels. It is the equivalent of yelling and it just looks annoying. There is a kicker for caps as well. To turn it on, type
/bs kick #channel caps on|off ttb min percent
Min is the minumum amount of caps (in characters). Percent is the percentage of the total line of text of which are caps. If you do not specify min or percent, the kicker will be set to ten characters and twenty-five percent. For example, if you wanted to set the bot to kick for fifteen characters of text that coveres thirty percent of the total text line, you would type
/bs kick #SwiftChannel caps on 2 15 30%
The colors option kicks any user who uses colors in their messages. Sometimes founders do not like to see colors being used so they would enable this option. There are also two modes that strip (+S) or prevent messages (+c) with colors altogether. This kicker is not as useful as setting +S or +c, but it may be helpful regardless. To enable the colors option, type
/bs kick #channel colors on|off ttb
The flood option is probably the most used because it is so effective if set correctly. It kicks if flooding is detected in the channel. To set it, type
/bs kick #channel flood on|off ttb lines secs
Ttb was covered in the previous kickers. Lines is the amount of lines the user is allowed to type in the amount of seconds (secs) before the bot kicks them. This means the user can only send the amount of lines in the set time period (in seconds) or they will be kicked. The time period and the number of lines will determine how likely the user is going to be kicked. The higher the period of time and the lower the number of lines will result in the bot kicking more often. If you set the bot to kick for five lines in thirty seconds, that means the user will only be able to type five lines within a thirty-second time frame before they are able to type more or they will be kicked and/or banned. It is recommended you choose your own settings, but should you choose to leave the lines and secs spots blank, it will be set to six lines in ten seconds.
The repeat option will kick for consecutive repeated words, phrases, or sentences. To enable this option, type
/bs kick #channel repeat on|off ttb num
Num refers to the number of times the word, phrase or sentence has to be repeated for the bot to take action. This is another wonderful spam-prevention option. Num will be set to three if not specified otherwise.
Reverses are not seen often, but in case your channel's users abuse them and you wish to prevent it, you can set the Reverses option to kick/ban for it. To set it, type
/bs kick #channel reverses on|off ttb
The underlines option kicks for messages containing any underlined characters. To set it, type
/bs kick #channel underlines on|off ttb
Badwords is an option where you can manage your list of bad words. With this setting, you can add, delete, search for, or even clear all your entries of bad words. If you want to add a word to the list, type
/bs badwords #channel add word single|start|end
If you specify single, a kick will be issued only if the user says the entire word. If start is specified, a kick will be issued if the user says a word that starts with word. If end is specified, the user will be kicked if the user says a word that ends with word.
The Del command deletes entries in the badwords list. You can delete them by typing
/bs badwords #channel del word
or through entry numbers. Entry numbers are the order the words appear in the badwords list. To view the list, type
/bs badwords #channel list
Using that command will display the entire list of words. If you wish to display on a certain range of entries, you add the range at the end. For example, if you wanted to see only entries 2-5 and 9-12, you would type
/bs badwords #SwiftChannel list 2-5,9-12
You can also use the Del command to delete specific entry ranges rather the individual words or using the Clear command to remove the entire list. To clear the list entirely, you would type
/bs badwords #channel clear
The Info command can be used to display the information of a services botor channel.
This command is to check the bot's information
/bs info botname
You will either get a response from BotServ giving you the information of the specified bot or a response telling you the bot does not exist. If you specify a bot not on the botlist (/bs botlist), it will not return any information. If you type
/bs info X Mask : firstname.lastname@example.org Real name : Channel Enforcement Created : Feb 28 20:29:13 2005 UTC Options : None Used on : 3336 channel(s)
As you can see, you get some information regarding the bot X. It tells you the hostmask of the bot, the real name, the date it was created, the options set on it (IRCops only), and how many channels it is currently assign to.
The following command is useful to the information that you have set in your channel.
/bs info #channel
/bs info #examplechan [09:55:39] -BotServ- Information for channel #SwiftChannel: [09:55:39] -BotServ- Bot nick : X [09:55:39] -BotServ- Bad words kicker : enabled (3 kick(s) to ban) [09:55:39] -BotServ- Bolds kicker : disabled [09:55:39] -BotServ- Caps kicker : disabled [09:55:39] -BotServ- Colors kicker : disabled [09:55:39] -BotServ- Flood kicker : enabled (2 kick(s) to ban; 5 lines in 4s) [09:55:39] -BotServ- Repeat kicker : disabled [09:55:39] -BotServ- Reverses kicker : enabled [09:55:39] -BotServ- Underlines kicker : disabled [09:55:39] -BotServ- Options : Fantasy, Greet, Symbiosis
As you can see from the above example you can check exactly what setting you have set on your channel.
Unassigning a bot in the IRC world is typical and the way you would do that is by typing
/bs unassign #channel
This will make your bot part your channel and you are free to assign another one. If you happen to assign a bot a different bot before using the Unassign command itself, the bot you currently have will part the channel as the other joins. Either way works. Most users prefer the shortcut of just assigning a different bot.