IRC Services Manual

4. Services command reference

4-1. NickServ commands

4-2. ChanServ commands

4-3. MemoServ commands

4-4. OperServ commands

4-5. StatServ commands

4-6. Command index

Note: This section is based on the help messages included in IRC Services itself, which can be accessed by typing "/msg pseudoclient-name HELP" in IRC.

Table of Contents


4-1. NickServ commands


REGISTER

Syntax:
REGISTER password [E-mail]

Registers your nickname in the NickServ database. Once your nickname is registered, you can use the SET and ACCESS commands to configure your nickname's settings as you like them. Make sure you remember the password you use when registering; you'll need it to make changes to your nickname later. (Note that case matters! FIDO, Fido, and fido are all different passwords!)

You may include an E-mail address when registering your nickname; you may also set one later using the SET EMAIL command. (If the NSRequireEmail is set, the E-mail address is mandatory.)

Guidelines on choosing passwords:

Passwords should not be easily guessable. For example, using your real name as a password is a bad idea. Using your nickname as a password is a much worse idea and, in fact, NickServ will not allow it. Also, short passwords are vulnerable to trial-and-error searches, so you should choose a password at least 5 characters long.


AUTH (requires the nickserv/mail-auth module)

Syntax:
AUTH code

Authenticates registration or change of E-mail for a nickname. To ensure that your E-mail address is correct, NickServ will send an message containing an authentication code to the E-mail address given when you register your nickname or change your E-mail address with the SET EMAIL command. This command allows you to confirm that you have received the message and continue using your nickname normally. Replace code in the command with the nine-digit authentication code given in the E-mail message.


SENDAUTH (requires the nickserv/mail-auth module)

Syntax:
SENDAUTH

Sends you a copy of the authentication code for your nickname after a REGISTER or SET EMAIL. If you accidentally delete or otherwise lose the message with the authentication code, you can use this command to have an extra copy sent to you.

To prevent abuse, this command may only be used once every 24 hours.


SETAUTH (requires the nickserv/mail-auth module)

Syntax:
SETAUTH nickname

Sets a new authentication code for the given nickname. The nickname's owner will have to use the AUTH command for the nickname before being allowed to identify again. If the nickname is currently in use, a notice will be sent to the user of the nickname and they will no longer be treated as identified for the nickname.


GETAUTH (requires the nickserv/mail-auth module)

Syntax:
GETAUTH nickname

Retrieves the authentication code associated with nickname, if one exists.


CLEARAUTH (requires the nickserv/mail-auth module)

Syntax:
CLEARAUTH nickname

Clears any authentication code associated with nickname, allowing the nickname to be used normally.


SENDPASS (requires the nickserv/sendpass module)

Syntax:
SENDPASS nickname

Sends an E-mail message containing the given nickname's password to the E-mail address registered for the nickname. The address must have first been confirmed using the AUTH command.

If encryption (see section 3-7) is in use, this command may not be available depending on the type of encryption used.


IDENTIFY

Syntax:
IDENTIFY password

Tells NickServ that you are really the owner of this nickname. Many commands require you to authenticate yourself with this command before you use them. The password should be the same one you sent with the REGISTER command.


DROP

Syntax:
DROP password

De-registers (drops) your nickname from the NickServ database. A nickname that has been dropped is free for anyone to re-register.

Note that when you drop a nickname, all nicknames linked to it will be dropped as well. To remove a single linked nickname, use the UNLINK command.

To prevent accidental use of this command, you must enter your password in order to drop your nickname.


DROPNICK

Syntax:
DROPNICK nickname

Drops the given nickname from the NickServ database, as well as any linked nicknames.

Limited to Services admins.


DROPEMAIL

Syntax:
DROPEMAIL pattern
DROPEMAIL-CONFIRM pattern

Drops all nicknames with an E-mail address matching the given pattern. If pattern is the single character "-", drops all nicknames without an E-mail address.

To prevent accidentally dropping nicknames via this command, it must be given twice: first using the DROPEMAIL command name, then using DROPEMAIL-CONFIRM with the same pattern. The DROPEMAIL-CONFIRM command must be given within 10 minutes of (by default, changeable via the NSDropEmailExpire option in modules.conf) and by the same person who gave the DROPEMAIL command. If more than 4 DROPEMAIL commands are given in a row, the oldest will be discarded and no longer recognized for a DROPEMAIL-CONFIRM command.

Limited to Services admins.


LINK (requires the nickserv/link module)

Syntax:
LINK nickname

Links a new nickname to the nickname you are currently using, creating a new "alias" for your nick. The new nick will be equivalent to your current nick in terms of access privileges and memos; for example, you can read memos sent to one of your linked nicks from any other one, and if one of your nicks has auto-op privileges in a channel, you will get auto-opped no matter which linked nick you use.

To cancel a link, use the UNLINK command.

In order to use this command, you must identify for your current nickname (using the IDENTIFY command), and the nickname to be linked must not currently be in use.


UNLINK (requires the nickserv/link module)

Syntax:
UNLINK nickname [FORCE]

Removes a link (alias) to your nickname created with the LINK command. You cannot unlink the nickname you are currently using; change to another linked nick first before using this command.

If you unlink the "main nickname" you have selected using the SET MAINNICK command, your current nickname will automatically be selected as the main nickname.

Services admins may add the FORCE option, which allows removal of a link to a nickname other than their own.


LISTLINKS (requires the nickserv/link module)

Syntax:
LISTLINKS

Lists all nicknames which are linked to your nick. The main nickname for the group of linked nicks will be indicated by a "*" to the left of the nick.

Services admins may list links for any nick by specifying the nick in the command.


ACCESS (requires the nickserv/access module)

Syntax:
ACCESS ADD mask
ACCESS DEL mask
ACCESS LIST

Modifies or displays the access list for your nickname. This is the list of user@host addresses which will be automatically recognized by NickServ as allowed to use the nickname. If you connect to IRC with an address on this list, you will not be affected by the nick's SET KILL setting, and if the SET SECURE option is disabled, you will be able to receive auto-op and other privileges in channels without using the IDENTIFY command.

The mask given to the ADD and DELcommands may contain wildcards (* or ?).

Examples:

ACCESS ADD achurch@*.dragonfire.net
Allows access to user achurch from any machine in the dragonfire.net domain.
ACCESS DEL achurch@*.dragonfire.net
Reverses the previous command.
ACCESS LIST
Displays the current access list.

Services admins may give a nickname parameter to the LIST command to display the access list for any nickname.


AJOIN (requires the nickserv/autojoin module)

Syntax:
AJOIN ADD channel
AJOIN DEL channel
AJOIN LIST

Modifies or displays the autojoin list for your nickname. This is the list of channels that you would like to automatically join, and takes effect whenever you identify to NickServ. You may only put channel names starting with "#" in the autojoin list (local channels cannot be added).

Note that the IRC server may prohibit you from entering some channels on the autojoin list, such as channels that have a channel key set (mode +k) or are invite-only (mode +i). However, if you have access to the ChanServ INVITE command on a registered channel, NickServ will automatically invite you into the channel.

Services admins can list the autojoin list for any nickname with the format LIST nickname.


SET

Syntax:
SET option parameters

Sets various nickname options. option can be one of:

PASSWORD
Set your nickname password
LANGUAGE
Set the language Services will use when sending messages to you
URL
Associate a URL with your nickname
EMAIL
Associate an E-mail address with your nickname
INFO
Set text to be displayed with the INFO command
KILL
Turn kill protection on or off
SECURE
Turn nickname security on or off
PRIVATE
Prevent your nickname from appearing in a /msg NickServ LIST
HIDE
Hide certain pieces of nickname information
TIMEZONE
Set the time zone to use for displaying times
MAINNICK
Set the nickname shown in channel access lists

In order to use this command, you must first identify with your password (/msg NickServ HELP IDENTIFY for more information).

Services admins can also set the option NOEXPIRE, with which nicknames can be prevented from expiring. Additionally, Services admins can set options for any nickname without entering a password, using the format SET nickname option parameters.


SET PASSWORD

Syntax:
SET PASSWORD new-password

