Channel user management

Commands for managing the user list.

C, our channel services bot, provides the following commands to assist with managing a registered channel's user list.

You can communicate with C via private messages or through server-side aliases, as shown below:

  • /msg C <text>
  • /msg C@services.darenet.org <text>
  • /chanserv <text>
  • /cs <text>

C also supports "in-channel" (also known as "fantasy" commands), which allows commands to be used in the channel itself. All in-channel commands directed towards C begin with a period. If a command is given in a channel, and the channel argument is not given, C will use the name of the channel that the command was used in. In-channel commands can only be used in registered channels; however, C does not have to be in the channel for them to work.

For the purpose of this document, we will be using the first method listed above, as not all IRC clients readily support server-side aliases without additional setup and/or client commands; however, you can choose to use any of the above methods you like as they're all equivalent.

Contents

  1. Viewing a user's channel access
    1. ACCESS
    2. MYACCESS
  2. Viewing the user list
    1. USERS
    2. WLIST
    3. CLIST
    4. MLIST
    5. OLIST
    6. HLIST
    7. GLIST
  3. Adding users to the user list
    1. ADDUSER
    2. ADDCOOWNER
    3. ADDMANAGER
    4. ADDOP
    5. ADDHOP
    6. ADDGRUNT
  4. Changing a user's access level
    1. CLVL
    2. GIVEOWNERSHIP
    3. REQUESTOWNER
  5. Removing a user from the user list
    1. DELUSER
    2. DELETEME
    3. TRIM
    4. MDELCOOWNER
    5. MDELMANAGER
    6. MDELOP
    7. MDELHOP
    8. MDELGRUNT
  6. Suspending a user's access
    1. SUSPEND
    2. UNSUSPEND
  7. (De)Opping/halfopping/voicing yourself
    1. UP
    2. UPALL
    3. DOWN
    4. DOWNALL
  8. (De)Opping/halfopping/voicing others
    1. OP
    2. DEOP
    3. HOP
    4. DEHOP
    5. VOICE
    6. DEVOICE
  9. Miscellaneous
    1. WIPEINFO

Viewing a user's channel access

ACCESS

Syntax: /msg C ACCESS #channel [nick|*account]

Allows you to view a user's access level for a channel, provided you also have access in the channel.

If the user you would like to view information for is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

If you do not specify a nickname or account, your own information will be shown.

Example 1: /msg C ACCESS #darenet

This will show your own access information for the channel #darenet.

Example 2: /msg C ACCESS #darenet *nitemare

This will show the account nitemare's access information for the channel #darenet.

MYACCESS

Syntax: /msg C MYACCESS

Lists channels where you have access and any info lines that are set.

Your access level in the channel may be followed by one or more of the following characters:

Flag Description
s Your access in the channel has been suspended.
o Auto-op active; therefore, you will be automatically opped when you join the channel or authenticate.
h Auto-halfop active; therefore, you will be automatically half-opped when you join the channel or authenticate.
v Auto-voice active; therefore, you will be automatically voiced when you join the channel or authenticate.
i Auto-invite active; therefore, you will be automatically invited to the channel by C when you authenticate.
j Auto-join active; therefore, you will be automatically joined to the channel when you authenticate.

See the channel user settings guide, for more information on user settings.

Viewing the user list

USERS

Syntax: /msg C USERS #channel [mask]

Displays the user list for the channel.

If a mask is supplied, only users who's account name matches the mask will be shown.

Example 1: /msg C USERS #darenet

Displays the entire user list for the channel #darenet.

Example 2: /msg C USERS #darenet joe*

Displays only those users on the list who's account name starts with "joe".

WLIST

Syntax: /msg C WLIST #channel [mask]

Lists users with OWNER (500) access on the channel's user list.

If a mask is supplied, only users who's account name matches the mask will be shown.

Example 1: /msg C WLIST #darenet

List all users with OWNER access for the channel #darenet.

Example 2: /msg C WLIST #darenet joe*

Displays only those users with OWNER access who's account name starts with "joe".

CLIST

Syntax: /msg C CLIST #channel [mask]

Lists users with COOWNER (400) access on the channel's user list.

If a mask is supplied, only users who's account name matches the mask will be shown.

Example 1: /msg C CLIST #darenet

List all users with COOWNER access for the channel #darenet.

Example 2: /msg C CLIST #darenet joe*

Displays only those users with COWNER access who's account name starts with "joe".

MLIST

