Channel settings

Settings for registered channels.

The following settings can be configured with C, our channel services bot, to aid you in maintaining your channel.

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 (e.g., .topic). 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. Changing a channel's settings
    1. SET
  2. Available settings
    1. DEFAULTTOPIC
    2. TOPICMASK
    3. TOPICREFRESH
    4. ENFTOPIC
    5. TOPICSNARF
    6. GREETING
    7. USERGREETING
    8. MODES
    9. ENFMODES
    10. ENFOPS
    11. ENFHALFOPS
    12. PROTECT
    13. AUTOMODE
    14. RESYNC
    15. RESTRICTED
    16. BANTYPE
    17. BANTIMEOUT
    18. BANAPPEAL
    19. SIGNKICK
    20. JOINFLOODPROTECT
    21. JOINMSGTHROTTLE
    22. MASSHIGHLIGHT
    23. SVSMODERATE
    24. VERBOSE
    25. PUBCMD
    26. INVITEME
    27. USERINFO
    28. TOYS
    29. URL
    30. OFFCHANNEL
  3. Resetting a channel's settings

Changing a channel's settings

SET

Syntax: /msg C SET #channel [<option> [<value>]]

The SET command allows channel owners and co-owners to change and inspect settings for their channels.

If no arguments are given, the current values for all settings will be shown.

Example 1: /msg C SET #darenet

This would show the current values for all settings for the channel #darenet.

Example 2: /msg C SET #darenet URL

This would show the current value for the URL setting for the channel #darenet.

Example 3: /msg C SET #darenet URL https://www.darenet.org/

This would change the value for the URL setting to "https://www.darenet.org/" for the channel #darenet.

Available settings

DEFAULTTOPIC

Syntax: /msg C SET #channel DEFAULTTOPIC [topic]

The DEFAULTTOPIC settings lets you change the default topic for the channel.

The default topic is used when C's TOPIC command is used with no argument, when the topic is refreshed (see TOPICREFRESH setting), or when someone without the necessary access tries to change the channel's topic.

If no topic is given, the channel's current default topic setting will be shown.

Example 1: /msg C SET #darenet DEFAULTTOPIC

This will display the current default topic setting for the channel #darenet.

Example 2: /msg C SET #darenet DEFAULTTOPIC Welcome to DareNET!

This will change the default topic to "Welcome to DareNET!" for the channel #darenet.

Example 3: /msg C SET #darenet DEFAULTTOPIC *

This will delete the default topic for the channel #darenet.

TOPICMASK

Syntax: /msg C SET #channel TOPICMASK [mask]

The TOPICMASK setting lets you set a pattern all topics must follow. See the topic masking guide for more information.

If no mask is given, the channel's current topic mask setting will be shown.

Example 1: /msg C SET #darenet TOPICMASK

This will display the current topic mask setting for the channel #darenet.

Example 2: /msg C SET #darenet TOPICMASK Welcome to DareNET! *

This will change the topic mask to "Welcome to DareNET! *" for the channel #darenet.

Example 3: /msg C SET #darenet TOPICMASK *

This will delete the topic mask for the channel #darenet.

TOPICREFRESH

Syntax: /msg C SET #channel TOPICREFRESH [value]

The TOPICREFRESH setting lets you control how often C should change the channel's topic back to the default topic (see DEFAULTOPIC setting)

Where [value] may be one of he following values:

Value Description
0 Never refresh the topic.
1 Refresh the topic every 3 hours.
2 Refresh the topic every 6 hours.
3 Refresh the topic every 12 hours.
4 Refresh the topic every 24 hours.

If no value is given, the channel's current topic refresh setting will be shown.

Example 1: /msg C SET #darenet TOPICREFRESH

This will show the current topic refresh setting for the channel #darenet.

Example 2: /msg C SET #darenet TOPICREFRESH 4

This will set the topic refresh rate to every 24 hours for the channel #darenet.

Example 3: /msg C SET #darenet TOPICMASK 0

This will disable topic refreshing for the channel #darenet.

ENFTOPIC

Syntax: /msg C SET #channel ENFTOPIC [level]

The ENFTOPIC setting lets you set the minimum access level someone needs in the channel to override the channel's default topic (see DEFAULTTOPIC setting); otherwise, they may only set topics that match the channel's topic mask (see TOPICMASK setting).

To prevent anyone from overriding the default topic, set the level to 501.

If no level is given, the channel's current enforce topic setting will be shown.