Changes the password used to identify you as the nickname's owner.


SET LANGUAGE

Syntax:
SET LANGUAGE number

Changes the language Services uses when sending messages to you (for example, when responding to a command you send). number should be chosen from the list of supported languages displayed with /msg NickServ HELP SET LANGUAGE.


SET URL

Syntax:
SET URL url

Associates the given URL with your nickname. This URL will be displayed whenever someone requests information on your nickname with the INFO command.


SET EMAIL

Syntax:
SET EMAIL address

Associates the given E-mail address with your nickname. This address will be displayed whenever someone requests information on your nickname with the INFO command.


SET INFO

Syntax:
SET INFO test

Associates the given text with your nickname; it will be displayed whenever someone requests information on your nickname with the INFO command.


SET KILL

Syntax:
SET KILL {ON | QUICK | IMMED | OFF}

Turns the automatic kill protection option for your nickname on or off. With kill protection on, if another user tries to take your nick, they will be given one minute to change to another nick, after which they will be forcibly removed from IRC by NickServ.

If you select QUICK, the user will be given only 20 seconds to change their nickname instead of the usual 60. If you select IMMED, the user will be killed immediately without being warned first or given a chance to change their nick; please do not use this option unless necessary. (IMMED can be disabled; see the NSAllowKillImmed option in modules.conf.)


SET SECURE

Syntax:
SET SECURE {ON | OFF}

Turns NickServ's security features on or off for your nickname. With SECURE set, you must enter your password before you will be recognized as the owner of the nick, regardless of whether your address is on the access list. However, if you are on the access list, NickServ will not auto-kill you regardless of the setting of the KILL option.


SET PRIVATE

Syntax:
SET PRIVATE {ON | OFF}

Turns NickServ's privacy option on or off for your nickname. With PRIVATE set, your nickname will not appear in nickname lists generated with NickServ's LIST command. (However, anyone who knows your nickname can still get information on it using the INFO command.)


SET HIDE

Syntax:
SET HIDE {EMAIL | USERMASK | QUIT} {ON | OFF}

Allows you to prevent certain pieces of information from being displayed when someone does a NickServ INFO on your nickname. You can hide your E-mail address (EMAIL), last seen user@host mask (USERMASK), and last quit message (QUIT). The second parameter specifies whether the information should be displayed (OFF) or hidden (ON).


SET TIMEZONE

Syntax:
SET TIMEZONE {UTC-offset | time-zone | DEFAULT}