Syntax: /msg C MLIST #channel [mask]

Lists users with MANAGER (300) access on the channel's user list.

If a mask is supplied, only users who's account name matches the mask will be shown.

Example 1: /msg C MLIST #darenet

List all users with MANAGER access for the channel #darenet.

Example 2: /msg C MLIST #darenet joe*

Displays only those users with MANAGER access who's account name starts with "joe".

OLIST

Syntax: /msg C OLIST #channel [mask]

Lists users with OP (200) access on the channel's user list.

If a mask is supplied, only users who's account name matches the mask will be shown.

Example 1: /msg C OLIST #darenet

List all users with OP access for the channel #darenet.

Example 2: /msg C OLIST #darenet joe*

Displays only those users with OP access who's account name starts with "joe".

HLIST

Syntax: /msg C HLIST #channel [mask]

Lists users with HOP (150) access on the channel's user list.

If a mask is supplied, only users who's account name matches the mask will be shown.

Example 1: /msg C HLIST #darenet

List all users with HOP access for the channel #darenet.

Example 2: /msg C HLIST #darenet joe*

Displays only those users with HOP access who's account name starts with "joe".

GLIST

Syntax: /msg C GLIST #channel [mask]

Lists users with GRUNT (100) access on the channel's user list.

If a mask is supplied, only users who's account name matches the mask will be shown.

Example 1: /msg C GLIST #darenet

List all users with GRUNT access for the channel #darenet.

Example 2: /msg C GLIST #darenet joe*

Displays only those users with GRUNT access who's account name starts with "joe".

Adding users to the user list

ADDUSER

Syntax: /msg C ADDUSER #channel <nick|*account> <level> [duration]

Adds a user to the channel's user list with the specified access level.

If the user you would like to add is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

<level> may be one of GRUNT, OP, MANAGER, COOWNER, or an integer between 1 and 499.

If a duration is provided, the user will be automatically removed from the channel's user list once the duration has passed.

Keep in mind that you may only grant a user an access level that is less than your own.

Example 1: /msg C ADDUSER #darenet joe OP

Adds the user using the nickname joe to #darenet's user list with an access level of OP (equivalent to level 200).

Example 2: /msg C ADDUSER #darenet *nitemare MANAGER

Adds the account nitemare to #darenet's user list with an access level of MANAGER (equivalent to level 300).

Example 3: /msg C ADDUSER #darenet *nitemare 150 5d

Adds the account nitemare to #darenet's user list with an access elvel of 150 (equivalent to level HOP), which will expire after 5 days.

ADDCOWNER

Syntax: /msg C ADDCOOWNER #channel <nick|*account> [duration]

Adds a user to the channel's user list with COOWNER (400) access.

If the user you would like to add is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

If a duration is provided, the user will be automatically removed from the channel's user list once the duration has passed.

Note, only users with access greater than 400 or owners may add co-owners.

Example 1: /msg C ADDCOOWNER #darenet joe

Adds the user using the nickname joe to #darenet's user list with an access level of COOWNER.

Example 2: /msg C ADDCOOWNER #darenet *nitemare

Adds the account nitemare to #darenet's user list with an access level of COOWNER.

Example 3: /msg C ADDCOOWNER #darenet *nitemare 5d

Adds the account nitemare to #darenet's user list with an access elvel of COOWNER, which will expire after 5 days.

ADDMANAGER

Syntax: /msg C ADDMANAGER #channel <nick|*account> [duration]

Adds a user to the channel's user list with MANAGER (300) access.

If the user you would like to add is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

If a duration is provided, the user will be automatically removed from the channel's user list once the duration has passed.

Note, only users with access greater than 300, co-owners or owners may add managers.

Example 1: /msg C ADDMANAGER #darenet joe

Adds the user using the nickname joe to #darenet's user list with an access level of MANAGER.

Example 2: /msg C ADDMANAGER #darenet *nitemare

Adds the account nitemare to #darenet's user list with an access level of MANAGER.

Example 3: /msg C ADDMANAGER #darenet *nitemare 5d

Adds the account nitemare to #darenet's user list with an access elvel of MANAGER, which will expire after 5 days.

ADDOP

Syntax: /msg C ADDOP #channel <nick|*account> [duration]

Adds a user to the channel's user list with OP (200) access.

If the user you would like to add is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

If a duration is provided, the user will be automatically removed from the channel's user list once the duration has passed.

Note, only users with access greater than 200, managers, co-owners or owners may add ops.