Example 1: /msg C SET #darenet ENFTOPIC

This will display the current enforce topic setting for the channel #darenet.

Example 2: /msg C SET #darenet ENFTOPIC 300

This will prevent users with access less than 300 (MANAGER) in the channel #darenet from overriding the default topic.

Example 3: /msg C SET #darenet ENFTOPIC 0

This will allow anyone to override default topic set for the channel #darenet.

TOPICSNARF

Syntax: /msg C SET #channel TOPICSNARF [level]

Topics set manually (i.e., the /TOPIC command) by users with an access level equal or greater to the level set for this setting will cause the default topic (see DEFAULTTOPIC setting) to be changed to the new topic.

To prevent anyone from being able to snarf the default topic, set the level to 501.

If no level is given, the channel's current topic snarf setting will be shown.

Example 1: /msg C SET #darenet TOPICSNARF 250

This will prevent users with access less than 250 in the channel #darenet from snarffing the default topic.

Example 2: /msg C SET #darenet TOPICSNARF

This will display the current topic snarf setting for the channel #darenet.

GREETING

Syntax: /msg C SET #channel GREETING [text]

The GREETING setting allows you to set or change the message C sends to someone when they join the channel are are not on the channel's user list.

To remove the greeting, use an asterisk ("*") as the [text] argument.

If no [text] argument is given, the channel's current greeting will be shown.

Example 1: /msg C SET #help GREETING Please ask all questions in the channel.

This would set the greeting for the channel #help to "Please ask all questions in the channel."

Example 2: /msg C SET #help GREETING *

This would remove the greeting for the channel #help.

Example 3: /msg C SET #help GREETING

This would display the current greeting for the channel #help.

USERGREETING

Syntax: /msg C SET #channel USERGREETING [text]

The USERGREETING setting allows you to set or change the message C sends to someone when they join the channel and are on the channel's user list. 

To remove the user greeting, use an asterisk ("*") as the [text] argument.

If no [text] is given, the channel's current user greeting will be shown.

Example 1: /msg C SET #help USERGREETING Please de(half)op/devoice yourself if you're not available to help

This would set the greeting for the channel #help to "Please de(half)op/devoice yourself if you're not available to help"

Example 2: /msg C SET #help USERGREETING *

This would remove the user greeting for the channel #help.

Example 3: /msg C SET #help USERGREETING

This would display the current user greeting for the channel #help.

MODES

Syntax: /msg C SET #channel MODES [modes]

The MODES settings sets or changes the default modes for the channel. These modes will be enforced, and only those users with access equal or greater to the enforce modes setting (see ENFMODES setting) may set or remove modes that conflict with it.

To disable all mode enforcement, use an asterisk ("*") as the [modes] argument.

If no modes are given, the channel's current default modes will be shown.

For more information on modes, check out the channel modes guide.

Example 1: /msg C SET #darenet MODES +tncT-sp

This would set the default modes to +tnCT and -sp for the channel #darenet. That is, C or the server will ensure that those with access less than the enforce modes setting cannot remove modes "tnCT", or set modes "sp" on the channel.

Example 2: /msg C SET #darenet MODES *

This would disable all mode enforcement for the channel #darenet.

Example 3: /msg C SET #darenet MODES

This would display the current default modes for the channel #darenet.

ENFMODES

Syntax: /msg C SET #channel ENFMODES [level]

The ENMODES setting sets the minimum access level someone needs in the channel to override the channel's default modes (see MODES setting).

To prevent anyone from overriding the channel's default modes, set the level to 501.

If no [level] is given, the channel's current enforce modes setting will be shown.

Example 1: /msg C SET #darenet ENFMODES 300

This will prevent users with access less than 300 in the channel #darenet from overriding the default modes.

Example 2: /msg C SET #darenet ENFMODES

This will display the current enforce modes setting for the channel #darenet.

ENFOPS

Syntax: /msg C SET #channel ENFOPS [level]

The ENFOPS setting sets the minimum access level someone needs in the channel to op a user who is not on the channel's user list with at least op access (level 200); otherwise, the user will be automatically deopped.

To prevent anyone from opping unrecognized users, set the [level] to 501.

If no [level] is given, the channel's current enforce ops setting will be shown.

Example 1: /msg C SET #darenet ENFOPS 300

This will prevent users with access less than 300 in the channel #darenet from opping unrecognized users.

Example 2: /msg C SET #darenet ENFOPS

