Freenode

irc.freenode.net
ircd-seven-1.0.1 - Atheme IRC Services



Freenode ChanServ Commands



ChanServ
Atheme IRC Services

ChanServ gives normal users the ability to maintain control of a channel, without the need of a bot. Channel takeovers are virtually impossible when a channel is registered with ChanServ. Registration is a quick and painless process. Once registered, the founder can maintain complete and total control over the channel. Please note that channels will expire if there are no eligible channel successors. Successors are primarily those who have the +R flag set on their account in the channel, although other people may be chosen depending on their access level and activity.

For more information on a command, type:

/msg ChanServ help <command>

For a verbose listing of all commands, type:

/msg ChanServ help commands



ChanServ Commands


Help Flags Access Akick
Taxonomy     Getkey Unban Op|DeOp|Voice|DeVoice
Template Recover     Topic Topicprepend
Register Drop Set Quiet
Info Invite Why Clear
Count Status Topicappend     Unquiet




HELP
Displays contextual help information.

HELP displays help information on all commands in services.

Syntax: HELP <command> [parameters]

Examples:

/msg ChanServ HELP REGISTER

/msg ChanServ HELP SET VERBOSE



REGISTER
Registers a channel.

REGISTER allows you to register a channel so that you have better control. Registration allows you to maintain a channel access list and other functions that are normally provided by IRC bots.

Syntax: REGISTER <#channel>

Example:

/msg ChanServ REGISTER #atheme



FLAGS
Manipulates specific permissions on a channel.

The FLAGS command allows for the granting/removal of channel privileges on a more specific, non-generalized level. It supports both nicknames and hostmasks as targets.

When only the channel argument is given, a listing of permissions granted to users will be displayed.

Syntax: FLAGS <#channel>

Otherwise, an access entry is modified. A modification may be specified by a template name (changes the access to the template) or a flags change (starts with + or -). See the TEMPLATE help entry for more information about templates.

If you are not a founder, you may only manipulate flags you have yourself, and may not edit users that have flags you don't have. For this purpose, +v grants +V, +h grants +H, +o grants +O and +r grants +b.

If you do not have +f you may still remove your own access with -*.

Syntax: FLAGS <#channel> [nickname|hostmask template]
Syntax: FLAGS <#channel> [nickname|hostmask flag_changes]

Permissions:

    +v - Enables use of the voice/devoice commands.
    +V - Enables automatic voice.
    +o - Enables use of the op/deop commands.
    +O - Enables automatic op.
    +s - Enables use of the set command.
    +i - Enables use of the invite and getkey commands.
    +r - Enables use of the kick, ban, and kickban commands.
    +R - Enables use of the recover and clear commands.
    +f - Enables modification of channel access lists.
    +t - Enables use of the topic and topicappend commands.
    +A - Enables viewing of channel access lists.
    +F - Grants full founder access.
    +b - Enables automatic kickban.

The special permission +* adds all permissions except +b and +F.
The special permission -* removes all permissions including +b and +F.

Examples:

/msg ChanServ FLAGS #foo
/msg ChanServ FLAGS #foo foo!*@bar.com VOP
/msg ChanServ FLAGS #foo foo!*@bar.com -V+oO
/msg ChanServ FLAGS #foo foo!*@bar.com -*
/msg ChanServ FLAGS #foo foo +oOtsi
/msg ChanServ FLAGS #foo TroubleUser!*@*.troubleisp.net +b



DROP
Drops a channel registration.

DROP allows you to "unregister" a registered channel.

Once you DROP a channel all of the data associated with it (access lists, etc) are removed and cannot be restored.

See help on SET FOUNDER and FLAGS for transferring a channel to another user.

Syntax: DROP <#channel>

Example:

/msg ChanServ DROP #foo



ACCESS
Manipulates channel access lists.

The ACCESS command allows displaying and changing privileges on channels.

The LIST subcommand displays a list of users and their privileges.

Syntax: ACCESS <#channel> LIST

The ADD subcommand adds a user to the access list or changes their privileges if they were already on the access list.

If the level field is specified, it specifies the privileges to grant, see the FLAGS and TEMPLATE help files. If not, the user will be given privileges appropriate for day-to-day management of the channel.

Syntax: ACCESS <#channel> ADD <nickname> [level]

