IRC Services Help Guide - ChanServ
NickServ - MemoServ

CHANSERV
Also: CHANSERV | CS
ChanServ allows users to register a room. Rooms are the virtual environments in which people chat. Rooms are also called channels, both terms mean the exact same thing. Using ChanServ allows the room to be controlled and makes takeovers virtually impossible.
This means that the designated staff for a room will have the tools to manage most problems that could arise. ChanServ will drop a registered room if none of its staff join the room for a certain amount of time.

ChanServ Commands:

ACC Determine the access level of a user in a room.
ACCESS Determine the access level of a user in a room.
AKICK Manipulate the AKICK list of a room.
AUTH Manipulate the AUTH list of a room.
AOP Manipulate the AOP list of a room.
COUNT Show number of entries in room lists.
DEOP Remove Operator status for a user in the room.
DEVOICE Remove your +v status in a room.
DROP Drop a registered room.
HELP Receive help on various ChanServ commands.
IDENTIFY Identify as the founder for a room.
INFO Get general information about a room.
INVITE Invite a user into the room.
MDEOP Remove Operator status from all users in the room.
MKICK Kick everyone out of the room.
OP Give a user in the room operator status.
REGISTER Register a room.
SET Change room 's settings.
SOP Manipulate the SOP list of a room.
UNBAN Remove bans from rooms with services.
UOP Manipulate the UOP list of a room.
VOICE Set voice status on a user in the room.
VOP Manipulate the VOP list of a room.
WHY Show why a person has OP status in a room

Example:
/msg chanserv help <command>
/chanserv help <command>
/cs help <command>

ACC
Usage: ACC #<room> <nick>
Use the acc command to find out what access level you or another user has to a registered room.
ChanServ will return one of the following values:
7 Identified as founder of the room by the room's password.
6 Identified to the founder's nick.
5 Matches an entry in the access list of the founder's nick.
4 SOP
3 AOP
2 VOP
1 UOP
0 Normal User
-1 AKICKed user
Example:
/msg chanserv acc #conferenceroom joeuser

ACCESS
Usage: ACCESS #<room> <nick>
Use the access command to find out what access level you or another user has to a registered room.
ChanServ will return one of the following values:
7 Identified as founder of the room by the room's password.
6 Identified to the founder's nick.
5 Matches an entry in the access list of the founder's nick.
4 SOP
3 AOP
2 VOP
1 UOP
0 Normal User
-1 AKICKed user
Example:
/msg chanserv access #conferenceroom jimmy
This command is useful to determine what level of power someone has in a room. It can only be used by someone who has UOP access or higher. As a UOP or higher, you can use it as a quick way to check whether someone is akicked. This can be useful if they are having problems joining, but you're not sure why.
Anyone can use it to check their own access on the room, if the command goes through, you see your access, if it does not you know you are either 0 or -1. Then if you can join you are 0, if you get kicked out after joining, you are akicked. UOPs and higher can also use it to check the access level of another op, if they need an AKICK set, they may want to see if a fellow op is an SOP.

AKICK
Usage: AKICK #<room> <ADD|DEL|LIST|WIPE> <mask>
SOPs and the founder of the room can add and delete AKICKs. If a user matches an entry in your room's akick list, he is immediately kicked and banned from the room. The WIPE command will clear out the entire AKICK list. Only the founder may use the wipe command. UOPs and above may use the list command to see the current AKICKs.
ADD - Add a user to a room's AKICK list.
DEL - Remove a user from a room's AKICK list.
LIST - List the AKICK list entries.
WIPE - Clear all the AKICK list entries
Examples:
/msg chanserv akick #support del *!user@domain.com
/msg chanserv akick #support wipe
This command is an important part of room security. It allows you to remove troublesome users. It should not be used lightly though, as it will generally require keeping innocent users out as well.
Since people online can only be recognized by IP address and most people use dialup connections, all users from a big ISP may look the same. However, UOPs and higher will not be kicked out of the room even if they match an akick.

AUTH
Usage: AUTH #<room> [DEL|LIST|WIPE] <mask>
Allows ops to view (VIEW) or delete pending authorization entries pending for the channel; E.g. if I try to add you to #objectivism, and you have "auth on", that command will list you as "pending". SOPs and the founder of the room can list and delete pending Authorizations.
DEL - Remove a user from a room's AUTH list.
LIST - List the AUTH entries.
WIPE - Clear all the AUTH list entries
Examples:
/msg chanserv auth #support del mark
/msg chanserv auth #support wipe
This command assists you in managing user additions to your room. You can create a request to add someone to your room and see how many of those requests are still pending. If you change your mind you can remove a single user or wipe the entire list.