Sets the time zone to use for displaying times (such as a nickname or channel's last used time), instead of using the time zone Services is operating in; the DEFAULT setting can be used to return to Services' time zone. The time zone can be specified in one of two ways:

Note that Services will not automatically adjust for daylight savings time (summer time); you will have to adjust the time zone manually.

Examples:

SET TIMEZONE -5
Set the time zone to 5 hours behind UTC.
SET TIMEZONE +3:30
Set the time zone to 3 hours, 30 minutes ahead of UTC.
SET TIMEZONE JST
Set the time zone to Japan Standard Time (UTC+9:00).


SET MAINNICK (requires the nickserv/link module)

Syntax:
SET MAINNICK nickname

When you have several nicknames linked together, allows you to select which one is displayed in channel access lists. If you later unlink this nick, then a different one will be selected automatically.


SET NOEXPIRE

Syntax:
SET [nickname] NOEXPIRE {ON | OFF}

Sets whether the given nickname will expire. Setting this to ON prevents the nickname from expiring. If no nickname is given, sets the no-expire flag for your nick.

Limited to Services admins.


UNSET

Syntax:
UNSET {URL | EMAIL | INFO}

Allows you to clear the URL (URL), E-mail address (EMAIL), or information text (INFO) associated with your nickname.

If the NSRequireEmail option is set in modules.conf, then the E-mail address cannot be cleared (UNSET EMAIL will generate an error).

Services admins may use the UNSET command on any nickname by including the nickname before the option name, as with the SET command.


RECOVER

Syntax:
RECOVER nickname [password]

Allows you to recover your nickname if someone else has taken it; this does the same thing that NickServ does automatically if someone tries to use a kill-protected nickname.

When you give this command, NickServ will bring a fake user online with the same nickname as the user you're trying to recover your nick from, causing the IRC servers to disconnect the other user. This fake user will remain online for one minute (by default, changeable with the NSReleaseTimeout option in modules.conf) to ensure that the other user does not immediately reconnect; after that time, you can reclaim your nick. Alternatively, use the RELEASE command to get the nick back sooner.

In order to use the RECOVER command for a nickname, you must supply the correct password for the nickname, or you must already have identified to a nick linked to the given nick.


RELEASE

Syntax:
RELEASE nickname [password]

Instructs NickServ to remove any hold on your nickname caused by automatic kill protection or use of the RECOVER command. By default, such holds last for one minute (changeable with the NSReleaseTimeout option in modules.conf); this command gets rid of them sooner.

In order to use the RELEASE command for a nickname, you must supply the correct password for the nickname, or you must already have identified to a nick linked to the given nick.


GHOST

Syntax:
GHOST nickname [password]

Terminates a "ghost" IRC session using your nickname. A "ghost" session is one which is not actually connected, but which the IRC server believes is still online for one reason or another. Typically, this happens if your computer crashes or your Internet or modem connection goes down while you're on IRC.

In order to use the GHOST command for a nickname, you must supply the correct password for the nickname, or you must already have identified to a nick linked to the given nick.


INFO

Syntax:
INFO nickname [ALL]

Displays information about the given nickname, such as the nickname's owner, last seen address and time, and options. If you are identified for the nick you're getting information for and ALL is specified, you will be shown all the information, regardless of whether it's hidden or not.

When the nickserv/mail-auth module is in use, if the nickname's E-mail address has not yet been confirmed with the AUTH command, it will not be shown to anyone except the nickname owner and Services administrators, regardless of the nickname's SET HIDE EMAIL setting.

Services admins may use the ALL parameter with any nickname.


LISTCHANS

Syntax:
LISTCHANS

Lists the names and the total number of channels you have registered under your nickname.

Services admins may list channels for any nickname by giving the nickname with the command (for example, /msg NickServ LISTCHANS OtherNick).


LIST

Syntax:
LIST pattern [FORBIDDEN] [NOEXPIRE] [SUSPENDED] [NOAUTH]

Lists all registered nicknames for which either the nickname itself or the last seen address (in user@host format) match the given pattern. Nicks with the PRIVATE option set will only be displayed to Services admins. For Services admins, nicks with the NOEXPIRE option set will have a ! prepended to the nickname, those that are suspended will be prepended by a *, and those that have not yet been authenticated (with the AUTH command) will be prepended by a ?.

If the FORBIDDEN, SUSPENDED, NOEXPIRE, or NOAUTH options are given, only nicks which, respectively, are forbidden, suspended, have the NOEXPIRE option set, or have not yet been authenticated will be displayed. The options can be used in any order and in any combination. These options are limited to Services admins. (Note that the NOAUTH option is not available unless the nickserv/mail-auth module is loaded.)

If the NSListOpersOnly option is given in modules.conf, only IRC operators will be allowed to use this command.

Examples:

LIST joeuser@foo.com
Lists all registered nicknames last used by joeuser@foo.com.
LIST *Bot*
Lists all registered nicknames with Bot in their names (case insensitive).
LIST * NOEXPIRE
Lists all registered nicknames which have been set to not expire.


LISTEMAIL

Syntax:
LISTEMAIL pattern [FORBIDDEN] [NOEXPIRE] [SUSPENDED] [NOAUTH]

Lists registered nicknames like the LIST command, but matches on E-mail addresses instead of user@host addresses. See the LIST command help for more information.


STATUS

Syntax:
STATUS nickname...

Returns whether the user using the given nickname is recognized as the owner of the nickname. The response has this format:

nickname status-code
where nickname is the nickname sent with the command, and status-code is one of the following:

0
no such user online or nickname not registered
1
user not recognized as nickname's owner
2
user recognized as owner via access list only
3
user recognized as owner via password identification
Up to sixteen nicknames may be sent with each command; the rest will be ignored. No error message is generated if no nickname is given.


GETPASS

Syntax:
GETPASS nickname

Returns the password for the given nickname. Note that whenever this command is used, a message including the person who issued the command and the nickname it was used on will be logged and, if the WallGetpass configuration option is set in ircservices.conf, sent out as a WALLOPS or GLOBOPS.

If encryption (see section 3-7) is in use, this command may not be available depending on the type of encryption used.

Limited to Services admins.


FORBID

Syntax:
FORBID nickname

Disallows a nickname from being registered or used by anyone. May be cancelled by dropping the nickname.

Limited to Services admins.


SUSPEND

Syntax:
SUSPEND [+expiry] nickname reason

Prevents a nickname, and all nicknames linked to it, from being used or identified for by anyone. A nickname can be unsuspended with the UNSUSPEND command, which will allow it to be used as before. The expiry parameter is interpreted in the same manner as for the OperServ AKILL command.

Limited to Services admins.


UNSUSPEND

Syntax:
UNSUSPEND nickname

Allows people to use and identify for a previously suspended nickname.

Limited to Services admins.


4-2. ChanServ commands


REGISTER

Syntax:
REGISTER channel password description

Registers a channel in the ChanServ database. In order to use this command, you must first be a channel operator on the channel you're trying to register. The password is used with the IDENTIFY command to allow you to make changes to the channel settings at a later time. The last parameter, which must be included, is a general description of the channel's purpose.

When you register a channel, you are recorded as the "founder" of the channel. The channel founder is allowed to change all of the channel settings for the channel; ChanServ will also automatically give the founder channel-operator privileges when s/he enters the channel. See the ACCESS command (/msg ChanServ HELP ACCESS) for information on giving a subset of these privileges to other channel users.

NOTICE: In order to register a channel, you must have first registered and identified for your nickname. If you haven't, /msg NickServ HELP for information on how to do so.

Non-Services admins may be prevented from registering channels by unsetting the CSEnableRegister option (enabled by default) in modules.conf


SENDPASS (requires the chanserv/sendpass module)

Syntax:
SENDPASS channel

Sends you an E-mail message containing the password for the given channel. You must be the founder of the channel to use this command, and you must first identify for your nickname with the NickServ IDENTIFY command.

If encryption (see section 3-7) is in use, this command may not be available depending on the type of encryption used.


IDENTIFY

Syntax:
IDENTIFY channel password

Authenticates you to ChanServ as the founder of the given channel. Many commands require you to use this command before using them. The password should be the same one you sent with the REGISTER command.


DROP

Syntax:
DROP channel

Unregisters the named channel. Can only be used by channel founder, who must use the IDENTIFY command first. (However, Services admins may drop any channel without identifying for the channel.)


SET

Syntax:
SET channel option parameters

Allows the channel founder to set various channel options and other information. The founder must use the IDENTIFY command before using SET.

Available options:

FOUNDER
Set the founder of a channel
SUCCESSOR
Set the successor for a channel
PASSWORD
Set the founder password
DESC
Set the channel description
URL
Associate a URL with the channel
EMAIL
Associate an E-mail address with the channel
ENTRYMSG
Set a message to be sent to users when they enter the channel
KEEPTOPIC
Retain topic when channel is not in use
TOPICLOCK
Topic can only be changed with TOPIC
MLOCK
Lock channel modes on or off
PRIVATE
Hide channel from LIST command
RESTRICTED
Restrict access to the channel
SECURE
Activate ChanServ security features
SECUREOPS
Stricter control of chanop status
LEAVEOPS
Do not de-op users on channel entry
OPNOTICE
Send a notice when OP/VOICE commands are used
ENFORCE
Enforce auto-op, auto-voice status

Services admins can also set the option NOEXPIRE, with which channels can be prevented from expiring. Additionally, Services admins can set options for any channel without identifying by password for the channel.


SET FOUNDER

Syntax:
SET channel FOUNDER nickname

Changes the founder of a channel. The new nickname must be a registered one.


SET SUCCESSOR

Syntax:
SET channel SUCCESSOR nickname

Changes the successor of a channel. If the founder's nickname expires or is dropped while the channel is still registered, the successor will become the new founder of the channel. However, if the successor already has too many channels registered (20 by default, changeable with the CSMaxReg directive in modules.conf), the channel will be dropped instead, just as if no successor had been set. The nickname must be a registered one.


SET PASSWORD

Syntax:
SET channel PASSWORD password

Sets the password used to identify as the founder of the channel.


SET DESC

Syntax:
SET channel DESC description

Sets the description for the channel, which shows up with the LIST and INFO commands.


SET URL

Syntax:
SET channel URL url

Associates the given URL with the channel. This URL will be displayed whenever someone requests information on the channel with the INFO command.


SET EMAIL

Syntax:
SET channel EMAIL address

Associates the given E-mail address with the channel. This address will be displayed whenever someone requests information on the channel with the INFO command.


SET ENTRYMSG

Syntax:
SET channel ENTRYMSG message

Sets the message which will be sent via /NOTICE to users when they enter the channel.


SET KEEPTOPIC

Syntax:
SET channel KEEPTOPIC {ON | OFF}

Enables or disables the topic retention option for a channel. When topic retention is set, the topic for the channel will be remembered by ChanServ even after the last user leaves the channel, and will be restored the next time the channel is created.


SET TOPICLOCK

Syntax:
SET channel TOPICLOCK {ON | OFF}

Enables or disables the topic lock option for a channel. When topic lock is set, ChanServ will not allow the channel topic to be changed except via the TOPIC command.


SET MLOCK

Syntax:
SET channel MLOCK modes

Sets the mode-lock parameter for the channel. ChanServ allows you to define certain channel modes to be always on (or off). All binary modes (n, s, t, k, l, and so on) can be locked; each mode can be locked on, locked off, or not locked. The modes parameter is constructed exactly the same way as a /MODE command; that is, modes followed by a + are locked on, and modes followed by a - are locked off.

Warning: If you set a mode-locked key, as in the second example below, you should also set the RESTRICTED option for the channel, or anyone entering the channel when it is empty will be able to see the key! MLOCK +i will likewise not prevent users from entering the channel when it is empty without being invited.

Examples:
SET #channel MLOCK +nt-ikl
Forces modes n and t on, and modes i, k, and l off. All other modes are left free to be either on or off.
SET #channel MLOCK +knst-ilmp my-key
Forces modes k, n, s, and t on, and modes i, l, m, and p off. Also forces the channel key to be "my-key".
SET #channel MLOCK +
Removes the mode lock; all channel modes are free to be either on or off.


SET HIDE

Syntax:
SET channel HIDE {EMAIL | TOPIC | MLOCK} {ON | OFF}

Allows you to prevent certain pieces of information from being displayed when someone does a ChanServ INFO on the given channel. You can hide the channel's E-mail address (EMAIL), last topic (TOPIC), and mode lock (MLOCK). The second parameter specifies whether the information should be displayed (OFF) or hidden (ON).

Note that the topic will always be hidden if the channel is mode-locked +p or +s.


SET PRIVATE

Syntax:
SET channel PRIVATE {ON | OFF}

Enables or disables the private option for a channel. When private is set, a /msg ChanServ LIST will not include the channel in any lists.


SET RESTRICTED

Syntax:
SET channel RESTRICTED {ON | OFF}

Enables or disables the restricted access option for a channel. When restricted access is set, users who are not on the access list or who would normally be disallowed from having channel operator privileges will be kicked and banned from the channel.


SET SECURE

Syntax:
SET channel SECURE {ON | OFF}

Enables or disables ChanServ's security features for a channel. When SECURE is set, only users who have registered their nicknames with NickServ and IDENTIFY'd with their password will be given privileges on the channel as controlled by the access list. If the RESTRICTED option is also set, users will not be able to join the channel until they identify to NickServ.


SET SECUREOPS

Syntax:
SET channel SECUREOPS {ON | OFF}

Enables or disables the secure ops option for a channel. When secure ops is set, users who are not on the access list will not be allowed chanop status.


SET LEAVEOPS

Syntax:
SET channel LEAVEOPS {ON | OFF}

Enables or disables the leave ops option for a channel. When leave ops is set, ChanServ will leave server ops (+o for the first person in the channel) in place even if the user would not normally get auto-opped. The SECUREOPS option will still be enforced. Notice: This can allow users to "steal" ops during a netsplit.


SET OPNOTICE

Syntax:
SET channel OPNOTICE {ON | OFF}

Enables or disables the op-notice option for a channel. When op-notice is set, ChanServ will send a notice to the channel whenever the OP, VOICE, or related commands are used for a user in the channel.


SET ENFORCE

Syntax:
SET channel ENFORCE {ON | OFF}

Enables or disables the enforce option for a channel. When enforce is set, ChanServ will enforce the auto-op and auto-voice levels for all users. For example, if a user with auto-op privileges is deopped, ChanServ will automatically op the user again, and ChanServ will also not allow the DEOP command to be used on that user.


SET NOEXPIRE

Syntax:
SET channel NOEXPIRE {ON | OFF}

Sets whether the given channel will expire. Setting this to ON prevents the channel from expiring.

Limited to Services admins.


UNSET

Syntax:
UNSET channel {SUCCESSOR | URL | EMAIL | ENTRYMSG}

Clears the given setting for a channel.

As with the SET command, Services admins can clear settings for any channel without identifying for the channel.


SOP (requires the chanserv/access-xop module)

Syntax:
SOP channel ADD nickname
SOP channel DEL nickname
SOP channel LIST [mask | list]
SOP channel COUNT

Maintains the SuperOp (SOP) list for a channel. Users with SOP status are automatically opped (set mode +o) and protected (mode +a), if supported by the IRC server) when they join the channel.