The DEL subcommand removes a user from the access list.

Syntax: ACCESS <#channel> DEL <nickname>

Examples:

/msg ChanServ ACCESS #foo LIST
/msg ChanServ ACCESS #foo ADD bar OP
/msg ChanServ ACCESS #foo DEL bar

See also: FLAGS, TEMPLATE



SET
Sets various control flags.

SET allows you to set various control flags for channels that change the way certain operations are performed on them.

For more specific help use /msg ChanServ HELP SET command.

The following subcommands are available:

FOUNDER
SET FOUNDER allows you to set a new founder of the channel. The new founder has to execute the same command to confirm the transfer.

Syntax: SET <#channel> FOUNDER <newnick>

If the new founder has not yet confirmed the transfer, you can cancel it by specifying your own nick as the new founder.

Syntax: SET <#channel> FOUNDER <yournick>

Example:

/msg ChanServ SET #foo FOUNDER bar


MLOCK
MLOCK (or "mode lock") allows you to enforce a set of modes on a channel. This can prevent abuse in cases such as +kl. It can also make it harder to fight evil bots, be careful. Locked modes can be seen by anyone recreating the channel (this includes keys).

Syntax: SET <#channel> MLOCK <modes>

Examples:
(some may use modes your ircd does not support)

/msg ChanServ SET #foo MLOCK +nt-lk
/msg ChanServ SET #foo MLOCK +inst-kl
/msg ChanServ SET #c MLOCK +ntk c
/msg ChanServ SET #foo MLOCK +ntcjf-kl 2:30 #overflow
/msg ChanServ SET #overflow MLOCK +mntF-kljf
/msg ChanServ SET #foo1 MLOCK +ntlL 40 #foo2
/msg ChanServ SET #foo MLOCK OFF


TOPICLOCK
SET TOPICLOCK causes ChanServ to revert topic changes by users without the +t flag. Topic changes during netsplits or services outages will always be reverted.

TOPICLOCK requires KEEPTOPIC and will automatically enable it; disabling KEEPTOPIC will disable TOPICLOCK also.

Syntax: SET <#channel> TOPICLOCK ON|OFF

Example:

/msg ChanServ SET #foo TOPICLOCK ON

KEEPTOPIC
SET KEEPTOPIC enables restoration of the old topic after the channel has become empty. In some cases, it may revert topic changes after netsplits or services outages, so it is not recommended to turn this on if your channel tends to never empty.

Syntax: SET <#channel> KEEPTOPIC ON|OFF

Example:

/msg ChanServ SET #foo KEEPTOPIC ON

PRIVATE
SET PRIVATE hides various information about the channel from other users.

Syntax: SET <#channel> PRIVATE ON|OFF

Example:

/msg ChanServ SET #foo PRIVATE ON

SECURE
SET SECURE prevents anyone that's not on the channel's access lists from gaining operator or halfop status on the channel. This is useful if you're paranoid.

Syntax: SET <#channel> SECURE ON|OFF

Example:

/msg ChanServ SET #foo SECURE ON


ENTRYMSG

SET ENTRYMSG allows you to change or set a message sent to all users joining the channel. Specify a <message> of NONE to clear the message.

Syntax: SET <#channel> ENTRYMSG <message>

Example:

/msg ChanServ SET #support ENTRYMSG Welcome to #support. Please do not paste more than 5 lines.


EMAIL
SET EMAIL allows you to change or set the email address associated with a channel. This is shown to all users in INFO.

Syntax: SET <#channel> EMAIL <email>

Using the command in this way results in an email address being associated with the channel.

Example:

/msg ChanServ SET #chat EMAIL some@email.address

Syntax: SET <#channel> EMAIL NONE

Using the command in this way results in an email address being removed from the channel.

Example:

/msg ChanServ SET #chat EMAIL none


URL
SET URL allows you to change or set the URL associated with a channel. This is shown to all users joining the channel. Specify an <url> of NONE to clear the URL.

Syntax: SET <#channel> URL <url>

Example:

/msg ChanServ SET #chat URL http://slashdot.org


GUARD
SET GUARD allows you to have ChanServ join your channel. Fantasy commands will only work if this is enabled.

Syntax: SET <#channel> GUARD ON|OFF

Example:

/msg ChanServ SET #atheme GUARD ON


VERBOSE
SET VERBOSE ON sends a notice to the channel when someone makes changes to the access lists.

SET VERBOSE OPS sends a notice to the channel operators when someone makes changes to the access lists.

Fantasy commands are always executed as if SET VERBOSE ON is in effect.

Syntax: SET <#channel> VERBOSE ON|OPS|OFF

Example:

/msg ChanServ SET #foo VERBOSE ON


PROPERTY
SET PROPERTY manipulates metadata associated with a channel.

To delete a metadata entry, specify the name and leave the value blank.

Syntax: SET <#channel> PROPERTY <name> [value]

Examples:

/msg ChanServ SET #atheme PROPERTY URL http://www.atheme.org/
/msg ChanServ SET #meat PROPERTY VEGETABLES



AKICK
Manipulates a channel's AKICK list.

The AKICK command allows you to maintain channel ban lists. Users on the AKICK list will be automatically kickbanned when they join the channel, removing any matching ban exceptions first. Users with the +r flag are exempt.

You may also specify a hostmask (nick!user@host) for the AKICK list.

Removing an entry from the AKICK list will not remove any channel bans placed by it.

The reason is used when kicking and is visible in AKICK LIST. If the reason contains a '|' character, everything after it does not appear in kick reasons but does appear in AKICK LIST.

Syntax: AKICK <#channel> ADD|DEL|LIST <nickname|hostmask> [reason]

Examples:

/msg ChanServ AKICK #foo ADD bar you are annoying | private op info
/msg ChanServ AKICK #foo ADD *!*foo@bar.com
/msg ChanServ AKICK #foo DEL bar
/msg ChanServ AKICK #foo LIST



TAXONOMY
Displays a channel's metadata.

The taxonomy command lists metadata information associated with registered channels.

Example:

/msg ChanServ TAXONOMY #atheme



INFO
Displays information on registrations.

INFO displays channel information such as registration time, flags, and other details.

Syntax: INFO <#channel>

Example:

/msg ChanServ INFO #foo



GETKEY
Returns the key (+k) of a channel.

GETKEY returns the key (+k, password to be allowed in) of the specified channel: /join #channel key

Syntax: GETKEY <#channel>

Example:

/msg ChanServ GETKEY #foo



INVITE
Invites you to a channel.

INVITE requests services to invite you to the specified channel. This is useful if you use the +i channel mode.

Syntax: INVITE <#channel>

Example:

/msg ChanServ INVITE #foo



OP|DEOP|VOICE|DEVOICE
Gives/Removes channel ops/voice to/from a user.

These commands perform status mode changes on a channel.

If you perform an operation on another user, they will be notified that you did it.

If the last parameter is omitted the action is performed on the person requesting the command.

Syntax: OP|DEOP <#channel> [nickname]

Syntax: VOICE|DEVOICE <#channel> [nickname]

Examples:


/msg ChanServ OP #foo bar
/msg ChanServ DEVOICE #foo



WHY
Explains channel access logic.

The WHY command shows the access entries an online user matches.

Syntax: WHY <#channel> <nickname>

Example:

/msg ChanServ WHY #atheme jilles^



UNBAN
Unbans you on a channel.

The UNBAN command allows you to remove all bans matching you from a channel.

Syntax: UNBAN <#channel>

Example:

/msg ChanServ UNBAN #chat



CLEAR
Channel removal toolkit.

CLEAR allows you to clear various aspects of a channel.

The following subcommands are available:

BANS
Clear bans will remove all bans found in a specific channel. If your ircd supports other lists associated with a channel (e.g. ban exceptions), you can clear these by specifying the mode letters. Specify an asterisk to clear all lists.

Syntax: CLEAR <#channel> BANS [types]

Examples:

/msg ChanServ CLEAR #support BANS

Clears #support ban list.

/msg ChanServ CLEAR #support BANS eI

Removes all ban and invite exceptions on #support (if your ircd supports them).

/msg ChanServ CLEAR #support BANS *

Clears all lists of #support.

/msg ChanServ CLEAR #support BANS +

Shows the possible letters.


USERS
Clear users will kick all users out of the channel, except you. The channel will be cycled (recreated) if you are not on it.

If a reason is specified, it will be included in the kick message.