AOP
Usage: AOP #<room> [ADD|DEL|LIST|WIPE] <nick|mask>
AOPs have the third level of access in a room. Only an SOP or the founder can add or delete an AOP or wipe the entire list. UOPs or higher can use the list command to see the current AOPs.
ADD - Add a user to a room's AOP list.
DEL - Remove a user from a room's AOP list.
LIST - View the AOP list entries.
WIPE - Remove all AOP list entries.
Examples:
/msg chanserv aop #support add theri
/msg chanserv aop #support del *user@*.domain.net
/msg chanserv aop #support wipe
AOPs can always op themselves in a room. They have all of the powers of VOPs (see VOPs below), plus they can change modes or op/voice other people in the room. There are several abilities that can be set to be usable by AOPs, depending on the founder's desires. Most rooms will allow AOPs to send memos to the room. Topics may be locked to AOP or above.
Only people who are trusted should be added to the AOP list. While they do not have the power to do permanent damage, they cannot edit any of the room's lists or settings, they do have the ability to make the room unusable until another AOP is able to fix it. At times an SOP may be needed to sort out conflicts between AOPs.
All ops should be added by nick unless there is a specific need to add them by mask. Adding by nick allows for additional security and grants more privileges. For example, an op added by mask cannot receive memos sent to the room.

COUNT
Usage: COUNT #<room>
This will give a count of how many entries are in each of the room's lists. UOPs and higher can get a count for a room.
Example:
/msg chanserv count #webchat
This command is primarily useful to get an idea of how many ops a room has or to see if the akick list is long enough to be worth considering reviewing. Actually listing people on the lists will fill your screen with information, while the count command is just a one line summary.

DEOP
Usage: DEOP #<room> <nick>
If you are an AOP in a room, you can use services to deop people in the room who do not outrank you..
Example:
/msg chanserv deop #support webmaster
This should be used if someone was given ops and is misusing them. If the person is an AOP then if you are an SOP you should delete the entry to prevent them from reopping themselves. You will rarely want to deop someone who has the same status in the room as you do, since they can just reop themselves, and you can start a pointless struggle for control that no one can win.
If you have problems with someone who has the same status, find someone of higher status in the room to deal with it. You might want to deop someone of the same status if he/she went away for a time and forgot to deop first.
Note: if you are opped and wish to deop yourself, you still need to be an AOP or higher to do it with services. But you can mode yourself -o in the room.

DEVOICE

Usage: DEVOICE #<room> <nick>
You must be a UOP or higher to use this command in the room. This command will remove your (+v) voice status. If you are an AOP or higher you can devoice other people who do not outrank you.
Example:
/msg chanserv #spiderslair devoice Jenkins
This command is useful in rooms where voice is used to symbolize some level of ability in the room. Many help rooms will voice helpers who are still in training. If you are voiced but are going to be inactive you cannot simply mode yourself -v in the room, since only ops can set room modes.
This command has services remove the voice for you. AOPs and higher can use services to devoice people who do not outrank them, but they can also just mode them -v normally. The services command would be useful if you are an AOP or higher, but not currently opped and want to devoice someone without having to op yourself first.

DROP
Usage: DROP #<room>
Used to drop a registered room. Only the founder can do this.
Example:
/msg chanserv drop #conferenceroom
This command should be used when a room is no longer wanted. It drops all of the information about the room from services' database and makes the room available for registration by someone else. The room will be treated like any other dynamic room until it is registered again.

HELP
Usage: HELP [<command>] [<command>]
Display a list of all commands you can get help on.
Examples:
/msg chanserv help
/msg chanserv help identify
/msg chanserv help set topiclock
This is the command to check how to use any command related to chanserv. It is useful to check syntax, or to check which commands are available. The help command will give the list of commands, while help <command> will give more information on a specific command.
For commands such as set that have numerous options you will get a list of those options. Then you can use help <command> <option> to get more information on any of these options.

IDENTIFY
Usage: IDENTIFY #<room> <password>
This command is used to gain founder access to a room, level 7 access as shown by the acc and access commands. After identifying to a room, you have complete control over it and can use any of the services commands that relate to room management.
Example:
/msg chanserv identify #conferenceroom mypass
This command should be used when you own a room and wish to make changes to its settings. As founder you should not need to identify with the room's password very often. You should be opped based upon your nick, and if need be, identify for your nick.
The room won't expire so long as the founder's nick does not and people get opped in the room regularly. If a root sets keep on for the room, then it will not expire from lack of use.