An SOP can modify the AOP, HOP (if the IRC server supports halfops), and VOP lists. Only a channel's founder can modify the SOP list.

The SOP LIST command displays the SOP list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:

SOP #channel LIST 2-5,7-9
Lists SOP list entries numbered 2 through 5 and 7 through 9.
The SOP COUNT command returns the number of entries there are on the SOP list.


AOP (requires the chanserv/access-xop module)

Syntax:
AOP channel ADD nickname
AOP channel DEL nickname
AOP channel LIST [mask | list]
AOP channel COUNT

Maintains the AutoOp (AOP) list for a channel. Users with AOP status are automatically opped (set mode +o) when they join the channel.

An AOP can modify the HOP (if the IRC server supports halfops) and VOP lists; SOPs can modify the AOP list.

The AOP LIST command displays the AOP list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:

AOP #channel LIST 2-5,7-9
Lists AOP list entries numbered 2 through 5 and 7 through 9.
The AOP COUNT command returns the number of entries there are on the AOP list.


HOP (requires the chanserv/access-xop module)

Syntax:
HOP channel ADD nickname
HOP channel DEL nickname
HOP channel LIST [mask | list]
HOP channel COUNT

Maintains the HalfOp (HOP) list for a channel. Users with HOP status are automatically halfopped (set mode +h) when they join the channel.

An HOP can modify the VOP list; SOPs and AOPs can modify the HOP list.

The HOP LIST command displays the HOP list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:

HOP #channel LIST 2-5,7-9
Lists HOP list entries numbered 2 through 5 and 7 through 9.
The HOP COUNT command returns the number of entries there are on the HOP list.

Note that this command is only available if the IRC server in use supports halfops.


VOP (requires the chanserv/access-xop module)

Syntax:
VOP channel ADD nickname
VOP channel DEL nickname
VOP channel LIST [mask | list]
VOP channel COUNT

Maintains the VoiceOp (VOP) list for a channel. Users with VOP status are automatically voiced (set mode +v) when they join the channel.

The VOP LIST command displays the VOP list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:

VOP #channel LIST 2-5,7-9
Lists VOP list entries numbered 2 through 5 and 7 through 9.
The VOP COUNT command returns the number of entries there are on the VOP list.


ACCESS (requires the chanserv/access-levels module)

Syntax:
ACCESS channel ADD nickname level
ACCESS channel DEL {nickname | entry-num | list}
ACCESS channel LIST [mask | list]
ACCESS channel COUNT

Maintains the access list for a channel. The access list specifies which users are allowed chanop status or access to ChanServ commands on the channel. Different user levels allow for access to different subsets of privileges; /msg ChanServ HELP ACCESS LEVELS for more specific information. Any nickname not on the access list has a user level of 0.

The ACCESS ADD command adds the given nickname to the access list with the given user level; if the nick is already present on the list, its access level is changed to the level specified in the command. The level specified must be less than that of the user giving the command, and if the nick is already on the access list, the current access level of that nick must be less than the access level of the user giving the command.

The ACCESS DEL command removes the given nickname from the access list. If a list of entry numbers is given, those entries are deleted. (See the example for LIST below.)

The ACCESS LIST command displays the access list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:

ACCESS #channel LIST 2-5,7-9
Lists access entries numbered 2 through 5 and 7 through 9.

The ACCESS COUNT command returns the number of entries there are on the access list.

Note that the access list may also be manipulated with the SOP, AOP, HOP, and VOP commands, which correspond to levels of 100, 50, 40, and 30 respectively, if the chanserv/access-xop module is also loaded.


LEVELS (requires the chanserv/access-levels module)

Syntax:
LEVELS channel SET type level
LEVELS channel {DIS | DISABLE} type
LEVELS channel LIST
LEVELS channel RESET

The LEVELS command allows fine control over the meaning of the numeric access levels used by the ACCESS command. With this command, you can define the access level required for most of ChanServ's functions. (The SET FOUNDER and SET PASSWORD commands, as well as this command, are always restricted to the channel founder.)

Caution: This command is for advanced users only! Changing level settings with this command may cause the SOP, AOP, HOP, and VOP commands to stop working correctly.

LEVELS SET allows the access level for a function or group of functions to be changed. LEVELS DISABLE (or DIS for short) disables an automatic feature or disallows access to a function by anyone other than the channel founder. LEVELS LIST shows the current levels for each function or group of functions. LEVELS RESET resets the levels to the default levels of a newly-created channel (see HELP ACCESS LEVELS).

For a list of the features and functions whose levels can be set, see HELP LEVELS DESC.


AKICK

Syntax:
AKICK channel ADD mask [reason]
AKICK channel DEL mask
AKICK channel LIST [mask | list]
AKICK channel VIEW [mask | list]
AKICK channel ENFORCE
AKICK channel COUNT

Maintains the autokick list for a channel. If a user on the autokick list attempts to join the channel, ChanServ will ban that user from the channel, then kick the user.

The AKICK ADD command adds the given user@host or nickname!user@host mask to the autokick list. If a reason is given with the command, that reason will be used when the user is kicked; if not, the default reason is "You have been banned from the channel".

The AKICK DEL command removes the given mask from the autokick list. It does not, however, remove any bans placed by an autokick; those must be removed manually.

The AKICK LIST command displays the autokick list, or optionally only those autokick entries which match the given mask. AKICK VIEW is similar, but shows more details.

The AKICK ENFORCE command causes ChanServ to enforce the current autokick list by removing those users who match an autokick mask.

The AKICK COUNT command returns how many entries there are on the autokick list.

By default, limited to users with level 100 (SOP) access and above on the channel.


INFO

Syntax:
INFO channel [ALL]

Lists information about the named registered channel, including its founder, time of registration, last time used, description, and mode lock, if any. If you are identified as the founder of the channel you're getting information for and ALL is specified, the entry message and successor will also be displayed.

Services admins can use the ALL parameter with any channel.


LIST

Syntax:
LIST pattern

Lists all registered channels matching the given pattern. Channels with the PRIVATE option set will only be displayed to Services admins. Channels with the NOEXPIRE option set will have a ! prepended to the channel name for Services admins.

If the FORBIDDEN, SUSPENDED or NOEXPIRE options are given, only channels which, respectively, are forbidden, suspended or have the NOEXPIRE flag set will be displayed. The options can be used in any order and in any combination. These options are limited to Services admins.

