ChanServ Commands
From Foonetic
This article will discuss the different options that can be used in ChanServ and how to execute those options.
Contents |
Registering a Channel
In order to REGISTER a channel the following conditions must be met first:
1. The channel needs to be unregistered; 2. Your nickname needs to be registered with Nickserv; 3. You need to be a channel operator in that channel.
Once these conditions are met you can use the following syntax to register a channel:
/msg ChanServ REGISTER <channel> <founder_password> <channel_description>
Note that it is required to include the # in the channel name in commands sent to ChanServ, including REGISTER.
Identify and Retrieve Password
If you are not identified to Nickserv but own a channel you can identify to that channel to get founder-level access to that channel. You can do this by entering the following syntax:
/msg ChanServ IDENTIFY <channel> <password>
Once you have done this you can rejoin the channel and you will have founder-level access.
If you forgot the password to your channel you can have ChanServ email it to you, under these following conditions:
1. You have identified with Nickserv 2. You are the founder of the channel
If you meet those requirements then you can type the following syntax:
/msg ChanServ SET #channel PASSWORD <password>
Drop a Channel
If you no longer want to own a channel you can use the DROP command to release it. You can use the following syntax:
/msg ChanServ DROP <channel> <password>
Note: Before you drop a channel you must be the channel founder and you must identify with ChanServ.
Channel Options
If you would like to set some various options such as a new channel password or an entry message then you can use the SET command. Use the following syntax:
/msg ChanServ SET <channel> <options> <parameters>
These are some of the available options that can be set:
Setting FOUNDER allows you to set the new founder of a channel. The nickname that will be the new founder has to be registered. You can do this by entering the following syntax:
/msg ChanServ SET <channel> FOUNDER <nickname>
Note: This option hands over your channel to someone else, so use this command with caution.
Setting SUCCESSOR allows another person to become the new owner of the channel if the founders nickname expires, or is dropped while the channel is still registered. The nickname for the successor must be registered, and if the successor has more than 20 channels registered then the channel will be dropped as if no successor has been set. You can use the following syntax to set a successor:
/msg ChanServ SET <channel> SUCCESSOR <nickname>
When you use the password command it changes the channel password, which is used to identify the founder of the channel. You can use the following syntax to set a new channel password:
/msg ChanServ SET <channel> PASSWORD <password>
Setting a CHANNEL DESCRIPTION is the description that shows up when you do the LIST command or the channel INFO command. When you associate a URL with a channel, the URL shows up in the channel INFO. When you associate an email, like URL and description, it shows up in the channel INFO. You can use the following syntax to set a description:
/msg ChanServ SET <channel> DESC <description>
You can use the following syntax to associate a URL:
/msg ChanServ SET <channel> URL <url>
You can use the following syntax to associate an email address:
/msg ChanServ SET <channel> EMAIL <address>
Setting a channel ENTRY MESSAGE allows ChanServ to message the person joining the channel via the /NOTICE command with the channel message. You can use the following syntax:
/msg ChanServ SET <channel> ENTRYMSG <message>
Setting TOPIC LOCK allows you to lock the topic. This means that it is a setting which can be used to have ChanServ retain a certain topic so that any changes to the topic result in ChanServ changing the topic back to the locked topic.
ChanServ will not allow the channel topic to be changed except via the ChanServ/Topic command.
You can use the following syntax:
/msg ChanServ SET <channel> TOPICLOCK <ON | OFF>
Turning Topic Lock off:
/msg ChanServ SET <channel> TOPICLOCK OFF
Example:
Test changes topic to: This is what happens when topic lock is off
Turning Topic Lock on:
/msg ChanServ SET <channel> TOPICLOCK ON
Example:
Test changes topic to: This is what happens when topic lock is on ChanServ changes topic to: This is what happens when topic lock is off (Test)
Setting mode lock allows you to define certain channel modes to be always on or off. You can use the following syntax:
/msg ChanServ SET <channel> MLOCK <mode>
Always Locked mode/s Syntax:
Example:
/msg ChanServ SET <channel> MLOCK +i (Forces the channel to always be invite-only) /msg ChanServ SET <channel> MLOCK +ip (Forces the channel to always be invite-only and private) /msg ChanServ SET <channel> MLOCK +k <pass> (Forces the channel to require the key "Pass" to enter)
Always Unlock mode/s Syntax:
Example:
/msg ChanServ SET <channel> MLOCK -i (Forces the channel to never be invite-only) /msg ChanServ SET <channel> MLOCK -ip (Forces the channel to never be invite-only and private)
Combination Lock/Unlock mode/s Syntax:
Example:
/msg ChanServ SET <channel> MLOCK -i+p (Forces the channel to never be invite-only and always private )
To remove all locked modes, use this command:
/msg ChanServ SET <channel> MLOCK +
There are a couple of different ways in which you can hide or secure your channel from the LIST command or from stopping certain users from joining.
You can use the following syntax to set the channel as PRIVATE, hiding it from the LIST command:
/msg ChanServ SET <channel> PRIVATE <ON | OFF>
The RESTRICT command allows only people who are on the access list to join the You can use the following syntax to RESTRICT access to the channel:
/msg ChanServ SET <channel> RESTRICTED <ON | OFF>
Another option to secure your channel would be to use the SECURE command. When this command is set only people who have registered with NickServ or identified with NickServ can use the given privileges for that channel as controlled by the access list. You can use the following syntax:
/msg ChanServ SET <channel> SECURE <ON | OFF>
Note: If RESTRICTED is set, users will not be able to join the channel if they have not identified with NickServ.
A further way to secure your channel would be to use the SECUREOPS command. When this command is set, only people on the access list will receive channel operator status. You can use the following syntax:
/msg ChanServ SET <channel> SECUREOPS <ON | OFF>
Another option is the LEAVEOPS command. When this is set ChanServ will op (+o) the first person in the channel even if the person is not normally on the AOP list. You can use the following syntax:
/msg ChanServ SET <channel> LEAVEOPS <ON | OFF>
Note: This command allows "users" to steal ops during a netsplit.
You can also set OPNOTICE, which allows ChanServ to send a notice to the channel every time someone is , voic'ed (+v), half-op'ed (+h), op'ed (+o), super-op'ed (+a), or set as an owner (+q). You can use the following syntax:
/msg ChanServ SET <channel> OPNOTICE <ON | OFF>
A final command you can use for security in your channel is the ENFORCE command. When this command is set, if a user with auto-op privileges is deopped then ChanServ will automatically op the user again. You can use the following syntax:
/msg ChanServ SET <channel> ENFORCE <ON | OFF>
If you would like to get rid of some of these options you can use the ChanServ UNSET command. You can use the following syntax:
/msg ChanServ UNSET <channel> <successor | URL | Email | ENTRYMSG>
Channel Information
The Channel Information command lists information about the registered channel, including its founder, time of registration, last time used, description, and mode lock, if any. The the owner of the channel is looking up channel information and they are identified, they could see all channel information. You could use the following syntax to retrieve channel information:
/msg ChanServ INFO <channel> <ALL>
Access
Access levels are a feature of ChanServ that specifies what users are allowed to do (and what not). Every user that requires special privileges set by ChanServ needs to be entered into the Access database with a certain number (the access level). If a nickname is not on the access list it has, by default, an access level of 0.
Listing Access Levels
To list the current database of users and their respective access level:
/msg ChanServ ACCESS <channel> list
Adding a User to the Access list
To add a new user to the access list with a given access privilege:
/msg ChanServ ACCESS <channel> ADD <nickname> <access level>
Modifying a User's current Access level
To change a user's previously set access level, use the same command as for adding a new user with your desired access level.
Deleting a User from the Access list
/msg ChanServ ACCESS <channel> DEL <nickname>
If you would like to receive a count of all the users on the access list, you can type the following syntax:
/msg ChanServ ACCESS <channel> COUNT
If you would like more information on the ACCESS command, the following syntax could be used:
/msg ChanServ HELP ACCESS
Levels
Access levels can be confusing at first, this section will try to clarify what they are and how to use them.
You can retrieve a list of the current access levels as follows:
/msg ChanServ LEVELS <channel> LIST
If you want to give a user named Joe +v in channel #test so he may talk even when the channel is moderated (+m) you would use the following command:
/msg ChanServ ACCESS #test ADD Joe 30
Now assume you have 100 users in your channel and they all have access level 30 (i.e. get auto-voiced by ChanServ on joining of the channel) and you want to give all these users operator rights you have 2 options:
1. Change all users' access levels to 50 (assuming default)
2. Change the auto-op level to 30 (far less strenuous)
Set the auto-op level to 30 as follows:
/msg ChanServ LEVELS <channel> SET <type> <level>
Specific to our example:
/msg ChanServ LEVELS <channel> SET AUTOOP 30 /msg ChanServ LEVELS <channel> DISABLE AUTOVOICE
If you would like more information on levels before using them and changing them, you could use the following syntax:
/msg ChanServ HELP LEVELS
Here is a list of the default ChanServ levels:
AUTOPROTECT 100 AUTOOP 50 AUTOHALFOP 40 AUTOVOICE 30 INVITE 50 AKICK 100 SET (founder only) CLEAR 100 UNBAN 50 ACC-LIST 0 ACC-CHANGE 40 MEMO 100 OP-DEOP 50 VOICE 30 HALFOP 40 PROTECT 100 KICK 50 TOPIC 50 STATUS 100
Misc. Channel Commands
Sending the INVITE command to ChanServ tells ChanServ to invite you to that channel, regardless if you were invited or not. The only requirement for this command is that it is limited to users with level 50 (AOP) access or above for the channel. You can use the following syntax:
/msg ChanServ INVITE <channel>
The UNBAN command tells ChanServ to remove all bans preventing you from entering the channel. This too is limited to users with level 50 access or above in the given channel. You can use the following syntax:
/msg ChanServ UNBAN <channel>
The KICK command tells ChanServ to kick a user from a channel. Once this command is executed the message included in the kick tells you who kicked you and the reason, if any, why they kicked you. This too is limited to only level 50 access or above. Protected users +a (100 access level) cannot be kicked with this command, even by the channel founder. You can use the following syntax:
/msg ChanServ KICK <channel> <user> [Reason]
Sending the TOPIC command to ChanServ tells ChanServ to change a channel's topic. This is useful when Topic-Lock is on. You can use the following syntax:
/msg ChanServ TOPIC <channel> [Topic]
The CLEAR command, a very handy one, allows you to clear a couple of different stuff in a certain channel. It tells ChanServ to clear any of the following modes:
MODES - Clears all modes on the channel except those set in the channel's mode lock. BANS - Clears all bans on the channel. EXCEPTIONS - Clears all exceptions on the channel. INVITES - Clears all invite masks on the channel. OPS - Removes channel-operator status (mode +o) from all users. HALFOPS - Removes halfop status (mode +h) from all users. VOICES - Removes "voice" status (mode +v) from all users. USERS - Removes (kicks) all users from the channel.
Note: This command is only limited to those who have level 100 access in a channel or above. You can use the following syntax:
/msg ChanServ CLEAR <channel> <what>
The STATUS command allows you to return the access level of a certain nickname in a channel. This too is limited to those who have level 100 access in a channel or above. You can use the following syntax:
/msg ChanServ STATUS <channel> <user> <access-level>
The AKICK command tells ChanServ to ban a certain user then kick them from a channel. If the ban is removed and the person attempts to rejoin the channel they will once again be banned then kicked. The default masks are user@host or nick!user@host. This is limited to those who have level 100 access in a channel or above. You can use the following syntax:
/msg ChanServ AKICK <channel> ADD <mask> [Reason]
For additional information on the AKICK command type:
/msg ChanServ HELP AKICK
For additional information on ChanServ commands, use the following syntax:
/msg Chanserv HELP COMMANDS
