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
Changing a channel's settings
SET
Syntax: /msg C SET #channel [<option> [<value>]]
The SET command allows channel owners and co-owners to change their channel's settings.
If no arguments are given, the 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 setting 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 sets 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 controls 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:
Value | Description |
---|---|
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:
Value | Description |
---|---|
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:
Value | Description |
---|---|
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:
Value | Description |
---|---|
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:
Value | Description |
---|---|
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:
Value | Description |
---|---|
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:
Value | Description |
---|---|
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.