Example 1: /msg C ADDOP #darenet joe

Adds the user using the nickname joe to #darenet's user list with an access level of OP.

Example 2: /msg C ADDOP #darenet *nitemare

Adds the account nitemare to #darenet's user list with an access level of OP.

Example 3: /msg C ADDOP #darenet *nitemare 5d

Adds the account nitemare to #darenet's user list with an access elvel of OP, which will expire after 5 days.

ADDHOP

Syntax: /msg C ADDHOP #channel <nick|*account> [duration]

Adds a user to the channel's user list with HOPR (150) access.

If the user you would like to add is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

If a duration is provided, the user will be automatically removed from the channel's user list once the duration has passed.

Note, only users with access greater than 150, ops, managers, co-owners or owners may add hops.

Example 1: /msg C ADDHOP #darenet joe

Adds the user using the nickname joe to #darenet's user list with an access level of HOP.

Example 2: /msg C ADDHOP #darenet *nitemare

Adds the account nitemare to #darenet's user list with an access level of HOP.

Example 3: /msg C ADDHOP #darenet *nitemare 5d

Adds the account nitemare to #darenet's user list with an access elvel of HOP, which will expire after 5 days.

ADDGRUNT

Syntax: /msg C ADDGRUNT #channel <nick|*account> [duration]

Adds a user to the channel's user list with GRUNT (100) access.

If the user you would like to add is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

If a duration is provided, the user will be automatically removed from the channel's user list once the duration has passed.

Note, only users with access greater than 100, hops, ops, managers, co-owners or owners may add grunts.

Example 1: /msg C ADDGRUNT #darenet joe

Adds the user using the nickname joe to #darenet's user list with an access level of GRUNT.

Example 2: /msg C ADDGRUNT #darenet *nitemare

Adds the account nitemare to #darenet's user list with an access level of GRUNT.

Example 3: /msg C ADDGRUNT #darenet *nitemare 5d

Adds the account nitemare to #darenet's user list with an access elvel of GRUNT, which will expire after 5 days.

Changing a user's access level

CLVL

Syntax: /msg C CLVL #channel <nick|*account> <level> [duration]

Those with manager access may use the CLVL command to changes a user's access level on the channel.

If the user who's access you would like to change is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

<level> may be one of GRUNT, OP, MANAGER, COOWNER, or an integer between 1 and 499.

If a duration is given, the user's access level will be reverted back to their previous access level once the duration has passed.

Keep in mind that you cannot give a user access greater than or equal to your own.

Example 1: /msg C CLVL #darenet joe COOWNER

Changes the user's, who's using the nickname joe, access level in #darenet to COOWNER.

Example 2: /msg C CLVL #darenet *nitemare OP

Changes the account nitemare's access level in #darenet to OP.

Example 3: /msg C CLVL #darenet *nitemare 300 1m

Changes the account nitemare's access level in #darenet to 300, which will expire in 1 month (30 days).

GIVEOWNERSHIP

Syntax: /msg C GIVEOWNERSHIP #channel <nick|*account> [<confirmation-code>]

Transfers ownership of the channel from your account to another user on the channel's user list.

You must first use the command with only the channel's name and the nick or account name of the user you'd like to transfer ownership to, which will give you back a confirmation code which you type in with the command.

If the user you would like to transfer ownership to is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

Note, you will be demoted to co-owner and the specified user will become the channel's new owner.

Example: /msg C GIVEOWNERSHIP #darenet *nitemare

This is the initial command you would use to transfer ownership of the channel #darenet to the account nitemare. You will receive a reply from C similar to the following:

-C- To really give ownership to nitemare, you must use 'giveownership #darenet *nitemare 61495172'

After that, you would re-type the command with the confirmation code, /msg C GIVEOWNERSHIP #darenet 61495172.

REQUESTOWNER

Syntax: /msg C REQUESTOWNER #channel

Allows you to request ownership of a channel.

For the request to succeed, there must be no owners left on the channel's user list, and you must have the highest access level of any remaining users.

Example: /msg C REQUESTOWNER #darenet

Requests ownership of the channel #darenet.

Removing a user from the user list

DELUSER

Syntax: /msg C DELUSER #channel <nick|*account>

Deletes a user from the channel's user list.

If the user you would like to delete is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

Example 1: /msg C DELUSER #darenet joe

Deletes the user using the nickname joe from the channel #darenet's user list.