This will display the current enforce ops setting for the channel #darenet.

ENHALFOPS

Syntax: /msg C SET #channel ENFHALFOPS [level]

The ENFHALFOPSsetting sets the minimum access level someone needs in the channel to halfop a user who is not the channel's user list with at least halfop access (level 150); otherwise, the user will be automatically de-halfopped.

To prevent anyone from halfopping unrecognized users, set the [level] to 501.

If no [level] is given, the channel's current enforce halfops setting will be shown.

Example 1: /msg C SET #darenet ENFHALFOPS 300

This will prevent users with access less than 300 in the channel #darenet from halfopping unrecognized users.

Example 2: /msg C SET #darenet ENFHALFOPS

This will display the current enforce halfops setting for the channel #darenet.

PROTECT

Syntax: /msg C SET #channel PROTECT [value]

The PROTECT setting sets C's protection level.

Where [value] may be one of the following values:

ValueDescription
0 Everyone will be protected from those of equal or lower access.
1 Users on the user list will be protected from those of equal or lower access.
2 Users on the user list will be protected from those of lower access.
3 Noone will be protected.

If no [value] is given, the channel's current protection setting will be shown.

Example 1: /msg C SET #darenet PROTECT 2

This will prevent users with lower access from banning/deopping those with greater access than them on the channel #darenet.

Example 2: /msg C SET #darenet PROTECT

This will display the current protection setting for the channel #darenet.

AUTOMODE

Syntax: /msg C SET #channel AUTOMODE [value]

The AUTOMODE setting lets you change who should be automatically opped, halfopped, and voiced when joining or resyncing the channel.

Where [vaule] may be one of the following values:

ValueDescription
0 Nonone will be automatically opped, halfopped or voiced.
1 Automatically grant status modes according to the user list.
2 Same as #1, but also give voice to everyone.
3 Same as #1, but also give halfop to everyone.
4 Same as #1, but also give op to everyone.
5 Don't voice grunts if the channel is moderated (+m).
6 Just voice everyone.

If no [value] is given, the channel's current auto-mode setting will be shown.

Example 1: /msg C SET #darenet AUTOMODE 2

This will grant status modes to users based on the user list access level in the channel #darenet.

Example 2: /msg C SET #darenet AUTOMODE

This will display the current auto-mode setting for the channel #darenet.

RESYNC

Syntax: /msg C SET #channel RESYNC [value]

The RESYNC setting lets you change how often C should resync the nick list with the channel's user list, e.g., deop/dehalfop/devoice those not on the user's list, and op/halfop/voice users based on the channel's auto-mode setting (see AUTOMODE setting).

Where [value] may be one of the following values:

ValueDescription
n Never resync.
1 Resync every 3 hours.
2 Resync every 6 hours.
3 Resync every 12 hours.
4 Resync every 24 hours.

If no [value] is given, the channel's current resync setting will be shown.

Example 1: /msg C SET #darenet RESYNC 3

This will cause C to resync the nick list with the user list every 12 hours in the channel #darenet.

Example 2: /msg C SET #darenet RESYNC

This will display the current resync setting for the channel #darenet.

RESTRICTED

Syntax: /msg C SET #channel RESTRICTED [ON|OFF]

The RESTRICED setting, when enabled, will not allow anyone not on the channel's user list to join the channel, and will automatically kick and ban them.

Example 1: /msg C SET #darenet RESTRICTED ON

This will turn on the restricted option for the channel #darenet

Example 2: /msg C SET #darenet RESTRICTED

This will display the current restricted setting for the channel #darenet.

BANTYPE

Syntax: /msg C SET #channel BANTYPE [value]

The BANTYPE setting lets you change the style of hostmask C will use when banning or quieting someone.

Where [vaule] may be one of the following values:

ValueDescription
o *!user@host
1 *!*user@host
3 *!*@host
4 *!*@*.host
5 nick!user@host
6 nick!*@host
7 nick!*user@*.host
8 nick!*@*.host

If no [value] is given, the channel's current ban type setting will be shown.

Example 1: /msg C SET #darenet BANTYPE 3

This will set the ban type to "*!*@host" for the channel #darenet.

Example 2: /msg C SET #darenet BANTYPE

This will display the current ban type setting for the channel #darenet.

BANTIMEOUT

Syntax: /msg C SET #channel BANTIMEOUT [value]