If the CSListOpersOnly option is given in modules.conf, only IRC operators will be allowed to use this command.


OP

Syntax:
OP #channel [nickname]

Ops a selected nickname on a channel. If nickname is not given, ops you. By default, limited to users with level 50 (AOP) access and above on the channel.


DEOP

Syntax:
DEOP #channel [nickname]

Deops a selected nickname on a channel. If nickname is not given, deops you. By default, limited to users with level 50 (AOP) access and above on the channel.


VOICE

Syntax:
VOICE #channel [nickname]

Voices a selected nickname on a channel. If nickname is not given, voices you. By default, limited to users with level 30 (VOP) access and above on the channel.


DEVOICE

Syntax:
DEVOICE #channel [nickname]

Devoices a selected nickname on a channel. If nickname is not given, devoices you. By default, limited to users with level 30 (VOP) access and above on the channel.


HALFOP

Syntax:
HALFOP #channel [nickname]

Gives halfop access to a selected nickname on a channel. If nickname is not given, gives you halfop access. By default, limited to users with level 40 (HOP) access and above on the channel. Only available with IRC servers which support halfops.


DEHALFOP

Syntax:
DEHALFOP #channel [nickname]

Removes halfop access from a selected nickname on a channel. If nickname is not given, removes halfop access from you. By default, limited to users with level 40 (HOP) access and above on the channel. Only available with IRC servers which support halfops.


PROTECT

Syntax:
PROTECT #channel [nickname]

Gives channel protection (mode +a) to a selected nickname on a channel. If nickname is not given, gives channel protection to you. By default, limited to users with level 100 (SOP) access and above on the channel. Only available with IRC servers which support this mode.


DEPROTECT

Syntax:
DEPROTECT #channel [nickname]

Removes channel protection (mode +a) from a selected nickname on a channel. If nickname is not given, removes channel protection from you. By default, limited to users with level 100 (SOP) access and above on the channel. Only available with IRC servers which support this mode.


INVITE

Syntax:
INVITE channel

Tells ChanServ to invite you into the given channel. By default, limited to users with level 50 (AOP) access and above on the channel.

Note: If you get a message saying that the channel is not in use, it means that the channel is empty, and you can join it freely without needing to use this command.


UNBAN

Syntax:
UNBAN channel

Tells ChanServ to remove all bans preventing you from entering the given channel. By default, limited to users with level 50 (AOP) access and above on the channel.


KICK

Syntax:
KICK channel nickname [reason]

Tells ChanServ to kick the given nickname from the given channel. The message included in the kick will show who used the KICK command, as well as the reason given with the command, if any. By default, limited to users with level 50 (AOP) access and above on the channel.

Note that protected (+a) users and IRC operators with Services operator privileges cannot be kicked with this command, even by the channel founder.


TOPIC

Syntax:
TOPIC channel topic

Causes ChanServ to set the channel topic to the one specified. This command is most useful in conjunction with SET TOPICLOCK. By default, limited to users with level 50 (AOP) access and above on the channel.


CLEAR

Syntax:
CLEAR channel what

Tells ChanServ to clear certain settings on a channel. what can be any of the following:

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 (only available if the IRC server supports ban exceptions).
INVITES
Clears all invite masks on the channel (only available if the IRC server supports invite masks).
OPS
Removes channel-operator status (mode +o) from all users.
HALFOPS
Removes halfop status (mode +h) from all users (only available if the IRC server supports halfops).
VOICES
Removes "voice" status (mode +v) from all users.
USERS
Removes (kicks) all users from the channel.

By default, limited to users with level 100 (SOP) access and above on the channel.


STATUS

Syntax:
STATUS channel nickname

Returns the current access level of the given nickname on the given channel. The reply is of the form:

STATUS channel nickname access-level
If an error occurs, the reply will be in the form:

STATUS channel nickname ERROR error-message
By default, limited to users with level 100 (SOP) access and above on the channel.

The format of the access-level response parameter depends on which access-level modules are loaded, as follows:

access-levels
module
access-xop
module
Format
Loaded Not loaded numeric-level
Loaded Loaded numeric-level (XOP-level)
Not loaded Loaded XOP-level

In the table, numeric-level is the numeric access level, while XOP-level is one of "Founder", "SOP", "AOP", "HOP" (if the IRC server supports halfops), "VOP", or "---" (meaning no privileges). These strings do not change regardless of the user's NickServ language setting.


GETPASS

Syntax:
GETPASS channel

Returns the password for the given channel. Note that whenever this command is used, a message including the person who issued the command and the channel it was used on will be logged and, if the WallGetpass configuration option is set in ircservices.conf, sent out as a WALLOPS or GLOBOPS.

If encryption (see section 3-7) is in use, encryption may not be available depending on the type of encryption used.

Limited to Services admins.


FORBID

Syntax:
FORBID channel

Disallows anyone from registering or using the given channel. May be cancelled by dropping the channel.

Limited to Services admins.


SUSPEND

Syntax:
SUSPEND [+expiry] channel reason

Prevents a channel from being used or identified for by anyone. The channel can be unsuspended with the UNSUSPEND command, which will allow it to be used as before. The expiry parameter is interpreted in the same manner as for the OperServ AKILL command.

Limited to Services admins.


UNSUSPEND

Syntax:
UNSUSPEND channel

Allows users to use and identify for a previously suspended channel.

Limited to Services admins.


4-3. MemoServ commands


SEND

Syntax:
SEND {nickname | channel} memo-text

Sends the named nickname or channel a memo containing memo-text. When sending to a nickname, the recipient will receive a notice that he/she has a new memo. The target nickname/channel must be registered.


LIST

Syntax:
LIST [channel] [num | list | NEW]

Lists any memos you currently have. With NEW, lists only new (unread) memos. Unread memos are marked with a "*" to the left of the memo number; memos that will not expire are marked with a "+". You can also specify a list of numbers, as in the example below:

LIST 2-5,7-9
Lists memos numbered 2 through 5 and 7 through 9.


READ

Syntax:
READ [channel] {num | list | LAST | NEW}

Sends you the text of the memos specified. If LAST is given, sends you the memo you most recently received. If NEW is given, sends you all of your new memos. Otherwise, sends you memo number num. You can also give a list of numbers, as with the LIST command.


SAVE

Syntax:
SAVE [channel] {num | list}

Marks the given memo or memos as non-expiring. You can give either a single memo number or, as with the LIST command, a list of memos.

Note that this command will not be available if the MSExpire option is not set (since there would be no point in using it).


DEL

Syntax:
DEL [channel] {num | list | ALL}

Deletes the specified memo or memos. You can supply multiple memo numbers or ranges of numbers instead of a single number, as with the LIST command; you can also give the word ALL, which causes all of your memos to be deleted.

Warning: Once a memo is deleted, it cannot be recovered!


SET

Syntax:
SET option parameters

Sets various memo options. option can be one of:

NOTIFY
Changes when you will be notified about new memos (only for nicknames)
LIMIT
Sets the maximum number of memos you can receive
FORWARD
Sets whether memos are automatically forwarded to you


SET NOTIFY

Syntax:
SET NOTIFY {ON | LOGON | NEW | OFF}

Changes when you will be notified about new memos:

ON
You will be notified of memos when you log on, when you unset /AWAY, and when they are sent to you.
LOGON
You will only be notified of memos when you log on or when you unset /AWAY.
NEW
You will only be notified of memos when they are sent to you.
OFF
You will not receive any notification of memos.
ON is equivalent to LOGON and NEW combined.

Note that if your nickname has the "secure" setting on, you will only be notified of new memos (for LOGON or ON) after you identify to NickServ.


SET LIMIT

Syntax:
SET LIMIT [nickname | channel] {limit | NONE | DEFAULT} [HARD]

Sets the maximum number of memos a nickname (or channel) is allowed to have. Setting the limit to 0 prevents the nick from receiving any memos; setting it to NONE allows the nick to receive and keep as many memos as they want; and setting it to DEFAULT restores the limit to the default value (MSMaxMemos in modules.conf, 20 by default). If you do not give a nickname or channel, your own limit is set.