Example 2: /msg C DELUSER #darenet *nitemare

Delete the account nitemare from the channel #darenet's user list.

DELETEME

Syntax: /msg C DELETEME #channel [<confirmation-code>]

Deletes yourself from the channel's user list.

You must first use the command with only the channel's name, which will give you back a confirmation code which you type in with the command.

Note, you may only use this command if you have less than OWNER access in the channel.

Example: /msg C DELETEME #darenet

This is the initial command you would use to delete yourself from #darenet's user list. You will then receive a reply from C similar to the following:

-C-  To really remove yourself, you must use 'deleteme #darenet 85731169'

After that, you would re-type the command with the confirmation code, /msg C DELETEME #darenet 85731169

TRIM

Syntax: /msg C TRIM #channel <target> <duration> [VACATION]

Those with manager access or above can use the TRIM command to remove inactive entries from the channel's user list, permanent ban list and permanent quiet list.

The <target> argument specifies what type of entries are to be trimmed. To trim the permanent ban list, you'd specify "bans". To trim the permanent quiet list, you'd specify quiets. For the user list, you'd use "users" to trim the entire list, or you can narrow it down by specifying an access level (e.g., 300) or an access level range (e.g., 300-399).

The <duration> argument specifies what inactive entries should be trimmed. For example, a duration of "30d" would delete users who have not been seen within the last 30 days.

By default, the TRIM command will not remove users who's account is marked as "on vacation". If you would like these accounts to be included, you must specify the VACATION flag.

Example 1: /msg C TRIM #darenet 150-200 30d

Deletes all users with an access level between 150 and 200 who have not been seen on #darenet in the last 30 days.

Example 2: /msg C TRIM #darenet users 2m VACATION

Deletes all users from the channel #darenet's user list who have not been seen in the last 2 months (60 days) even if they're on vacation.

MDELCOOWNER

Syntax: /msg C MDELCOOWNER #channel <pattern>

Deletes all users with COOWNER access on the channel's user list who's account name matches the specified pattern.

Where <pattern> is a string that may contain the * and ? wilcards to match account names against.

Example1: /msg C MDELCOOWNER #darenet nite*

Deletes all users with COOWNER access on the channel #darenet who's account name starts with nite.

Example 2: /msg C MDELCOOWNER #darenet *

Deletes all users with COOWNER access on the channel #darenet.

MDELMANAGER

Syntax: /msg C MDELMANAGER #channel <pattern>

Deletes all users with MANAGER access on the channel's user list who's account name matches the specified pattern.

Where <pattern> is a string that may contain the * and ? wilcards to match account names against.

Example1: /msg C MDELMANAGER #darenet nite*

Deletes all users with MANAGER access on the channel #darenet who's account name starts with nite.

Example 2: /msg C MDELMANAGER #darenet *

Deletes all users with MANAGER access on the channel #darenet.

MDELOP

Syntax: /msg C MDELOP #channel <pattern>

Deletes all users with OP access on the channel's user list who's account name matches the specified pattern.

Where <pattern> is a string that may contain the * and ? wilcards to match account names against.

Example1: /msg C MDELOP #darenet nite*

Deletes all users with OP access on the channel #darenet who's account name starts with nite.

Example 2: /msg C MDELOP #darenet *

Deletes all users with OP access on the channel #darenet.

MDELHOP

Syntax: /msg C MDELHOP #channel <pattern>

Deletes all users with HOP access on the channel's user list who's account name matches the specified pattern.

Where <pattern> is a string that may contain the * and ? wilcards to match account names against.

Example1: /msg C MDELHOP #darenet nite*

Deletes all users with COOWNER access on the channel #darenet who's account name starts with nite.

Example 2: /msg C MDELHOP #darenet *

Deletes all users with HOP access on the channel #darenet.

MDELGRUNT

Syntax: /msg C MDELGRUNT #channel <pattern>

Deletes all users with GRUNT access on the channel's user list who's account name matches the specified pattern.

Where <pattern> is a string that may contain the * and ? wilcards to match account names against.

Example1: /msg C MDELGRUNT #darenet nite*

Deletes all users with GRUNT access on the channel #darenet who's account name starts with nite.

Example 2: /msg C MDELGRUNT #darenet *

Deletes all users with GRUNT access on the channel #darenet.

Suspending a user's access

SUSPEND

Syntax: /msg C SUSPEND #channel <nick|*account> 

Disables a user's access to the channel.

If the user you would like to suspend is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