The BANTIMEOUT setting lets you set how often C should remove old bans and quiets from the channel's ban and quiet lists. This is mostly useful for channels that set a lot of bans and quiets, avoiding a build up of old bans and quiets. which could eventually lead to a full ban or quiet list.

Where [value] may be one of the following values:

ValueDescription
o Never remove old bans.
1 Remove bans after 10 minutes.
3 Remove bans after 2 hours.
4 Remove bans after 4 hours.
5 Remove bans after 24 hours.
6 Remove bans after 1 week.

If no value is given, the channel's current ban timeout setting will be shown.

Example 1: /msg C SET #darenet BANTIMEOUT 6

This will set the ban timeout period to 1 week for the channel #darenet.

Example 2: /msg C SET #darenet BANTIMEOUT

This will display the current ban timeout setting for the channel #darenet.

BANAPPEAL

Syntax: /msg C SET #channel BANAPPEAL [text]

The BANAPPEAL setting lets you set or change the channel's ban appeal policy.

The ban appeal policy is shown whenever someone uses C's INFO command to view information about the channel, and is where network staff will first direct users when they inquire about a ban affecting them in your channel.

To remove the ban appeal policy, use an asterisk ("*") as the [text] argument.

If no [text] is given, the channel's current ban appeal policy will be shown.

Example 1: /msg C SET #darenet BANAPPEAL Please email example@darenet.org to appeal a ban.

This will set the ban appeal policy to "Please email example@darenet.org to appeal a ban" for the channel #darenet.

Example 2: /msg C SET #darenet BANAPPEAL *

This will clear the ban appeal policy for the channel #darenet.

Example 3: /msg C SET #darenet BANAPPEAL

This will display the current ban appeal setting for the channel #darenet.

SIGNKICK

Syntax: /msg C SET #channel SIGNKICK [level]

The SIGNKICK setting sets the minimum access level a user needs not to have their nickname appended to the kick reason when using C's KICK and KICKBAN commands.

To have C always append the nickname, regardless of access level, set the [level] to 501.

If no [level] is given, the channel's current sign kick setting will be shown.

Example 1: /msg C SET #darenet SIGNKICK 300

This will cause C to always prepend the nickname when users with access less than 300 in channel #darenet use KICK or KICKNBAN.

Example 2: /msg C SET #darenet SIGNKICK

This will display the current sign kick setting for the channel #darenet.

JOINFLOODPROTECT

Syntax: /msg C SET #channel JOINFLOODPROTECT [ON|OFF]

The JOINFLOODPROTECT setting toggles network-managed join flood protection on or off.

When on, C will set the channel +m (moderated) and +D (delayed-joins) when a join flood is detected on the channel.

Example 1: /msg C SET #darenet JOINFLOODPROTECT ON

This will turn on join flood protection for the channel #darenet.

Example 2: /msg C SET #darenet JOINFLOODPROTECT

This will display the current join flood protection setting for the channel #darenet.

JOINMSGTHROTTLE

Syntax: /msg C SET #channel JOINMSGTHROTTLE [duration]

The JOINMSGTHROTTLE setting sets the amount of time a user must be on the channel before they may be able to talk on the channel.

When enabled, a user's message to the channel will be blocked by the server if they haven't been on the channel for at least the length of time specified by this setting.

For information on how to format the duration argument, see /msg C HELP DURATIONS

To disable join message throttling, use "*" as the duration.

Example 1: /msg C SET #darenet JOINMSGTHROTTLE 2m

This setting will only allow users who have been on #darenet for at least 2 minutes to talk on the channel.

Example 2: /msg C SET #darenet JOINMSGTHROTTLE *

This will disable join message throttling for the channel #darenet.

MASSHIGHLIGHT

Syntax: /msg C SET #channel MASSHIGHLIGHT [ON|OFF]

The MASSHIGHLIGHT setting, when enabled, will attempt to block messages (at the server) that mass highlight users in the channel.

Example 1: /msg C SET #darenet MASSHIGHLIGHT ON

This will turn on masshighlight blocking for the channel #darenet.

Example 2: /msg C SET #darenet MASSHIGHLIGHT

This will display the current mass highlight block setting for the channel #darenet.

SVSMODERATE

Syntax: /msg C SET #channel SVSMODERATE [ON|OFF]

The SVSMODERATE setting toggles services "moderation" on or off.

When on, all operator/moderator actions on the channel (e.g., kicking, banning, opping/deopping) must be performed using C. The server-side equivalents of these commands will be disabled for the channel.

Example 1: /msg C SET #darenet SVSMODERATE ON