INFO
Usage: INFO #<room>
The info command will show you the available information on a room including founder, registration time, room options and more.
Example:
/msg chanserv info #conferenceroom
This command is useful when you want to check if a room is registered, or are trying to find out why services are behaving in a particular way. If you want to change the topic, or send a memo, or similar you can use this to see what level those abilities are set to.
If services keeps tampering with the modes or is doing anything inexplicable, a check to the room's info may explain why it is acting that way. It's generally a good place to start when troubleshooting.

INVITE
Usage: INVITE #<room>
This command is used to invite yourself into a room that is set to invite only. You need to have User (UOP) or higher access in the target room to utilize this command. This command cannot be used to invite others into the room.
Example:
/msg chanserv invite #conferenceroom
This command is useful if the room is set +i, because without inviting yourself, you cannot join. To invite others, use the command /invite <nick> <room> while opped in the room. Invite-only rooms allow for some privacy, since people cannot join without the approval of the ops.

MDEOP
Usage: MDEOP #<room>
Used to deop every user in the room including yourself. You must be an AOP or higher in the room to use this command. It will not work if anyone is present who outranks you.
Example:
/msg chanserv mdeop #conferenceroom
This is a useful command to regain control in a room if someone has become inappropriately opped. It should not need to be used often.

MKICK
Usage: MKICK #<room>
Used to kick every user out of your room. You must be an AOP or higher in the room to use this command. It will not work if anyone currently in the room outranks you.
Example:
/msg chanserv mkick #conferenceroom
This command should not often be needed. But it can reset a room to its default settings by forcing everyone to leave. Every once in a while a room can become desynched, such that services thinks someone is in the room when no one is. Then services do not properly set the topic or modes, because they do not realize they were erased when the room emptied. An mkick will usually fix this.

OP
Usage: OP #<room> <nick>
If you are an AOP or higher in a room you can use services to op yourself or others. All of the ops in the room will see a notice telling them that you used services to op the person.
Example:
/msg chanserv op #conferenceroom webmaster
This is mostly useful when opping yourself. If you deop yourself for whatever reason, you can reop yourself without having to part and rejoin. Opping other people is usually easily done by moding them +o, but occasionally a bot or script will have problems with people opping others, then services can be used to avoid problems.

REGISTER
Usage: REGISTER #<room> <password> <description>
Used to register a room with services. After registering your room, you will be able to determine how it is run. You can control who may join and how much power each user has. The room will remain yours so long as your nick does not expire and someone is opped in the room regularly (the exact time period is settable).
The room will not expire from lack of use if a root sets held on for it, see the root command section for more information on held. Who may register a room is settable by a root. Some networks will allow any user to register a room while others may restrict it to network operators.
Example:
/msg chanserv register #support mypasswd Product Support Room
If you plan to talk to a group of people regularly you should register a room in which to do it. It is important to register a room rather than just using a dynamic room so that you can guarantee it will remain yours. Otherwise you might have to switch rooms, and informing people will be tedious.
You can also register a room if there is a topic that interests you, but you're not sure who would want to discuss it. Just register a room with a name that implies that topic, say #baseball, and with time people interested in talking about baseball will be likely to join.

SET
Usage: SET #<room> <command> [<value>]
This command allows you to change settings for a room. You need to be identified with the room's password to change any of these settings. To identify use the command /msg chanserv identify <room> <password>
AUTOVOP - Give everyone VOP status on join if they do not already have a higher access level.
DESC - Change the description for a room.
EMAIL - Set an email for the room.
FOUNDER - Change the room's founder.
IDENT - Require ops to identify for their nicks before being opped/voiced by services.
KEEPTOPIC - Have services remember the topic when the room empties and reset it when someone next joins.
LEAVEOPS - Stop services from deopping people.
MEMOLEVEL - Set who may send a room memo (Enterprise Edition only).
MLOCK - Lock which modes can be set in the room.
OPGUARD - Allow only AOPs and higher to be opped.
PASSWD - Change the room's password.
RESTRICT - Allow only UOPs and higher to remain in the room.
TOPICLOCK - Restrict who may change the topic.
URL - Set or change the room's URL.
For more information on a setting:
/msg chanserv help <setting>
Example:
/msg chanserv help