Adding HARD prevents the user from changing the limit. Not adding HARD has the opposite effect, allowing the user to change the limit (even if a previous limit was set with HARD).

This use of the SET LIMIT command is limited to Services admins. Other users may only enter a limit for themselves or a channel on which they have such privileges, may not remove their limit or set their limit to the default, may not set a limit above the default limit, and may not set a hard limit.


INFO

Syntax:
INFO [nickname | channel]

Without a parameter, displays information on the number of memos you have, how many of them are unread, how many total memos you can receive and when you are notified of new ones.

With a channel parameter, displays the same information for the given channel.

With a nickname parameter, displays the same information for the given nickname. This use limited to Services admins.


FORWARD (requires the memoserv/forward module)

Syntax:
FORWARD {num | list | ALL}

Forwards one or more of your memos to your E-mail address. You must have a valid E-mail address set for your nickname in order to use this command. Channel memos cannot be forwarded.


SET FORWARD (requires the memoserv/forward module)

Syntax:
SET FORWARD {ON | COPY | OFF}

Sets whether MemoServ automatically forwards to your E-mail address memos sent to you. When set to ON, memos sent to your nickname will instead be forwarded to the E-mail address registered with your nickname. COPY is similar, but also causes MemoServ to save a copy of the memo to read online. When set to OFF, your memos will be stored online as usual. Even if you set this option to ON, you may still receive memos online if Services is unable to forward them to you.

Note that when this option is set to COPY and you have received the maximum number of memos you are allowed to, you will not be able to receive any new memos (including by E-mail) until you delete some old memos using the DEL command.


IGNORE (requires the memoserv/ignore module)

Syntax:
IGNORE {ADD | DEL | LIST} [nickname | mask]

Controls the list of "ignored" users; users whose nickname or user@host mask match an entry on this list are not allowed to send you memos. ADD adds the given nickname or user@host mask to your ignore list, and DEL removes the given nickname or mask from the list; LIST displays your current ignore list.

Note that the nickname or mask given to the ADD command may contain "*" or "?" wildcards, and is not case-sensitive; for example, "*Evil*" matches "EvilNick", "AN_EVIL_USER" and "devil".


4-4. OperServ commands


GLOBAL

Syntax:
GLOBAL message

Allows IRCops to send messages to all users on the network. The message will be sent from the nickname "Global" (which can be changed with the GlobalName option in modules.conf).


STATS

Syntax:
STATS [RESET | NETWORK | AKILL | ALL]

Without any option, shows the current number of users and IRCops online (excluding Services), the highest number of users online since Services was started, and the length of time Services has been running.

With the RESET option, resets the maximum user count to the number of users currently online.

With the NETWORK option, shows the amount of data sent to and received from the remote server, and the amount of memory used by network send/receive buffers. The ratio of the current buffer memory usage to the buffer size limit is also displayed as a percentage if a limit is configured (via NetBufferSize in ircservices.conf).

With the AKILL option, displays the current size of the AKILL list and the current default expiry time.

The ALL option is available only to Services admins, and displays information on Services' memory usage. Using this option can freeze Services for a short period of time on large networks, so don't overuse it!

UPTIME may be used as a synonym for STATS.


SERVERMAP

Syntax:
SERVERMAP

Displays a map of servers connected to the network, from the viewpoint of Services. "Fake" servers—Services itself and any servers jupitered with the JUPE command—have "(*)" displayed after the sever name.


OPER

Syntax:
OPER ADD nickname
OPER DEL nickname
OPER LIST

Allows Services admins to add or remove nicknames to or from the Services operator list. A user whose nickname is on the Services operator list and who has identified to NickServ will be able to access Services operator commands.

Any IRC operator may use the OPER LIST form of the command. All other use limited to Services admins.


ADMIN

Syntax:
ADMIN ADD nickname
ADMIN DEL nickname
ADMIN LIST

Allows the Services super-user to add or remove nicknames to or from the Services admin list. A user whose nickname is on the Services admin list and who has identified to NickServ will be able to access Services admin commands.

Any IRC operator may use the ADMIN LIST form of the command. All other use limited to Services super-user.


MODE

Syntax:
MODE channel modes

Allows Services operators to set channel modes for any channel. Parameters are the same as for the standard /MODE command.

Limited to Services operators.


CLEARMODES

Syntax:
CLEARMODES channel [ALL]

Clears all binary modes (n, s, t, k, l, and so on) and bans from a channel. If ALL is given, also clears all user modes (like +o and +v) from the channel.

Limited to Services operators.


CLEARCHAN

Syntax:
CLEARCHAN channel

Removes all users from a channel (masskick).

Limited to Services operators.


KICK

Syntax:
KICK channel user reason

Allows IRCops to kick a user from any channel. Parameters are the same as for the standard /KICK command. The kick message will have the nickname of the IRCop sending the KICK command prepended; for example:

*** SpamMan has been kicked off channel #my_channel by OperServ (Alcan (Flood))

Limited to Services operators.


AKILL (requires the operserv/akill module)

Syntax:
AKILL ADD [+expiry] mask reason
AKILL DEL mask
AKILL LIST [mask] [NOEXPIRE]
AKILL VIEW [mask] [NOEXPIRE]
AKILL COUNT

Allows Services operators to manipulate the autokill (AKILL) list. If a user matching an AKILL mask attempts to connect, Services will issue a KILL for that user and, on supported server types, will instruct all servers to add a ban (K-line) for the mask which the user matched.

AKILL ADD adds the given user@host mask to the AKILL list for the given reason (which must be given). AKILL DEL removes the given mask from the AKILL list if it is present. AKILL LIST shows all current AKILLs; if the optional mask is given, the list is limited to those AKILLs matching the mask. AKILL VIEW is a more verbose version of AKILL LIST, and will show who added an AKILL, the date it was added, and when it expires, as well as the user@host mask and reason. If the NOEXPIRE option is given, then only AKILLs that will not expire, and match the given user@host mask, will be displayed. AKILL COUNT simply returns the number of AKILLs in the AKILL list.

Optionally, an expiry time can be given with the AKILL ADD command. The expiry time precedes the user@host mask, and is specified as an integer followed by one of "d" (days), "h" (hours), or "m" (minutes). Combinations (such as 1h30m) are also permitted. If a unit specifier is not included, the default is days (so +30 by itself means 30 days). To add an AKILL which does not expire, use +0. If the usermask to be added starts with a +, an expiry time must be given, even if it is the same as the default. The current AKILL default expiry time can be found with the STATS AKILL command.

The reason should describe why the entry is being added; depending on how Services is configured, it may also be displayed to users in KILL messages.

If the OperMaxExpiry option is set in modules.conf, Services operators may only set an expiry time up to that limit; otherwise, they may set any expiry time. Services administrators can always set any expiry time.

Limited to Services operators.


AKILLCHAN (requires the operserv/akill module)

Syntax:
AKILLCHAN [KILL] [+expiry] channel reason

Adds autokills for all users except IRC operators in a given channel, and optionally (if KILL is given) removes them from the network. The reason will be stored with each autokill, and may be displayed in kill messages depending on how Services is configured. expiry takes the same format as in the AKILL ADD command; if not given, it defaults to the value given in the AkillChanExpiry directive in modules.conf.

Autokills added by this command will have the form *@hostname, for each hostname used by a client in the channel. If such an autokill already exists for a hostname, it will not be modified; this may cause the number of autokills added to be less than the number of users affected. Also, these autokills will automatically be sent to the IRC network regardless of the status of the ImmediatelySendAutokill setting.

Limited to Services operators.


EXCLUDE (requires the operserv/akill module)

Syntax:
EXCLUDE ADD [+expiry] mask reason
EXCLUDE DEL mask
EXCLUDE LIST [mask] [NOEXPIRE]
EXCLUDE VIEW [mask] [NOEXPIRE]
EXCLUDE COUNT

Allows Services operators to manipulate the autokill exclusion list. When a user matching an autokill exclusion mask connects to the network, Services will not issue a KILL for that user even if the user would otherwise match an autokill mask. This is useful if you have wide autokill masks, and still want specific hosts or users that match those masks to be able to connect.