Syntax: CLEAR <#channel> USERS [reason]

Example:

/msg ChanServ CLEAR #ChatZone USERS



TEMPLATE
Manipulates predefined sets of flags.

The TEMPLATE command allows definition of sets of flags, simplifying the use of the FLAGS command.

Without arguments, network wide templates are shown. These include at least SOP/AOP/HOP/VOP.

Syntax: TEMPLATE

When given only the channel argument, a listing of templates for the channel will be displayed.

Syntax: TEMPLATE <#channel>

Otherwise, a template is modified. A modification may be specified by a template name (copies the template) or a flags change (starts with + or -, optionally preceded by an !). Templates cannot be the empty set (making a template empty deletes it).

If the ! form is used, all access entries which exactly match the template are changed accordingly. This is not supported if the template includes or included founder access (+F).

There is a limit on the length of all templates on a channel.

If you are not a founder, similar restrictions apply as in FLAGS.

Syntax: TEMPLATE <#channel> [template oldtemplate]
Syntax: TEMPLATE <#channel> [template flag_changes]
Syntax: TEMPLATE <#channel> [template !flag_changes]

Examples:

/msg ChanServ TEMPLATE #foo
/msg ChanServ TEMPLATE #foo user VOP
/msg ChanServ TEMPLATE #foo user !+A
/msg ChanServ TEMPLATE #foo co-founder +*-OH
/msg ChanServ TEMPLATE #foo op -*+vVhoti
/msg ChanServ TEMPLATE #foo obsoletetemplate -*



COUNT
Shows number of entries in access lists.

This will give a count of how many entries are in each of the channel's xOP lists and how many entries on the access list do not match a xOP value.

The second line shows how many access entries have each flag.

Syntax: COUNT <#channel>

Example:

/msg ChanServ COUNT #oscn




RECOVER
Regain control of your channel.

RECOVER allows you to regain control of your channel in the event of a takeover.

More precisely, everyone will be deopped, limit and key will be cleared, all bans matching you are removed, a ban exception matching you is added (in case of bans Atheme can't see), the channel is set invite-only and moderated and you are invited.

If you are on channel, you will be opped and no ban exception will be added.

Syntax: RECOVER <#channel>

Example:

/msg ChanServ RECOVER #foo



STATUS
Displays your status in services.

STATUS returns information about your current state. It will show information about your nickname, IRC operator, and SRA status.

If the a channel parameter is specified, your access to the given channel is returned.

Syntax: STATUS [#channel]

Example:

/msg ChanServ STATUS

The TOPICPREPEND command allows for the addition to a topic on a channel.

Syntax: TOPICPREPEND <#channel> <topic>

Examples:

/msg ChanServ TOPICPREPEND #foo bar
/msg ChanServ STATUS #foo



TOPIC
Sets a topic on a channel.

The TOPIC command allows for the changing of a topic on a channel.

Syntax: TOPIC <#channel> <topic>

Example:

/msg ChanServ TOPIC #foo bar



TOPICAPPEND
Appends a topic on a channel.

The TOPICAPPEND command allows for the addition to a topic on a channel.

Syntax: TOPICAPPEND <#channel> <topic>

Examples:

/msg ChanServ TOPICAPPEND #foo bar



TOPICPREPEND
Prepends a topic on a channel.

The TOPICPREPEND command allows for the addition to a topic on a channel.

Syntax: TOPICPREPEND <#channel> <topic>

Example:

/msg ChanServ TOPICPREPEND #foo bar



QUIET
Sets a quiet on a channel.

The QUIET command allows you to mute a user or hostmask in a channel. Affected users will be notified that you did it.

Syntax: QUIET <#channel> <nickname|hostmask>

Examples:

/msg ChanServ QUIET #chat AfterDeath
/msg ChanServ QUIET #chat *!*@*.ipt.aol.com

 


UNQUIET
Removes a quiet on a channel.

The UNQUIET command allows you to unmute a user or hostmask in a channel. If no nickname or hostmask is specified, you are unquieted.

Affected users will be notified that you did it.

Syntax: UNQUIET <#channel> [nickname|hostmask]

Examples:

/msg ChanServ UNQUIET #chat Diablo-D3
/msg ChanServ UNQUIET #chat *!*@*.trilug.org







changed February 10, 2012