SET AUTOVOP
Usage: SET #<room> AUTOVOP [on|off]
This command will set all users+v when they enter the room unless they are already being opped. Because the VOP list cannot accept open hostmasks like *@* you would use this command to give voice to all users. They will be voiced in the room and able to look at the room lists, but they will not be able to invite themselves into the room.
If you ban them, they can revoice themselves and still talk, but if you kick them out then they cannot rejoin.
Example:
/msg chanserv set #spiderslair autovop on
This command is generally not useful. It will require anyone who causes problems to be banned and kicked, since they will be able to revoice themselves and speak through bans. It also makes your UOP/VOP/AOP/SOP/AKICK lists public to everyone on the network. However, if you want your lists to be public, or have a reason to voice everyone, this will let you.

SET DESC
Usage: SET #<room> DESC <description>
Used to change the description of your room; it will be displayed to users when they request the room information with the info command.
Example:
/msg chanserv set #webchat desc the dragon room
Like the topic, some people may use the description to decide whether they wish to join the room. However, the description can only be set by the founder, and is generally changed less often than the topic. Most people expect the description to give some information about the purpose of the room.

SET EMAIL
Usage: SET #<room> EMAIL <email address>
Used to set an email address attached to a room. The email will show in the room's info.
Example:
/msg chanserv set #webchat wcops@webchat.org
This is a good way to give people a contact for any problems or questions related to your room. However, it also gives people an email address that they can send to for any reason, and you might not want to make one public.

SET FOUNDER
Usage: SET #<room> FOUNDER
Used to change the founder of a room to the nick of the person sending the command. The new founder must be using a registered nick. You must identify with the room's password before trying to set the founder.
Example:
/msg chanserv set #conferenceroom founder
If you change the nickname that you use, you should set all of your rooms to the new nick, because the room will drop if the founder's nick expires. The set founder command can also be used if you no longer want the room and wish to give it to someone else. Just give the person the password and he/she can identify and set founder it.

SET IDENT
Usage: SET #<room> IDENT [on|off]
If you set ident on then everyone will have to identify to nickserv with their nick's password before they will get any status in the room. No one will be opped, not even the founder, without first identifying. If you enter the room and then identify, services will +u, voice, or op you as appropriate after the identify command goes through.
Example:
/msg chanserv set #webchat ident on
Ident is a good security precaution because it requires every person to use a password before being recognized. This prevents anyone from being opped simply because they match someone's access list. Access lists may be set loosely.

SET KEEPTOPIC
Usage: SET #<room> KEEPTOPIC [on|off]
Use this to have services remember the current topic and reset it if the room empties and then is reformed. It does not provide any security with regards to whom may set the topic, see mode +t or topiclock to restrict who may set the topic. Keeptopic can only be turned on if topiclock is first turned off since topiclock includes the functionality of keeptopic and also provides topic security.
Example:
/msg chanserv set #services keeptopic on
This is a good command to use if you do not intend to use topiclock. While a topic may not be essential for your room, there is rarely a reason to not keep one in memory. It is a nice aesthetic touch, and if you set useful topics, it can be helpful.

SET LEAVEOPS
USAGE - SET #<room> LEAVEOPS [on|off]
This command will leave the first user who joins the channel opped in the channel. This command will not be active if OPGUARD is set on the channel. OPGUARD and IDENT take precedence over this command.
Example:
/msg ChanServ set #webchat leaveops on
/msg ChanServ set #spiderslair leaveops off

SET MEMOLEVEL
Usage: SET #<room> MEMOLEVEL [UOP|VOP|AOP|SOP|FOUNDER]
This setting has a default of UOP when you register a room. You can however change the memolevel. A room memo is a memo sent to every registered nick in any of the room's lists or to everyone in a specified list such as AOP. This command lets you restrict who can send them to the people of your room. This is an Enterprise Edition feature.
Example: memolevel aop
Memos are useful for announcing policies or information everyone in the room might need. For example, if you do not add AOPs often, you could send a memo to the entire room informing them of a new AOP. UOPs and such might memo information about someone who has been causing problems in the room.
If the people generally will not mind getting memos from the room, you should set the access level low, but if you want to make sure that memos are only sent when they are actually important, you might want to set it higher and only use it rarely. See the memoserv commands send and sendto.

