2.0/Modules/cs mode

From AnopeWiki
Jump to: navigation, search
Language

English

Service ChanServ
Module cs_mode
Author Anope

Description

Mainly controls mode locks and mode access (which is different from channel access) on a channel.


Commands

mode channel LOCK {ADD|DEL|SET|LIST} [what]
The MODE LOCK command allows you to add, delete, and view mode locks on a channel. If a mode is locked on or off, services will not allow that mode to be changed. The SET command will clear all existing mode locks and set the new one given, while ADD and DEL modify the existing mode lock.
mode channel SET modes
The MODE SET command allows you to set modes through services. Wildcards * and ? may be given as parameters for list and status modes.
mode channel CLEAR [what]
The MODE CLEAR command is an easy way to clear modes on a channel. what may be any mode name. Examples include bans, excepts, inviteoverrides, ops, halfops, and voices. If what is not given then all basic modes are removed.
op channel [user]
Gives OP status to the selected nick on a channel. If nick is not given, it will op you. You must have the OP(ME) privilege on the channel to use this command.
deop channel [user]
Removes OP status to the selected nick on a channel. If nick is not given, it will deop you. You must have the OP(ME) privilege on the channel to use this command.
owner channel [user]
Gives OWNER status to the selected nick on a channel. If nick is not given, it will owner you. You must have the OWNER(ME) privilege on the channel to use this command.
deowner channel [user]
Removes OWNER status to the selected nick on a channel. If nick is not given, it will deowner you. You must have the OWNER(ME) privilege on the channel to use this command.
protect channel [user]
Gives PROTECT status to the selected nick on a channel. If nick is not given, it will protect you. You must have the PROTECT(ME) privilege on the channel to use this command.
deprotect channel [user]
Removes PROTECT status to the selected nick on a channel. If nick is not given, it will deprotect you. You must have the PROTECT(ME) privilege on the channel to use this command.
halfop channel [user]
Gives HALFOP status to the selected nick on a channel. If nick is not given, it will halfop you. You must have the HALFOP(ME) privilege on the channel to use this command.
dehalfop channel [user]
Removes HALFOP status to the selected nick on a channel. If nick is not given, it will dehalfop you. You must have the HALFOP(ME) privilege on the channel to use this command.
voice channel [user]
Gives VOICE status to the selected nick on a channel. If nick is not given, it will voice you. You must have the VOICE(ME) privilege on the channel to use this command.
devoice channel [user]
Removes VOICE status to the selected nick on a channel. If nick is not given, it will devoice you. You must have the VOICE(ME) privilege on the channel to use this command.

Examples

/msg ChanServ MODE #myChannel LOCK SET +srt

/msg ChanServ MODE #myChannel SET +msl 2

/msg ChanServ MODE #myChannel CLEAR bans

/msg ChanServ OWNER #myChannel

/msg ChanServ DEOP #myChannel Fred

Default Configuration

/*
 * cs_mode
 *
 * Provides the command chanserv/mode and chanserv/modes.
 *
 * Used for changing mode locks and changing modes. Multiple commands may be mapped to chanserv/modes, the
 * configuration directive 'set' and 'unset' are used to tell chanserv/modes which modes should be set or
 * unset when the command is executed.
 */
module
{
        name = "cs_mode"
 
        /*
         * Default modes for mode lock, these are set on newly registered channels.
         *
         * If not set, the default is +nt.
         */
        mlock = "+nt"
}
command { service = "ChanServ"; name = "MODE"; command = "chanserv/mode"; group = "chanserv/management"; }
 
command { service = "ChanServ"; name = "OWNER"; command = "chanserv/modes"; group = "chanserv/status"; set = "OWNER" }
command { service = "ChanServ"; name = "DEOWNER"; command = "chanserv/modes"; group = "chanserv/status"; unset = "OWNER" }
 
command { service = "ChanServ"; name = "PROTECT"; command = "chanserv/modes"; group = "chanserv/status"; set = "PROTECT" }
command { service = "ChanServ"; name = "DEPROTECT"; command = "chanserv/modes"; group = "chanserv/status"; unset = "PROTECT" }
 
command { service = "ChanServ"; name = "OP"; command = "chanserv/modes"; group = "chanserv/status"; set = "OP" }
command { service = "ChanServ"; name = "DEOP"; command = "chanserv/modes"; group = "chanserv/status"; unset = "OP" }
 
command { service = "ChanServ"; name = "HALFOP"; command = "chanserv/modes"; group = "chanserv/status"; set = "HALFOP" }
command { service = "ChanServ"; name = "DEHALFOP"; command = "chanserv/modes"; group = "chanserv/status"; unset = "HALFOP" }
 
command { service = "ChanServ"; name = "VOICE"; command = "chanserv/modes"; group = "chanserv/status"; set = "VOICE" }
command { service = "ChanServ"; name = "DEVOICE"; command = "chanserv/modes"; group = "chanserv/status"; unset = "VOICE" }