Example 1: /msg C SUSPEND #darenet joe

Suspends access for the user using the nickname joe on the channel #darenet.

Example 2: /msg C SUSPEND #darenet *nitemare

Suspends access for the account nitemare on the channel #darenet.

UNSUSPEND

Syntax: /msg C UNSUSPEND #channel <nick|*account> 

Restores a user's access to the channel.

If the user you would like to unsuspend is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

Example 1: /msg C UNSUSPEND #darenet joe

Restores access for the user using the nickname joe on the channel #darenet.

Example 2: /msg C UNSUSPEND #darenet *nitemare

Restores access for the account nitemare on the channel #darenet.

(De)Opping/halfopping/voicing yourself

UP

Syntax: /msg C UP #channel

Grants you your normal privileges on the channel specified. For example, if you have halfop access in the channel, it will force C to give you halfops (cmode +h) if you're not already halfopped on the channel. The same applies for op and voice.

UPALL

Syntax: /msg C UPALL

Similar to the UP command, but will grant you your normal privileges in all channels you have access in.

DOWN

Syntax: /msg C DOWN #channel

Will de(half)op/devoice you in the channel specified.

DOWNALL

Syntax: /msg C DOWNALL

Similar to the DOWN command, but de(half)ops/devoices you in all channels that you have access in.

(De)Opping/halfopping/voicing others

OP

Syntax: /msg C OP #channel <nick> [<nick2> ...]

The OP command allows you to temporarily op one or more users in a channel without having to be opped yourself or even be in the channel. You must have OP access or higher on the channel's user list to use this command.

Example 1: /msg C OP trip tyil

This would give ops to the users trip and tyil in the channel #darenet.

DEOP

Syntax: /msg C DEOP #channel <nick> [<nick2> ...]

The DEOP command allows you to deop one or more users in a channel without having to be opped yourself or even be in the channel. You must have OP access or higher on the channel's user list to use this command. You also may not deop someone who has higher access than you.

Note, if the user being deoped has OP access or higher on the channel's user list they may re-op themselves.

Example 1: /msg C DEOP trip tyil

This would take ops away from the users trip and tyil in the channel #darenet.

HOP

Syntax: /msg C HOP #channel <nick> [<nick2> ...]

The HOP command allows you to temporarily halfop one or more users in a channel without having to be opped yourself or even be in the channel. You must have OP access or higher on the channel's user list to use this command.

Example 1: /msg C HOP trip tyil

This would give halfops to the users trip and tyil in the channel #darenet.

DEHOP

Syntax: /msg C DEHOP #channel <nick> [<nick2> ...]

The DEHOP command allows you to dehalfop one or more users in a channel without having to be opped yourself or even be in the channel. You must have OP access or higher on the channel's user list to use this command.

Note, if the user being dehalfoped has HOP access or higher on the channel's user list they may re-halfop themselves.

Example 1: /msg C DEHOP trip tyil

This would take away halfops from the users trip and tyil in the channel #darenet.

VOICE

Syntax: /msg C VOICE #channel <nick> [<nick2> ...]

The VOICE command allows you to temporarily voice one or more users in a channel without having to be opped yourself or even be in the channel. You must have HOP access or higher on the channel's user list to use this command.

Example 1: /msg C VOICE trip tyil

This would give voice to the users trip and tyil in the channel #darenet.

DEVOICE

Syntax: /msg C DEVOICE #channel <nick> [<nick2> ...]

The DEVOICE command allows you to devoice one or more users in a channel without having to be (half)opped yourself or even be in the channel. You must have HOP access or higher on the channel's user list to use this command.

Note, if the user being devoiced has GRUNT access or higher on the channel's user list they may re-voice themselves.

Example 1: /msg C DEVOICE trip tyil

This would take away voice from the users trip and tyil in the channel #darenet.

Miscellaneous

WIPEINFO

Syntax: /msg C WIPEINFO #channel <nick|*account>

Removes a user's info line in the channel.

A user's info line is shown when they join they channel.

If the user who's info line you would like to remove is online, you may simply specify their nickname; otherwise, you will need to user their account name prefixed with an asterisk.

Example 1: /msg C WIPEINFO #darenet joe

Removes the info line for the user using the nickname joe on the channel #darenet.

Example 2: /msg C WIPEINFO #darenet *nitemare

Removes the info line for the account nitemare on the channel #darenet.

Should you still need assistance, stop by #Help on IRC.