SET MLOCK
Usage: SET #<room> MLOCK <modes>
The founder of a room can lock the modes of the room by using the mlock command. When a room is registered a default mlock of +rtn-k is set. See the room modes list or use /hs cmodes to see what each mode does. The modes that are mlocked on, with the + sign, will be set by services after the room empties when the first person rejoins. Services will also prevent anyone, regardless of their status in the room, from turning those modes off. If the founder wishes to change them he/she must first change the mlock. Services will remove any mode set for the room that is mlocked off, which is symbolized with the - sign. Some modes can only be set by network operators (such as M) and some modes cannot be locked on (k and l). If you try to lock a mode that cannot be mlocked the mlock will be set without those modes in it.
Example:
/msg chanserv set #conferenceroom mlock +stn-kl
Mlocks are useful for defining what kind of room you are running. If you're not sure whether some modes might be needed for management, do not mlock them positively or negatively. If you know that you never want your room to be secret or private, then you can mlock it to include -sp.
Similarly, you can mlock modes you never want off, such as n (no outside messages) which almost all rooms will want to keep. Mlocks allow you to set up your room once and then not have to worry about it, since services will maintain it the way you want it.

SET OPGUARD
Usage: SET #<room> OPGUARD [on|off]
If you set opguard on, only your AOp/SOps can be opped in your room. Anyone else that is opped will automatically be deopped by services. People can still be voiced. Network operators can be opped in rooms with opguard on. This way if problems do come up, opers can be invited in to help out and be opped in the room.
Example:
/msg chanserv set #spiderslair opguard on
This can be a useful security measure. Most rooms will not have a problem with allowing their AOPs to op whomever they trust, that is to mode them +o in the room. But use this if you are having problems with people opping inappropriately or want to strictly control who has ops.
This also affects the SOPs and founder, but they could always add someone to the AOP list at any time they wanted to op the person. The downside to opguard is that if the room runs into problems or runs low on ops, then the current ops cannot op more people to help them out, although they can still have network operators assist them.

SET PASSWD
Usage: SET #<room> PASSWD <password>
This is used to change the password for your room. You must identify with the old password before you can set a new one.
Example:
/msg chanserv set #webchat passwd newp4ss
Use this if you are having trouble remembering your old password and want to change it to something better for you. You should always change the password immediately if it accidentally gets revealed, for example by missending the identify command.

SET RESTRICT
Usage: SET #<room> RESTRICT [on|off]
Used to allow only those in the room lists to join the room. Everyone else will be kick/banned as they join.
Example:
/msg chanserv set #support restrict on
A good command to keep a room completely private and control who enters. The downside is that you must add an entry for everyone whom you want to allow to join. You cannot just invite someone in when you want to, you must first at least give them UOP access. Which also means that everyone allowed into the room can look at lists and see whom else is allowed in.

SET TOPICLOCK
Usage: SET #<room> TOPICLOCK [OFF|AOP|SOP|FOUNDER]
This setting will allow only the ops at or above the level you set to change your topic. Anyone who is not authorized to change the topic who tries to change it will have the topic reset back to what it was. The only time when someone of lower status than you set the topiclock to can change the topic is if no topic has been set in the room.
As soon as there is a topic for services to set it back to, the topiclock will be enforced. Services will also set the topic back after the room empties when someone rejoins. Topiclock in any position other than off includes the functionality of keeptopic, and if set on, keeptopic will automatically be removed if it was on.
Example:
/msg chanserv set #support topiclock aop
Topiclock is a good way to control what topic is showing for your room. Since the topic is one of the first things people see about your room, you want it to represent you well. What level you want to restrict topic changes to will depend upon how you choose to give people AOPs and such, and how important the topic is to your room.
If your room is a place just for you to hang out with your friends you might prefer to leave it unlocked and watch as people set amusing topics and change it often.

SET URL
Usage: SET #<room> URL <url>
Used to change the url for your room. The URL of your room will be available to any user that requests info on your room. Rooms do not need attached URLs.
Example:
/msg chanserv set #ConferenceRoom url http://www.webmaster.com
Setting an URL can be very useful if it contains rules that relate to the room or frequently asked questions. You can set the URL to anything, but people will generally expect the URL to relate to the room in some way. More social rooms sometimes have web sites that give information about the people who regularly chat there.

