Difference between revisions of "2.0/Modules/cs core"
From AnopeWiki
m (Azander moved page 2.0/Modules/cs levels to 2.0/Modules/cs core without leaving a redirect) |
|||
Line 1: | Line 1: | ||
{{Language|2.0/Modules/cs_core}} | {{Language|2.0/Modules/cs_core}} | ||
− | {{Syntax| | + | {{Syntax||ChanServ|Anope}} |
== <div class="moduleheader">Description</div> == | == <div class="moduleheader">Description</div> == | ||
− | + | :Internal configuration of ChanServ | |
− | + | ||
== <div class="moduleheader">Default Configuration</div> == | == <div class="moduleheader">Default Configuration</div> == | ||
Line 125: | Line 125: | ||
always_lower_ts = false | always_lower_ts = false | ||
} | } | ||
+ | /* | ||
+ | * ChanServ privilege configuration. | ||
+ | * | ||
+ | * ChanServ privileges are used to determine who has what access in channels. By default the core has its own | ||
+ | * set of privileges it uses for various commands, which are defined below. Privilege ranks are used to | ||
+ | * determine how powerful privileges are relative to other privileges, which is used by Anope to determine | ||
+ | * who has greater access in a channel. | ||
+ | * | ||
+ | * If you load cs_access, you may define a level for the privilege, which is used by chanserv/access and chanserv/levels. | ||
+ | * The levels defined will be used as the default levels for newly registered channels. | ||
+ | * The level "founder" is a special level which means anyone with the privilege FOUNDER on the channel | ||
+ | * has that permission. Additionally, the level "disabled" means that no one can use the privilege, including founders. | ||
+ | * | ||
+ | * If you load cs_flags, you may define a flag associated with that privilege for use in chanserv/flags. | ||
+ | * | ||
+ | * If you load cs_xop, you may define a XOP command to associate the privilege with. | ||
+ | * | ||
+ | * The name of privileges are uesd to associate them with channel modes. If you are using an IRCd that allows you to define additional | ||
+ | * channel status modes, such as InspIRCd, you can associate privileges (and thus access levels, flags, xop) with the mode by naming | ||
+ | * the privileges appropriately. For example, if you had a channel mode called admin, you could create AUTOADMIN, ADMIN, and ADMINME | ||
+ | * privileges which would automatically be associated with that channel mode. | ||
+ | * | ||
+ | * Defining new privileges here is not useful unless you have a module (eg, a third party one) made to check for | ||
+ | * the specific level you are defining. | ||
+ | * | ||
+ | * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. | ||
+ | */ | ||
+ | /* | ||
+ | * ACCESS_CHANGE privilege. | ||
+ | * | ||
+ | * Used by chanserv/access, chanserv/flags and chanserv/xop. | ||
+ | * | ||
+ | * Users with this permission can modify the permissions of others. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "ACCESS_CHANGE" | ||
+ | rank = 0 | ||
+ | level = 10 | ||
+ | flag = "f" | ||
+ | xop = "SOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * ACCESS_LIST privilege. | ||
+ | * | ||
+ | * Used by chanserv/access, chanserv/flags, and chanserv/xop. | ||
+ | * | ||
+ | * Users with this permission can view the access list of channels. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "ACCESS_LIST" | ||
+ | rank = 10 | ||
+ | level = 3 | ||
+ | flag = "f" | ||
+ | xop = "VOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * AKICK privilege. | ||
+ | * | ||
+ | * Used by chanserv/akick and chanserv/enforce. | ||
+ | * | ||
+ | * Users with this permission can modify the AKICK list. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "AKICK" | ||
+ | rank = 250 | ||
+ | level = 10 | ||
+ | flag = "K" | ||
+ | xop = "SOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * ASSIGN privilege. | ||
+ | * | ||
+ | * Used by botserv/assign. | ||
+ | * | ||
+ | * Users with this permission can assign and unassign BotServ bots to and from the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "ASSIGN" | ||
+ | rank = 270 | ||
+ | level = "founder" | ||
+ | flag = "s" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * AUTOHALFOP privilege. | ||
+ | * | ||
+ | * Used by the core. | ||
+ | * | ||
+ | * Users with this permission get halfop on join. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "AUTOHALFOP" | ||
+ | rank = 100 | ||
+ | level = 4 | ||
+ | flag = "H" | ||
+ | xop = "HOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * AUTOOP privilege. | ||
+ | * | ||
+ | * Used by the core. | ||
+ | * | ||
+ | * Users with this permission get op on join. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "AUTOOP" | ||
+ | rank = 210 | ||
+ | level = 5 | ||
+ | flag = "O" | ||
+ | xop = "AOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * AUTOOWNER privilege. | ||
+ | * | ||
+ | * Used by the core. | ||
+ | * | ||
+ | * Users with this permission get owner on join. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "AUTOOWNER" | ||
+ | rank = 330 | ||
+ | level = 9999 | ||
+ | flag = "Q" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * AUTOPROTECT privilege. | ||
+ | * | ||
+ | * Used by the core. | ||
+ | * | ||
+ | * Users with this permission get admin on join. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "AUTOPROTECT" | ||
+ | rank = 240 | ||
+ | level = 10 | ||
+ | flag = "A" | ||
+ | xop = "SOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * AUTOOWNER privilege. | ||
+ | * | ||
+ | * Used by the core. | ||
+ | * | ||
+ | * Users with this permission get owner on join. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "AUTOOWNER" | ||
+ | rank = 330 | ||
+ | level = 9999 | ||
+ | flag = "Q" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * AUTOPROTECT privilege. | ||
+ | * | ||
+ | * Used by the core. | ||
+ | * | ||
+ | * Users with this permission get admin on join. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "AUTOPROTECT" | ||
+ | rank = 240 | ||
+ | level = 10 | ||
+ | flag = "A" | ||
+ | xop = "SOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * BAN privilege. | ||
+ | * | ||
+ | * Used by chanserv/ban. | ||
+ | * | ||
+ | * Users with this permission can use the BAN command. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "BAN" | ||
+ | rank = 150 | ||
+ | level = 4 | ||
+ | flag = "b" | ||
+ | xop = "HOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * FANTASIA privilege. | ||
+ | * | ||
+ | * Used by botserv/main and chanserv/xop. | ||
+ | * | ||
+ | * Users with this permission can use fantasy commands in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "FANTASIA" | ||
+ | rank = 30 | ||
+ | level = 3 | ||
+ | flag = "c" | ||
+ | xop = "VOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * FOUNDER privilege. | ||
+ | * | ||
+ | * Used by chanserv/access, chanserv/akick, | ||
+ | * chanserv/drop, chanserv/set/founder, | ||
+ | * chanserv/set/securefounder, chanserv/set/successor and chanserv/xop. | ||
+ | * | ||
+ | * Users with this permission are treated as founders and can use | ||
+ | * commands restricted to founders. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "FOUNDER" | ||
+ | rank = 360 | ||
+ | level = 10000 | ||
+ | flag = "F" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * GETKEY privilege. | ||
+ | * | ||
+ | * Used by chanserv/getkey and nickserv/ajoin. | ||
+ | * | ||
+ | * Users with this permission can get they channel key with GETKEY and | ||
+ | * can use nickserv/ajoin to join channels with keys. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "GETKEY" | ||
+ | rank = 180 | ||
+ | level = 5 | ||
+ | flag = "G" | ||
+ | xop = "AOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * HALFOP privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode, chanserv/halfop and chanserv/dehalfop. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to halfop and dehalfop | ||
+ | * others in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "HALFOP" | ||
+ | rank = 120 | ||
+ | level = 5 | ||
+ | flag = "h" | ||
+ | xop = "AOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * HALFOPME privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode, chanserv/halfop and chanserv/dehalfop. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to halfop and dehalfop | ||
+ | * themselves in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "HALFOPME" | ||
+ | rank = 110 | ||
+ | level = 4 | ||
+ | flag = "h" | ||
+ | xop = "HOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * INFO privilege. | ||
+ | * | ||
+ | * Used by botserv/info and chanserv/info. | ||
+ | * | ||
+ | * Users with this permission are allowed to get the full INFO output | ||
+ | * from BotServ and ChanServ. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "INFO" | ||
+ | rank = 80 | ||
+ | level = 9999 | ||
+ | flag = "I" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * INVITE privilege. | ||
+ | * | ||
+ | * Used by chanserv/invite and nickserv/ajoin. | ||
+ | * | ||
+ | * Users with this permission can invite users through ChanServ and | ||
+ | * join invite only channels with nickserv/ajoin. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "INVITE" | ||
+ | rank = 190 | ||
+ | level = 5 | ||
+ | flag = "i" | ||
+ | xop = "AOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * KICK privilege. | ||
+ | * | ||
+ | * Used by chanserv/kick. | ||
+ | * | ||
+ | * Users with this permission can use the KICK command. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "KICK" | ||
+ | rank = 130 | ||
+ | level = 4 | ||
+ | flag = "k" | ||
+ | xop = "HOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * MEMO privilege. | ||
+ | * | ||
+ | * Used by memoserv/del, memoserv/ignore, memoserv/info, memoserv/list, | ||
+ | * memoserv/main, memoserv/read and memoserv/set. | ||
+ | * | ||
+ | * Users with this permission can manage channel memos. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "MEMO" | ||
+ | rank = 280 | ||
+ | level = 10 | ||
+ | flag = "m" | ||
+ | xop = "SOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * MODE privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode. | ||
+ | * | ||
+ | * Users with this permission can set modes through ChanServ and change | ||
+ | * the mode lock. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "MODE" | ||
+ | rank = 170 | ||
+ | level = 9999 | ||
+ | flag = "s" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * NOKICK privilege. | ||
+ | * | ||
+ | * Used by botserv/kick. | ||
+ | * | ||
+ | * Users with this permission are spared from automated BotServ kicks. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "NOKICK" | ||
+ | rank = 20 | ||
+ | level = 1 | ||
+ | flag = "N" | ||
+ | xop = "VOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * OP privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode, chanserv/modes. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to op and deop | ||
+ | * others in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "OP" | ||
+ | rank = 230 | ||
+ | level = 5 | ||
+ | flag = "o" | ||
+ | xop = "SOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * OPME privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode, chanserv/modes. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to op and deop | ||
+ | * themselves in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "OPME" | ||
+ | rank = 220 | ||
+ | level = 5 | ||
+ | flag = "o" | ||
+ | xop = "AOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * OWNER privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode and chanserv/modes. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to owner and deowner | ||
+ | * others in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "OWNER" | ||
+ | rank = 350 | ||
+ | level = "founder" | ||
+ | flag = "q" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * OWNERME privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode and chanserv/modes. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to owner and deowner | ||
+ | * themselves in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "OWNERME" | ||
+ | rank = 340 | ||
+ | level = 9999 | ||
+ | flag = "q" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * PROTECT privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode and chanserv/modes. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to protect and deprotect | ||
+ | * others in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "PROTECT" | ||
+ | rank = 310 | ||
+ | level = 9999 | ||
+ | flag = "a" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * PROTECTME privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode and chanserv/modes. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to protect and deprotect | ||
+ | * themselves in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "PROTECTME" | ||
+ | rank = 300 | ||
+ | level = 10 | ||
+ | flag = "a" | ||
+ | xop = "AOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * SAY privilege. | ||
+ | * | ||
+ | * Used by botserv/control. | ||
+ | * | ||
+ | * Users with this permission can use the BotServ bot in the channel to | ||
+ | * say or do a /me with the provided message. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "SAY" | ||
+ | rank = 90 | ||
+ | level = 5 | ||
+ | flag = "B" | ||
+ | xop = "AOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * SET privilege. | ||
+ | * | ||
+ | * Used by botserv/kick, botserv/set, chanserv/clone, chanserv/log, | ||
+ | * chanserv/saset/noexpire and chanserv/set. | ||
+ | * | ||
+ | * Users with this permission can set what BotServ will kick for, change | ||
+ | * BotServ and ChanServ settings, clone ChanServ channel setings, and | ||
+ | * set ChanServ logging options. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "SET" | ||
+ | rank = 320 | ||
+ | level = 9999 | ||
+ | flag = "s" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * SIGNKICK privilege. | ||
+ | * | ||
+ | * Used by chanserv/ban and chanserv/kick. | ||
+ | * | ||
+ | * Users with this permission won't get their nick shown in the kick | ||
+ | * through ChanServ when the setting SIGNKICK is set to LEVEL. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "SIGNKICK" | ||
+ | rank = 140 | ||
+ | level = 9999 | ||
+ | flag = "K" | ||
+ | xop = "QOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * TOPIC privilege. | ||
+ | * | ||
+ | * Used by chanserv/topic. | ||
+ | * | ||
+ | * Users with this permission can change the channel topic through ChanServ. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "TOPIC" | ||
+ | rank = 160 | ||
+ | level = 5 | ||
+ | flag = "t" | ||
+ | xop = "AOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * UNBAN privilege. | ||
+ | * | ||
+ | * Used by chanserv/unban. | ||
+ | * | ||
+ | * Users with this permission can unban themselves and others through ChanServ. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "UNBAN" | ||
+ | rank = 200 | ||
+ | level = 4 | ||
+ | flag = "u" | ||
+ | xop = "HOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * VOICE privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode and chanserv/modes. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to voice and devoice | ||
+ | * others in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "VOICE" | ||
+ | rank = 70 | ||
+ | level = 4 | ||
+ | flag = "v" | ||
+ | xop = "HOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * VOICEME privilege. | ||
+ | * | ||
+ | * Used by chanserv/mode and chanserv/modes. | ||
+ | * | ||
+ | * Users with this permission can use ChanServ to voice and devoice | ||
+ | * themselves in the channel. | ||
+ | */ | ||
+ | privilege | ||
+ | { | ||
+ | name = "VOICEME" | ||
+ | rank = 60 | ||
+ | level = 3 | ||
+ | flag = "v" | ||
+ | xop = "VOP" | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * Core ChanServ commands. | ||
+ | * | ||
+ | * In Anope modules can provide (multiple) commands, each of which has a unique command name. Once these modules | ||
+ | * are loaded you can then configure the commands to be added to any client you like with any name you like. | ||
+ | * | ||
+ | * Additionally, you may provide a permission name that must be in the opertype of users executing the command. | ||
+ | * | ||
+ | * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. | ||
+ | */ | ||
+ | |||
+ | /* Command group configuration for ChanServ. | ||
+ | * | ||
+ | * Commands may optionally be placed into groups to make ChanServ's HELP output easier to understand. | ||
+ | * Remove the following groups to use the old behavior of simply listing all ChanServ commands from HELP. | ||
+ | */ | ||
+ | command_group | ||
+ | { | ||
+ | name = "chanserv/access" | ||
+ | description = "Used to manage the list of privileged users" | ||
+ | } | ||
+ | |||
+ | command_group | ||
+ | { | ||
+ | name = "chanserv/status" | ||
+ | description = "Used to modify the channel status of you or other users" | ||
+ | } | ||
+ | |||
+ | command_group | ||
+ | { | ||
+ | name = "chanserv/management" | ||
+ | description = "Used to manage channels" | ||
+ | } | ||
+ | |||
+ | command_group | ||
+ | { | ||
+ | name = "chanserv/admin" | ||
+ | description = "Services Operator commands" | ||
+ | } | ||
+ | |||
+ | /* Give it a help command. */ | ||
+ | command { service = "ChanServ"; name = "HELP"; command = "generic/help"; } | ||
</syntaxhighlight></div> | </syntaxhighlight></div> |
Latest revision as of 22:33, 6 May 2014
Language | |
---|---|
English |
|
Description
- Internal configuration of ChanServ
Default Configuration
/* * Core ChanServ module. * * Provides essential functionality for ChanServ. */ module { name = "chanserv" /* * The name of the client that should be ChanServ. */ client = "ChanServ" /* * The default options for newly registered channels. Note that changing these options * will have no effect on channels which are already registered. The list must be separated * by spaces. * * The options are: * - keeptopic: Retain topic when the channel is not in use * - peace: Disallow users from kicking or removing modes from others who are of the same * access level or superior * - cs_private: Hide the channel from ChanServ's LIST command * - restricted: Kick/ban users who are restricted from the channel * - cs_secure: Enable channel security, requiring the user to be identified with NickServ in * order to be considered for being on the access list of the channel * - secureops: Only allow operator status to be given if the user is on the access list * - securefounder: Only allow the real founder of the channel to drop the channel, change it's * password, or change the founder or successor * - signkick: Use of ChanServ's KICK command will cause the user's nick to be signed to the kick. * - signkick_level: Same as above, but the kick will not be signed if the user is at the same access * level or superior to the target * - topiclock: Disallow the topic to be changed except with ChanServ's TOPIC command * - persist: Keep the channel open at all times * - noautoop: Disables autoop on the channel * - cs_keep_modes: Enables keep modes on the channel, which retains modes when the channel is * not in use. * - none: No defaults * * This directive is optional, if left blank, the options will default to keeptopic, cs_secure, securefounder, * and signkick. If you really want no defaults, use "none" by itself as the option. */ defaults = "keeptopic peace cs_secure securefounder signkick" /* * The maximum number of channels which may be registered to a single nickname. * * This directive is optional, but recommended. * If not set, there will be no restriction on the numbers of channels a single nickname can have registered. */ maxregistered = 20 /* * The length of time before a channel registration expires. * * This directive is optional, but recommended. * If not set, the default is 14 days. */ expire = 14d /* * The maximum number of entries on a channel's access list. * If not set, the default is 1024. This can be set to 0 for unlimited. */ accessmax = 1024 /* * The length of time ChanServ stays in a channel after kicking a user from a channel they are not * permitted to be in. This only occurs when the user is the only one in the channel. */ inhabit = 15s /* * Allow only IRC Operators to use ChanServ. * * This directive is optional. */ #opersonly = yes /* * Modes that will not be allowed to be locked. Oper only modes such as +O * are always restricted from regular users and are not affected by this. * Comment out for no restrictions. */ #nomlock = "P" /* * Modes that are required to be set and only set on all registered channels. * These modes can not be locked or unlocked. The registered channel mode is * automatically always required, if such a mode exists. */ #require = "r" /* * The maximum length of the reason field for user commands such as chanserv/kick * and chanserv/ban. */ reasonmax = 200 /* * If set, prevents channel access entries from containing hostmasks. */ disallow_hostmask_access = false /* * If set, prevents channels from being on access lists. */ disallow_channel_access = false /* * If set, ChanServ will always lower the timestamp of registered channels to their registration date. * This prevents several race conditions where unauthorized users can join empty registered channels and set * modes etc. prior to services deopping them. */ always_lower_ts = false } /* * ChanServ privilege configuration. * * ChanServ privileges are used to determine who has what access in channels. By default the core has its own * set of privileges it uses for various commands, which are defined below. Privilege ranks are used to * determine how powerful privileges are relative to other privileges, which is used by Anope to determine * who has greater access in a channel. * * If you load cs_access, you may define a level for the privilege, which is used by chanserv/access and chanserv/levels. * The levels defined will be used as the default levels for newly registered channels. * The level "founder" is a special level which means anyone with the privilege FOUNDER on the channel * has that permission. Additionally, the level "disabled" means that no one can use the privilege, including founders. * * If you load cs_flags, you may define a flag associated with that privilege for use in chanserv/flags. * * If you load cs_xop, you may define a XOP command to associate the privilege with. * * The name of privileges are uesd to associate them with channel modes. If you are using an IRCd that allows you to define additional * channel status modes, such as InspIRCd, you can associate privileges (and thus access levels, flags, xop) with the mode by naming * the privileges appropriately. For example, if you had a channel mode called admin, you could create AUTOADMIN, ADMIN, and ADMINME * privileges which would automatically be associated with that channel mode. * * Defining new privileges here is not useful unless you have a module (eg, a third party one) made to check for * the specific level you are defining. * * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. */ /* * ACCESS_CHANGE privilege. * * Used by chanserv/access, chanserv/flags and chanserv/xop. * * Users with this permission can modify the permissions of others. */ privilege { name = "ACCESS_CHANGE" rank = 0 level = 10 flag = "f" xop = "SOP" } /* * ACCESS_LIST privilege. * * Used by chanserv/access, chanserv/flags, and chanserv/xop. * * Users with this permission can view the access list of channels. */ privilege { name = "ACCESS_LIST" rank = 10 level = 3 flag = "f" xop = "VOP" } /* * AKICK privilege. * * Used by chanserv/akick and chanserv/enforce. * * Users with this permission can modify the AKICK list. */ privilege { name = "AKICK" rank = 250 level = 10 flag = "K" xop = "SOP" } /* * ASSIGN privilege. * * Used by botserv/assign. * * Users with this permission can assign and unassign BotServ bots to and from the channel. */ privilege { name = "ASSIGN" rank = 270 level = "founder" flag = "s" xop = "QOP" } /* * AUTOHALFOP privilege. * * Used by the core. * * Users with this permission get halfop on join. */ privilege { name = "AUTOHALFOP" rank = 100 level = 4 flag = "H" xop = "HOP" } /* * AUTOOP privilege. * * Used by the core. * * Users with this permission get op on join. */ privilege { name = "AUTOOP" rank = 210 level = 5 flag = "O" xop = "AOP" } /* * AUTOOWNER privilege. * * Used by the core. * * Users with this permission get owner on join. */ privilege { name = "AUTOOWNER" rank = 330 level = 9999 flag = "Q" xop = "QOP" } /* * AUTOPROTECT privilege. * * Used by the core. * * Users with this permission get admin on join. */ privilege { name = "AUTOPROTECT" rank = 240 level = 10 flag = "A" xop = "SOP" } /* * AUTOOWNER privilege. * * Used by the core. * * Users with this permission get owner on join. */ privilege { name = "AUTOOWNER" rank = 330 level = 9999 flag = "Q" xop = "QOP" } /* * AUTOPROTECT privilege. * * Used by the core. * * Users with this permission get admin on join. */ privilege { name = "AUTOPROTECT" rank = 240 level = 10 flag = "A" xop = "SOP" } /* * BAN privilege. * * Used by chanserv/ban. * * Users with this permission can use the BAN command. */ privilege { name = "BAN" rank = 150 level = 4 flag = "b" xop = "HOP" } /* * FANTASIA privilege. * * Used by botserv/main and chanserv/xop. * * Users with this permission can use fantasy commands in the channel. */ privilege { name = "FANTASIA" rank = 30 level = 3 flag = "c" xop = "VOP" } /* * FOUNDER privilege. * * Used by chanserv/access, chanserv/akick, * chanserv/drop, chanserv/set/founder, * chanserv/set/securefounder, chanserv/set/successor and chanserv/xop. * * Users with this permission are treated as founders and can use * commands restricted to founders. */ privilege { name = "FOUNDER" rank = 360 level = 10000 flag = "F" xop = "QOP" } /* * GETKEY privilege. * * Used by chanserv/getkey and nickserv/ajoin. * * Users with this permission can get they channel key with GETKEY and * can use nickserv/ajoin to join channels with keys. */ privilege { name = "GETKEY" rank = 180 level = 5 flag = "G" xop = "AOP" } /* * HALFOP privilege. * * Used by chanserv/mode, chanserv/halfop and chanserv/dehalfop. * * Users with this permission can use ChanServ to halfop and dehalfop * others in the channel. */ privilege { name = "HALFOP" rank = 120 level = 5 flag = "h" xop = "AOP" } /* * HALFOPME privilege. * * Used by chanserv/mode, chanserv/halfop and chanserv/dehalfop. * * Users with this permission can use ChanServ to halfop and dehalfop * themselves in the channel. */ privilege { name = "HALFOPME" rank = 110 level = 4 flag = "h" xop = "HOP" } /* * INFO privilege. * * Used by botserv/info and chanserv/info. * * Users with this permission are allowed to get the full INFO output * from BotServ and ChanServ. */ privilege { name = "INFO" rank = 80 level = 9999 flag = "I" xop = "QOP" } /* * INVITE privilege. * * Used by chanserv/invite and nickserv/ajoin. * * Users with this permission can invite users through ChanServ and * join invite only channels with nickserv/ajoin. */ privilege { name = "INVITE" rank = 190 level = 5 flag = "i" xop = "AOP" } /* * KICK privilege. * * Used by chanserv/kick. * * Users with this permission can use the KICK command. */ privilege { name = "KICK" rank = 130 level = 4 flag = "k" xop = "HOP" } /* * MEMO privilege. * * Used by memoserv/del, memoserv/ignore, memoserv/info, memoserv/list, * memoserv/main, memoserv/read and memoserv/set. * * Users with this permission can manage channel memos. */ privilege { name = "MEMO" rank = 280 level = 10 flag = "m" xop = "SOP" } /* * MODE privilege. * * Used by chanserv/mode. * * Users with this permission can set modes through ChanServ and change * the mode lock. */ privilege { name = "MODE" rank = 170 level = 9999 flag = "s" xop = "QOP" } /* * NOKICK privilege. * * Used by botserv/kick. * * Users with this permission are spared from automated BotServ kicks. */ privilege { name = "NOKICK" rank = 20 level = 1 flag = "N" xop = "VOP" } /* * OP privilege. * * Used by chanserv/mode, chanserv/modes. * * Users with this permission can use ChanServ to op and deop * others in the channel. */ privilege { name = "OP" rank = 230 level = 5 flag = "o" xop = "SOP" } /* * OPME privilege. * * Used by chanserv/mode, chanserv/modes. * * Users with this permission can use ChanServ to op and deop * themselves in the channel. */ privilege { name = "OPME" rank = 220 level = 5 flag = "o" xop = "AOP" } /* * OWNER privilege. * * Used by chanserv/mode and chanserv/modes. * * Users with this permission can use ChanServ to owner and deowner * others in the channel. */ privilege { name = "OWNER" rank = 350 level = "founder" flag = "q" xop = "QOP" } /* * OWNERME privilege. * * Used by chanserv/mode and chanserv/modes. * * Users with this permission can use ChanServ to owner and deowner * themselves in the channel. */ privilege { name = "OWNERME" rank = 340 level = 9999 flag = "q" xop = "QOP" } /* * PROTECT privilege. * * Used by chanserv/mode and chanserv/modes. * * Users with this permission can use ChanServ to protect and deprotect * others in the channel. */ privilege { name = "PROTECT" rank = 310 level = 9999 flag = "a" xop = "QOP" } /* * PROTECTME privilege. * * Used by chanserv/mode and chanserv/modes. * * Users with this permission can use ChanServ to protect and deprotect * themselves in the channel. */ privilege { name = "PROTECTME" rank = 300 level = 10 flag = "a" xop = "AOP" } /* * SAY privilege. * * Used by botserv/control. * * Users with this permission can use the BotServ bot in the channel to * say or do a /me with the provided message. */ privilege { name = "SAY" rank = 90 level = 5 flag = "B" xop = "AOP" } /* * SET privilege. * * Used by botserv/kick, botserv/set, chanserv/clone, chanserv/log, * chanserv/saset/noexpire and chanserv/set. * * Users with this permission can set what BotServ will kick for, change * BotServ and ChanServ settings, clone ChanServ channel setings, and * set ChanServ logging options. */ privilege { name = "SET" rank = 320 level = 9999 flag = "s" xop = "QOP" } /* * SIGNKICK privilege. * * Used by chanserv/ban and chanserv/kick. * * Users with this permission won't get their nick shown in the kick * through ChanServ when the setting SIGNKICK is set to LEVEL. */ privilege { name = "SIGNKICK" rank = 140 level = 9999 flag = "K" xop = "QOP" } /* * TOPIC privilege. * * Used by chanserv/topic. * * Users with this permission can change the channel topic through ChanServ. */ privilege { name = "TOPIC" rank = 160 level = 5 flag = "t" xop = "AOP" } /* * UNBAN privilege. * * Used by chanserv/unban. * * Users with this permission can unban themselves and others through ChanServ. */ privilege { name = "UNBAN" rank = 200 level = 4 flag = "u" xop = "HOP" } /* * VOICE privilege. * * Used by chanserv/mode and chanserv/modes. * * Users with this permission can use ChanServ to voice and devoice * others in the channel. */ privilege { name = "VOICE" rank = 70 level = 4 flag = "v" xop = "HOP" } /* * VOICEME privilege. * * Used by chanserv/mode and chanserv/modes. * * Users with this permission can use ChanServ to voice and devoice * themselves in the channel. */ privilege { name = "VOICEME" rank = 60 level = 3 flag = "v" xop = "VOP" } /* * Core ChanServ commands. * * In Anope modules can provide (multiple) commands, each of which has a unique command name. Once these modules * are loaded you can then configure the commands to be added to any client you like with any name you like. * * Additionally, you may provide a permission name that must be in the opertype of users executing the command. * * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. */ /* Command group configuration for ChanServ. * * Commands may optionally be placed into groups to make ChanServ's HELP output easier to understand. * Remove the following groups to use the old behavior of simply listing all ChanServ commands from HELP. */ command_group { name = "chanserv/access" description = "Used to manage the list of privileged users" } command_group { name = "chanserv/status" description = "Used to modify the channel status of you or other users" } command_group { name = "chanserv/management" description = "Used to manage channels" } command_group { name = "chanserv/admin" description = "Services Operator commands" } /* Give it a help command. */ command { service = "ChanServ"; name = "HELP"; command = "generic/help"; }