The ADD, DEL, LIST, VIEW, and COUNT subcommands function the same way as the subcommands for the AKILL command; see the AKILL help for more information. (Note that autokill exclusions are not affected by the state of the ImmediatelySendAutokill setting, and are always immediately sent to the server.)

Limited to Services operators.


SGLINE (requires the operserv/sline module)

Syntax:
SGLINE ADD [+expiry] mask reason
SGLINE DEL mask
SGLINE LIST [mask] [NOEXPIRE]
SGLINE VIEW [mask] [NOEXPIRE]
SGLINE COUNT

Allows Services operators to manipulate the SGLINE list. If a user whose "real name" matches an SGLINE mask attempts to connect, Services will issue a KILL for that user and, on supported server types, will instruct all servers to add a ban (server G-line) for the mask which the user matched.

SGLINE ADD adds the given real name mask to the SGLINE list for the given reason (which must be given). SGLINE DEL removes the given mask from the SGLINE list if it is present. SGLINE LIST shows all SGLINE entries; if the optional mask is given, the list is limited to those entries matching the mask. SGLINE VIEW is a more verbose version of SGLINE LIST, and will show who added each SGLINE entry, the date it was added, when it was last used, and when it expires, as well as the mask and reason. If the NOEXPIRE option is given, then only entriess that both will not expire and match the given mask will be displayed. SGLINE COUNT simply returns the number of entries in the SGLINE list. The mask parameter may be enclosed in double quotes, and must be when the mask contains spaces; for example:

/msg OperServ SGLINE ADD +0 "bad name" This is a bad name.

Optionally, an expiry time can be given with the SGLINE ADD command. The expiry time precedes the user@host mask, and is specified as an integer followed by one of "d" (days), "h" (hours), or "m" (minutes). Combinations (such as 1h30m) are also permitted. If a unit specifier is not included, the default is days (so +30 by itself means 30 days). To add an entry which does not expire, use +0. If the mask to be added starts with a + and no expiry time is given, the mask must be enclosed in double quotes, as described above.

The reason should describe why the entry is being added; depending on how Services is configured, it may also be displayed to users in KILL messages.

Limited to Services operators.


SQLINE (requires the operserv/sline module)

Syntax:
SQLINE ADD [+expiry] mask reason
SQLINE DEL mask
SQLINE LIST [mask] [NOEXPIRE]
SQLINE VIEW [mask] [NOEXPIRE]
SQLINE COUNT

Allows Services operators to manipulate the SQLINE list. If a user whose nickname matches an SQLINE mask attempts to connect, Services will either (1) if the SQlineKill option is set in modules.conf or the IRC server type in use does not support forced nick changing, issue a KILL for that user; or (2) change the user's nickname to a "guest" nickname, and send the user a message that will normally cause the user's IRC client to request a new nickname. On supported server types, Services will also instruct all servers to add a ban (server Q-line) for the mask which the user matched.

If the SQlineIgnoreOpers option is set in modules.conf, then IRC operators will not be affected by SQlines.

The ADD, DEL, LIST, and VIEW, and COUNT subcommands can be used to add, delete, view (short or long version), or count the number of entries in the SQLINE list. See the help for SGLINE for details.

Limited to Services operators.


SZLINE (requires the operserv/sline module)

Syntax:
SZLINE ADD [+expiry] mask reason
SZLINE DEL mask
SZLINE LIST [mask] [NOEXPIRE]
SZLINE VIEW [mask] [NOEXPIRE]
SZLINE COUNT

Allows Services operators to manipulate the SZLINE list. If a user whose IP address matches an SZLINE mask attempts to connect, Services will issue a KILL for that user and, on supported server types, will instruct all servers to add a ban (server Z-line) for the mask which the user matched.

The ADD, DEL, LIST, and VIEW, and COUNT subcommands can be used to add, delete, view (short or long version), or count the number of entries in the SZLINE list. See the help for SGLINE for details.

Note that SZlines are not supported by all IRC servers, and this command will not be available when using a server without SZline support. Some servers may require the ImmediatelySendSline option in modules.conf to be set in order to use SZlines.

Limited to Services operators.


EXCEPTION (requires the operserv/sessions module)

Syntax:
EXCEPTION ADD [+expiry] mask limit reason
EXCEPTION DEL {mask | list}
EXCEPTION MOVE num newnum
EXCEPTION LIST [mask | list]
EXCEPTION VIEW [mask | list]

Allows Services operators to manipulate the list of hosts that have specific session limits, allowing certain machines, such as shell servers, to carry more than the default number of clients at a time. Once a host reaches its session limit, all clients attempting to connect from that host will be killed. Before the user is killed, they are notified, via a /NOTICE from OperServ, of a source of help regarding session limiting. The content of this notice is a configuration setting (SessionLimitExceeded and SessionLimitDetailsLoc in modules.conf).

EXCEPTION ADD adds the given host mask to the exception list. Note that nick!user@host and user@host masks are invalid! Only real host masks, such as box.host.dom and *.host.dom, are allowed because sessions limiting does not take nick or user names into account. limit must be a number greater than or equal to zero; this determines how many sessions this host may carry at a time (a value of zero means the host has an unlimited session limit).

Optionally, an expiry time can be given with the EXCEPTION ADD command. The expiry time precedes the host mask, and is specified as an integer followed by one of "d" (days), "h" (hours), or "m" (minutes). Combinations (such as 1h30m) are also permitted. If a unit specifier is not included, the default is days (so +30 by itself means 30 days). To add an entry which does not expire, use +0. If the mask to be added starts with a +, an expiry time must be given, even if it is the same as the default.

EXCEPTION DEL removes the given mask or numbered entry or entries from the exception list (entry numbers can be found with VIEW or LIST).

EXCEPTION MOVE moves exception num to newnum. If newnum is already used by another exception, its number will be increased to make room.

EXCEPTION LIST and EXCEPTION VIEW show all current exceptions; if the optional mask is given, the list is limited to those exceptions matching the mask. The difference between the two commands is that EXCEPTION VIEW is more verbose, displaying the name of the person who added the exception, its session limit, reason, host mask and the expiry date and time, as well as the last time the exception was "used", i.e. the last time a user connected who matched the exception's mask.

Note that a connecting client will "use" the first exception their host matches. Large exception lists and widely matching exception masks are likely to degrade Services' performance.

Limited to Services operators.


SESSION (requires the operserv/sessions module)

Syntax:
SESSION LIST threshold
SESSION VIEW host

Allows Services operators to view the session list.

SESSION LIST lists hosts with at least threshold sessions. The threshold must be a number greater than 1, to prevent accidental listing of the large number of single session hosts.

SESSION VIEW displays detailed information about a specific host, including the current session count and session limit. The host value may not include wildcards.

See the EXCEPTION help for more information about session limiting and how to set session limits specific to certain hosts and groups thereof.

Limited to Services operators.


SU

Syntax:
SU password

Allows access to functions which require Services super-user privileges. The password is the same as that set with the SET SUPASS command; note that the password must be set once before using this command. Super-user privileges last until you quit IRC.

WARNING: If you enter an incorrect password, Services will broadcast a warning message to all IRC operators.

Limited to Services admins.


SET

Syntax:
SET option setting

Sets various global Services options. Option names currently defined are:

READONLY
Set read-only or read-write mode
DEBUG
Activate or deactivate debug mode
SUPASS
Set password for SU command (super-user)

Limited to Services admins; the SUPASS option may only be set by the Services super-user.


SET READONLY

Syntax:
SET READONLY {ON | OFF}

Sets read-only mode on or off. In read-only mode, normal users will not be allowed to modify any Services data, including channel and nickname access lists, etc. IRCops with sufficient Services privileges will be able to modify Services' AKILL list and drop or forbid nicknames and channels, but any such changes will not be saved unless read-only mode is deactivated before Services is terminated or restarted.

This option is equivalent to the command-line option -readonly.


SET DEBUG

Syntax:
SET DEBUG {ON | OFF | num}

Sets debug mode on or off. In debug mode, all data sent to and from Services as well as a number of other debugging messages are written to the log file. If num is given, debug mode is activated, with the debugging level set to num.