This will turn on services moderation for the channel #darenet.

Example 2: /msg C SET #darenet SVSMODERATE

This will display the current services moderation setting for the channel #darenet.

VERBOSE

Syntax: /msg C SET #channel VERBOSE [value]

The VERBOSE setting allows you to set which group of users on the channel, if any, C should send notifications to when someone makes changes to the user list, permanent/timed ban and quiet lists.

Where [value] may be one of the following values:

ValueDescription
0 Disable notifications.
1 Send notifications to channel operators (@).
2 Send notifications to channel operators (@) and half operators (%).
3 Send notifications to channel operators (@), half operators (%) and voices (+).

Example 1: /msg C SET #darenet VERBOSE 2

This will enable the verbose setting for the channel #darenet, and both ops and halfops will be notified about access and ban/quiet list changes.

Example 2: /msg C SET #darenet VERBOSE 0

This will disable verbose notifications for the channel #darenet.

Example 3: /msg C SET #darenet VERBOSE

This will display the current verbose setting for the channel #darenet.

PUBCMD

Syntax: /msg C SET #channel PUBCMD [level]

The PUBCMD setting sets the minimum access level a user in the channel needs to use in-channel commands.

To disable in-channel commands completely, set [level] to 501.

Example 1: /msg C SET #darenet PUBCMD 1

This will enable in-channel commands only for those on #darenet's user list.

Example 2: /msg C SET #darenet PUBCMD

This will display the current public commands setting for the channel #darenet.

INVITEME

Syntax: /msg C SET #channel INVITEME [level]

The INVITEME setting sets the minimum access level needed to use the INVITE, USET AUTOINVITE and USET AUTOJOIN commands.

To disable these commands completely, set [level] to 501.

Example 1: /msg C SET #darenet INVITEME 200

This will enable the INVITEME command, and the AUTOINVITE and AUTOJOIN user settings, for users with at least 200 access in the channel #darenet.

Example 2: /msg C SET #darenet INVITEME

This will display the current inviteme setting for the channel #darenet.

USERINFO

Syntax: /msg C SET #channel USERINFO [level]

The USERINFO setting sets the minimum access level a user must have for C to show their info line when they join the channel.

To disable showing info lines completely, set [level] to 501.

Example 1: /msg C SET #darenet USERINFO 150

This will enable showing info lines for all users with at least level 150 access in the channel #darenet.

Example 2: /msg C SET #darenet USERINFO

This will display the current user info setting for the channel #darenet.

TOYS

Syntax: /msg C SET #channel TOYS [value]

The TOYS setting is used to determine how C should respond to toy commands, such as 8BALL and COIN.

Where [value] may be one of the following values:

ValueDescription
0 Disable toy commands.
1 Replies to toy commands will be sent privately to the user.
2 Replies to toy commands will be shown in the channel. (default)

Example 1: /msg C SET #darenet TOYS 2

This sets replies to toy commands to be shown publicly in the channel #darenet.

Example 2: /msg C SET #darenet TOYS 0

This will disable toy commands for the channel #darenet.

Example 3: /msg C SET #darenet TOYS

This will display the current toys reply setting for the channel #darenet.

URL

Syntax: /msg C SET #channel URL [url]

The URL setting allows you to attach a URL for the channel, such as the channel's website.

The URL is shown in the channel's INFO listing, and sent to users as a RPL_CHANNELURL (328) numeric reply when they join.

Example 1: /msg C SET #darenet URL https://www.darenet.org/

This sets the URL for the channel #darenet to https://www.darenet.org/.

Example 2: /msg C SET #darenet URL

This will display the current URL setting for the channel #darenet.

OFFCHANNEL

Syntax: /msg C SET #channel OFFCHANNEL [ON|OFF]

The OFFCHANNEL setting determines if C should remain in or outside the channel.

When ON, C will not reside in the channel (i.e., you won't see it in the channel's nicklist of your client). This has no effect on its functions, and in-channel commands will still work. 

Example 1: /msg C SET #darenet OFFCHANNEL OFF

This instructs C to always join and remain on the channel #darenet.

Example 2: /msg C SET #darenet OFFCHANNEL

This will display the current off channel setting for the channel #darenet.

Resetting a channel's settings

If at anytime you want to reset your channel to the default settings, you can use the SET DEFAULT command.

Example: /msg C SET #darenet DEFAULT

This would reset the channel #darenet's settings to their defaults.

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