906 lines
20 KiB
Plaintext
906 lines
20 KiB
Plaintext
/*
|
|
* example configuration at https://github.com/anope/anope/blob/2.0/data/chanserv.example.conf
|
|
*/
|
|
|
|
service
|
|
{
|
|
nick = "CHANSERV"
|
|
user = "CS"
|
|
host = "chanserv.host"
|
|
gecos = "Channel Registration Service"
|
|
modes = "+oR"
|
|
channels = "@#services"
|
|
}
|
|
|
|
|
|
module
|
|
{
|
|
name = "chanserv"
|
|
client = "ChanServ"
|
|
defaults = "keeptopic peace cs_keep_modes cs_secure persist securefounder signkick secureops"
|
|
maxregistered = 192
|
|
accessmax = 256
|
|
inhabit = 15s
|
|
reasonmax = 256
|
|
signkickformat = "%m (%n)"
|
|
disallow_hostmask_access = false
|
|
disallow_channel_access = false
|
|
always_lower_ts = false
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "ACCESS_CHANGE"
|
|
rank = 0
|
|
level = 10
|
|
flag = "f"
|
|
xop = "SOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "ACCESS_LIST"
|
|
rank = 10
|
|
level = 3
|
|
flag = "f"
|
|
xop = "VOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "AKICK"
|
|
rank = 250
|
|
level = 10
|
|
flag = "K"
|
|
xop = "SOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "ASSIGN"
|
|
rank = 270
|
|
level = "founder"
|
|
flag = "s"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "AUTOHALFOP"
|
|
rank = 100
|
|
level = 4
|
|
flag = "H"
|
|
xop = "HOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "AUTOOP"
|
|
rank = 210
|
|
level = 5
|
|
flag = "O"
|
|
xop = "AOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "AUTOOWNER"
|
|
rank = 330
|
|
level = 9999
|
|
flag = "Q"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "AUTOPROTECT"
|
|
rank = 240
|
|
level = 10
|
|
flag = "A"
|
|
xop = "SOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "AUTOVOICE"
|
|
rank = 50
|
|
level = 3
|
|
flag = "V"
|
|
xop = "VOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "BADWORDS"
|
|
rank = 260
|
|
level = 10
|
|
flag = "K"
|
|
xop = "SOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "BAN"
|
|
rank = 150
|
|
level = 4
|
|
flag = "b"
|
|
xop = "HOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "FANTASIA"
|
|
rank = 30
|
|
level = 3
|
|
flag = "c"
|
|
xop = "VOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "FOUNDER"
|
|
rank = 360
|
|
level = 10000
|
|
flag = "F"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "GETKEY"
|
|
rank = 180
|
|
level = 5
|
|
flag = "G"
|
|
xop = "AOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "HALFOP"
|
|
rank = 120
|
|
level = 5
|
|
flag = "h"
|
|
xop = "AOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "HALFOPME"
|
|
rank = 110
|
|
level = 4
|
|
flag = "h"
|
|
xop = "HOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "INFO"
|
|
rank = 80
|
|
level = 9999
|
|
flag = "I"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "INVITE"
|
|
rank = 190
|
|
level = 5
|
|
flag = "i"
|
|
xop = "AOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "KICK"
|
|
rank = 130
|
|
level = 4
|
|
flag = "k"
|
|
xop = "HOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "MEMO"
|
|
rank = 280
|
|
level = 10
|
|
flag = "m"
|
|
xop = "SOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "MODE"
|
|
rank = 170
|
|
level = 9999
|
|
flag = "s"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "NOKICK"
|
|
rank = 20
|
|
level = 1
|
|
flag = "N"
|
|
xop = "VOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "OP"
|
|
rank = 230
|
|
level = 5
|
|
flag = "o"
|
|
xop = "SOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "OPME"
|
|
rank = 220
|
|
level = 5
|
|
flag = "o"
|
|
xop = "AOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "OWNER"
|
|
rank = 350
|
|
level = "founder"
|
|
flag = "q"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "OWNERME"
|
|
rank = 340
|
|
level = 9999
|
|
flag = "q"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "PROTECT"
|
|
rank = 310
|
|
level = 9999
|
|
flag = "a"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "PROTECTME"
|
|
rank = 300
|
|
level = 10
|
|
flag = "a"
|
|
xop = "SOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "SAY"
|
|
rank = 90
|
|
level = 5
|
|
flag = "B"
|
|
xop = "AOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "SET"
|
|
rank = 320
|
|
level = 9999
|
|
flag = "s"
|
|
xop = "QOP"
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "SIGNKICK";
|
|
rank = 140;
|
|
level = 9999;
|
|
flag = "K";
|
|
xop = "QOP";
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "TOPIC";
|
|
rank = 160;
|
|
level = 5;
|
|
flag = "t";
|
|
xop = "AOP";
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "UNBAN";
|
|
rank = 200;
|
|
level = 4;
|
|
flag = "u";
|
|
xop = "HOP";
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "VOICE";
|
|
rank = 70;
|
|
level = 4;
|
|
flag = "v";
|
|
xop = "HOP";
|
|
}
|
|
|
|
privilege
|
|
{
|
|
name = "VOICEME";
|
|
rank = 60;
|
|
level = 3;
|
|
flag = "v";
|
|
xop = "VOP";
|
|
}
|
|
|
|
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");
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "HELP";
|
|
command = "generic/help";
|
|
}
|
|
|
|
|
|
module {
|
|
name = "cs_access";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "ACCESS";
|
|
command = "chanserv/access";
|
|
group = "chanserv/access";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "LEVELS";
|
|
command = "chanserv/levels";
|
|
group = "chanserv/access";
|
|
}
|
|
|
|
module
|
|
{
|
|
name = "cs_akick"
|
|
autokickmax = 256
|
|
autokickreason = "User has been banned from the channel"
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "AKICK";
|
|
command = "chanserv/akick";
|
|
group = "chanserv/management";
|
|
}
|
|
|
|
|
|
module {
|
|
name = "cs_ban";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "BAN";
|
|
command = "chanserv/ban";
|
|
}
|
|
|
|
module {
|
|
name = "cs_clone"
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "CLONE";
|
|
command = "chanserv/clone";
|
|
group = "chanserv/management";
|
|
}
|
|
|
|
|
|
module {
|
|
name = "cs_drop";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "DROP";
|
|
command = "chanserv/drop";
|
|
}
|
|
|
|
module {
|
|
name = "cs_enforce"
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "ENFORCE";
|
|
command = "chanserv/enforce";
|
|
group = "chanserv/management";
|
|
}
|
|
|
|
module
|
|
{
|
|
name = "cs_entrymsg"
|
|
maxentries = 32
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "ENTRYMSG";
|
|
command = "chanserv/entrymsg";
|
|
group = "chanserv/management";
|
|
}
|
|
|
|
module {
|
|
name = "cs_flags";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "FLAGS";
|
|
command = "chanserv/flags";
|
|
group = "chanserv/access";
|
|
}
|
|
|
|
module {
|
|
name = "cs_getkey";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "GETKEY";
|
|
command = "chanserv/getkey";
|
|
}
|
|
|
|
module {
|
|
name = "cs_info";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "INFO";
|
|
command = "chanserv/info";
|
|
}
|
|
|
|
module {
|
|
name = "cs_invite"
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "INVITE";
|
|
command = "chanserv/invite";
|
|
}
|
|
|
|
module {
|
|
name = "cs_kick";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "KICK";
|
|
command = "chanserv/kick";
|
|
}
|
|
|
|
module
|
|
{
|
|
name = "cs_list";
|
|
listmax = 32;
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "LIST";
|
|
command = "chanserv/list";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET PRIVATE";
|
|
command = "chanserv/set/private";
|
|
}
|
|
|
|
module
|
|
{
|
|
name = "cs_mode"
|
|
mlock = "+nt"
|
|
max = 32
|
|
}
|
|
|
|
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";
|
|
}
|
|
|
|
module {
|
|
name = "cs_register";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "REGISTER";
|
|
command = "chanserv/register";
|
|
}
|
|
|
|
module
|
|
{
|
|
name = "cs_seen";
|
|
simple = false;
|
|
}
|
|
|
|
command {
|
|
service = "OperServ";
|
|
name = "SEEN";
|
|
command = "operserv/seen";
|
|
permission = "operserv/seen";
|
|
}
|
|
|
|
module
|
|
{
|
|
name = "cs_set";
|
|
defbantype = 2;
|
|
persist_lower_ts = true;
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET";
|
|
command = "chanserv/set";
|
|
group = "chanserv/management";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET AUTOOP";
|
|
command = "chanserv/set/autoop";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET BANTYPE";
|
|
command = "chanserv/set/bantype";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET DESCRIPTION";
|
|
command = "chanserv/set/description";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET DESC";
|
|
command = "chanserv/set/description";
|
|
hide = yes;
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET FOUNDER";
|
|
command = "chanserv/set/founder";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET KEEPMODES";
|
|
command = "chanserv/set/keepmodes";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET PEACE";
|
|
command = "chanserv/set/peace";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET PERSIST";
|
|
command = "chanserv/set/persist";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET RESTRICTED";
|
|
command = "chanserv/set/restricted";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET SECURE";
|
|
command = "chanserv/set/secure";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET SECUREFOUNDER";
|
|
command = "chanserv/set/securefounder";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET SECUREOPS";
|
|
command = "chanserv/set/secureops";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET SIGNKICK";
|
|
command = "chanserv/set/signkick";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET SUCCESSOR";
|
|
command = "chanserv/set/successor";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET NOEXPIRE";
|
|
command = "chanserv/saset/noexpire";
|
|
permission = "chanserv/saset/noexpire";
|
|
}
|
|
|
|
module {
|
|
name = "cs_set_misc";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET URL";
|
|
command = "chanserv/set/misc";
|
|
misc_description = _("Associate a URL with the channel");
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET EMAIL";
|
|
command = "chanserv/set/misc";
|
|
misc_description = _("Associate an E-mail address with the channel");
|
|
}
|
|
|
|
module {
|
|
name = "cs_status"
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "STATUS";
|
|
command = "chanserv/status";
|
|
}
|
|
|
|
module
|
|
{
|
|
name = "cs_suspend"
|
|
show = "suspended, by, reason, on, expires"
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SUSPEND";
|
|
command = "chanserv/suspend";
|
|
permission = "chanserv/suspend";
|
|
group = "chanserv/admin";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "UNSUSPEND";
|
|
command = "chanserv/unsuspend";
|
|
permission = "chanserv/suspend";
|
|
group = "chanserv/admin";
|
|
}
|
|
|
|
module {
|
|
name = "cs_sync"
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SYNC";
|
|
command = "chanserv/sync";
|
|
group = "chanserv/management";
|
|
}
|
|
|
|
module {
|
|
name = "cs_topic";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "TOPIC";
|
|
command = "chanserv/topic";
|
|
group = "chanserv/management";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SET KEEPTOPIC";
|
|
command = "chanserv/set/keeptopic";
|
|
}
|
|
|
|
module {
|
|
name = "cs_unban";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "UNBAN";
|
|
command = "chanserv/unban";
|
|
}
|
|
|
|
module {
|
|
name = "cs_updown";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "DOWN";
|
|
command = "chanserv/down";
|
|
group = "chanserv/status";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "UP";
|
|
command = "chanserv/up";
|
|
group = "chanserv/status";
|
|
}
|
|
|
|
module {
|
|
name = "cs_xop";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "QOP";
|
|
command = "chanserv/xop";
|
|
group = "chanserv/access";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "SOP";
|
|
command = "chanserv/xop";
|
|
group = "chanserv/access";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "AOP";
|
|
command = "chanserv/xop";
|
|
group = "chanserv/access";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "HOP";
|
|
command = "chanserv/xop";
|
|
group = "chanserv/access";
|
|
}
|
|
|
|
command {
|
|
service = "ChanServ";
|
|
name = "VOP";
|
|
command = "chanserv/xop";
|
|
group = "chanserv/access";
|
|
}
|
|
|
|
module {
|
|
name = "cs_statusupdate";
|
|
}
|