This option is equivalent to the command-line option -debug.


SET SUPASS

Syntax:
SET SUPASS [password]

Sets the password to be used for the SU command. The password must be set once before using the SU command for the first time. If no password is given, the SU command will be unavailable.

This option may only be set by the Services super-user.


JUPE

Syntax:
JUPE server [reason]

Tells Services to jupiter a server—that is, to create a fake "server" connected to Services which prevents the real server of that name from connecting. The jupe may be removed using a standard /SQUIT. If a reason is given, it is placed in the server information field; otherwise, the server information field will contain the text "Jupitered by nickname", showing the nickname of the person who jupitered the server.

Limited to Services admins.


RAW

Syntax:
RAW text

Sends a string of text directly to the server to which Services is connected. This command has a very limited range of uses, and can wreak havoc on a network or cause Services to crash if used improperly. DO NOT USE THIS COMMAND unless you are absolutely certain you know what you are doing!

Limited to the Services super-user.


UPDATE

Syntax:
UPDATE [FORCE]

Causes Services to update all database files as soon as you send the command. If the FORCE option is given, Services will attempt to unlock the databases before performing the update; this can be used to fix "databases are locked" errors when updating the databases.

Limited to Services admins.


QUIT

Syntax:
QUIT

Causes Services to do an immediate shutdown; databases are not saved. This command should not be used unless damage to the in-memory copies of the databases is feared and they should not be saved. For normal shutdowns, use the SHUTDOWN command.

Limited to Services admins.


SHUTDOWN

Syntax:
SHUTDOWN

Causes Services to save all databases and then shut down.

Limited to Services admins.


RESTART

Syntax:
RESTART

Causes Services to save all databases and then restart (i.e. exit and immediately re-run the executable).

Limited to Services admins.


REHASH

Syntax:
REHASH

Causes Services to re-read its configuration files and update active settings. Some settings, such as RemoteServer (which sets the hostname of the IRC server to connect to), cannot be changed with REHASH, and will only take effect when Services is restarted; in these cases, a message will be written to the Services log file, and a notice will be sent notifying you of this.

If LoadModule lines have been added to or removed from the main Services configuration file (ircservices.conf), modules will be loaded or unloaded as needed. Modules which no longer have a LoadModule line will be unloaded in reverse order of loading; then, after the remaining modules have been rehashed, new modules will be loaded in the order listed in the configuration file. If an error occurs at any step, rehashing will be aborted.

Note that due to module dependencies, some modules cannot be removed or changed via REHASH; in such cases, you will need to restart Services for the changes to take effect.

Limited to Services admins.


KILLCLONES

Syntax:
KILLCLONES nickname

Kills all users who have the same hostname as nickname. A temporary AKILL, in the form *@host, is added to prevent the offending clients from immediately reconnecting. A WALLOPS is also sent indicating who used the command, which host was affected, and how many users were killed. It's useful for removing numerous clones from the network.

Limited to Services operators.


LOGONNEWS

Syntax:
LOGONNEWS ADD text LOGONNEWS DEL {num | ALL} LOGONNEWS LIST

Edits or displays the list of logon news messages. When a user connects to the network, these messages will be sent to them. (However, no more than three messages will be sent in order to avoid flooding the user. If there are more than three news messages, only the three most recent will be sent.)

LOGONNEWS LIST may be used by any IRC operator to list the current news messages. ADD and DEL may only be used by Services administrators.


OPERNEWS

Syntax:
OPERNEWS ADD text OPERNEWS DEL {num | ALL} OPERNEWS LIST

Edits or displays the list of logon news messages. When a user opers up (with the /OPER command), these messages will be sent to them. (However, no more than three messages will be sent in order to avoid flooding the user. If there are more than three news messages, only the three most recent will be sent.)

OPERNEWS LIST may be used by any IRC operator to list the current news messages. ADD and DEL may only be used by Services administrators.

Back to top


4-5. StatServ commands


SERVERS

Syntax:
SERVERS STATS
SERVERS LIST [mask]
SERVERS VIEW [mask] [ONLINE | OFFLINE]
SERVERS DELETE server
SERVERS COPY server newname
SERVERS RENAME server newname

Displays statistics relating to the network's servers.

SERVERS STATS displays a brief summary of the servers currently visible (online) and invisible (offline) to Services. SERVERS LIST displays a list of online servers and current statistics about each. SERVERS VIEW displays a list of online and offline servers with detailed statistics about each. The ONLINE and OFFLINE options cause, respectively, only online or offline servers to be shown.

Use the mask option to limit which servers' statistics are shown.

DELETE deletes the specified server's statistics.
COPY duplicates a set of server statistics.
RENAME rename's a set of server statistics.
These three commands are limited to Services administrators.


USERS

Syntax:
USERS STATS

Displays statistics relating to the network's users.

Back to top


4-6. Command index

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A


ACCESS (ChanServ)
ACCESS (NickServ)
ADMIN
AJOIN
AKICK
AKILL
AOP
AUTH

B

C


CLEAR
CLEARAUTH
CLEARCHAN
CLEARMODES

D


DEHALFOP
DEL
DEOP
DEPROTECT
DEVOICE
DROP (ChanServ)
DROP (NickServ)
DROPEMAIL
DROPNICK

E


EXCEPTION

F


FORBID (ChanServ)
FORBID (NickServ)
FORWARD

G


GETAUTH
GETPASS (ChanServ)
GETPASS (NickServ)
GHOST
GLOBAL

H


HALFOP
HOP

I


IDENTIFY (ChanServ)
IDENTIFY (NickServ)
IGNORE
INFO (ChanServ)
INFO (MemoServ)
INFO (NickServ)
INVITE

J


JUPE

K


KICK (ChanServ)
KICK (OperServ)
KILLCLONES

L


LEVELS
LINK
LIST (ChanServ)
LIST (MemoServ)
LIST (NickServ)
LISTCHANS
LISTEMAIL
LISTLINKS
LOGONNEWS

M


MODE

N

O


OP
OPER
OPERNEWS

P


PROTECT

Q


QUIT

R


RAW
READ
RECOVER
REGISTER (ChanServ)
REGISTER (NickServ)
REHASH
RELEASE
RESTART

S


SAVE
SEND
SENDAUTH
SENDPASS (ChanServ)
SENDPASS (NickServ)
SERVERMAP
SERVERS
SESSION
SET (ChanServ)
SET (MemoServ)
SET (NickServ)
SET (OperServ)
SET DEBUG
SET DESC
SET EMAIL (ChanServ)
SET EMAIL (NickServ)
SET ENFORCE
SET ENTRYMSG
SET FORWARD
SET FOUNDER
SET HIDE (ChanServ)
SET HIDE (NickServ)
SET KEEPTOPIC
SET KILL
SET LANGUAGE
SET LEAVEOPS
SET LIMIT
SET MAINNICK
SET MLOCK
SET NOEXPIRE (ChanServ)
SET NOEXPIRE (NickServ)
SET NOTIFY
SET OPNOTICE
SET PASSWORD (ChanServ)
SET PASSWORD (NickServ)
SET PRIVATE (ChanServ)
SET PRIVATE (NickServ)
SET READONLY
SET RESTRICTED
SET SECURE (ChanServ)
SET SECURE (NickServ)
SET SECUREOPS
SET SUCCESSOR
SET SUPASS
SET TIMEZONE
SET TOPICLOCK
SET URL (ChanServ)
SET URL (NickServ)
SETAUTH
SGLINE
SHUTDOWN
SOP
SQLINE
STATS
STATUS (ChanServ)
STATUS (NickServ)
SU
SUSPEND (ChanServ)
SUSPEND (NickServ)
SZLINE

T


TOPIC

U


UNBAN
UNLINK
UNSET (ChanServ)
UNSET (NickServ)
UNSUSPEND (ChanServ)
UNSUSPEND (NickServ)
UPDATE
USERS

V


VOICE
VOP

W

X

Y

Z

Back to top


Table of Contents | Previous section: Overview of Services features | Top | Next section: Importing and exporting databases