SOP
Usage: SOP #<room> [ADD|DEL|LIST|WIPE] [<entry>]
SOps have the second highest level of control in a room. They can add and delete AOPs and AKICKs in addition to all of the AOP commands. The founder is the only one who can add ordelete an SOP. The WIPE command will clear out the entire SOP list. You can delete a user by entering the number value besides his nickname when you do a list on the SOP list for the room.
ADD - Add a user to a room's SOP list.
DEL - Remove a user from a room's SOP list.
LIST - List the SOPs for the room.
WIPE - Clear the SOP list of all entries
Examples:
/msg chanserv sop #conferenceroom add Samurai
/msg chanserv sop #conferenceroom del Samurai
/msg chanserv sop #conferenceroom del *user@*.domain.net
/msg chanserv sop #conferenceroom wipe
/msg chanserv sop #conferenceroom list
SOPs should be chosen very carefully since they manage all of the other staff in the room. A room will generally not require a large SOP list. Most of the people who will actually be looking after the room can be AOPs.

UNBAN
Usage: UNBAN #<room> [*|<nick>|<mask>]
The unban room command with no arguments will cause services to unban you from that room. Unbanning a nick will cause services to unban that nick, and unbanning a mask will remove a ban for that mask. The * is used to remove all bans in the room. AOPs and above can unban themselves, other nicks, and masks, but only SOPs and the founder can use the * to remove all bans.
Examples:
/msg chanserv unban #webmaster
/msg chanserv unban #services *
/msg chanserv unban #webchat mark
/msg chanserv unban #conferenceroom *!jennifer@*.webchat.org
The unban command is primarily useful for unbanning yourself. If you are outside the room you cannot remove bans manually. However unbanning a particular nick can be useful if you're not sure how that person is being banned, services will do the work of figuring out how to unban the person.
Unbanning all is a convenience, since any op could manually remove the bans, but it might take a lot of work. The command is restricted to SOPs because it is powerful, and if an AOP started manually removing bans, others would likely notice.

UOP
Usage: UOP #<room> <ADD|DEL|LIST|WIPE> [<entry>]
UOPs have the fifth highest level of access in a room. Only SOPs or higher may use WIPE, ADD and DEL. UOPs or above may use LIST. UOPs will be moded +u when they join the room. They will be able to receive memos sent to that room, as well as be able to enter even if the room is restricted. UOPs can use count, why, acc, access and see the room's lists.
Please note: There is a limit of 250 users that can be added to each list..
ADD - Add a user to a room's UOP list.
DEL - Remove a user from a room's UOP list.
LIST - List the UOPs for a room.
WIPE - Clear the UOP list of all entries.
Examples:
/msg chanserv uop #webchat ADD Trab
/msg chanserv uop #webchat DEL 2
/msg chanserv uop #webchat LIST
/msg chanserv uop #webchat WIPE
UserOps do not have much ability in a room. Basically, user ops are a part of the room, but they have no authority. They can enter unless banned, but they cannot change any modes.
You might want to add UOPs if you often send memos to the room and you want to include these people in those memos, without giving them much power. You also would want to add UOPs if you wish to set up a restricted room, so you can let them join without giving them power.

VOICE
Usage: VOICE #<room> <nick>
This command will voice (+v) you in the room. You must be a VOP or higher to use this command in the selected room. Much like the op command. You must be an AOP or higher to voice someone else.
Example:
/msg chanserv voice #spiderslair Jenkins
This command is mostly useful for voicing yourself in rooms where you are a VOP. When voicing others you would generally just mode them +v, but you can use services if you wish. Being able to voice yourself with services means that you do not need to leave and rejoin the room to be revoiced.

VOP
Usage: VOP #<room> <ADD|DEL|LIST|WIPE> [<nick or mask>]
VOPs have the fourth level of access in a room. They will be voiced when they enter the room, and they can always speak in the room.. Only an SOP can add or delete a VOP. The WIPE command will clear out the entire VOP list.
ADD - Add a user to a room's VOP list.
DEL - Remove a user from a room's VOP list.
LIST - List the VOP list entries.
WIPE - Clear the VOP list of all entries.
Examples:
/msg chanserv vop #support add theri
/msg chanserv vop #support del *user@*domain.net
/msg chanserv vop #support WIPE
/msg chanserv vop #support list
g chanserv vop #support list
VOPs are people given the ability to speak in a room. They are much like UOPs except that since they can voice themselves, they cannot be forced into silence without removing them from the room.

WHY
Usage: WHY #<room> <nick>
This command allows you to see why a certain user has status in a room. It will tell you what level of access services sees the user as having and why. For example, it might say that someone has AOP access because they identified with the nick password for a particular nick in the AOP list.
Example:
/msg chanserv why #conferenceroom Surfin
If someone enters the room and is given access that they should not have, you should always do a why on them. This will determine what problem needs to be fixed. The most common problem for rooms that do not set ident on is that the person happens to match a mask in the access lists for an op's nick.