244 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			Django/Jinja
		
	
	
	
	
	
			
		
		
	
	
			244 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			Django/Jinja
		
	
	
	
	
	
/*
 | 
						|
 * Example configuration file for MemoServ.
 | 
						|
 */
 | 
						|
 | 
						|
/*
 | 
						|
 * First, create the service.
 | 
						|
 */
 | 
						|
service
 | 
						|
{
 | 
						|
	/*
 | 
						|
	 * The name of the MemoServ client.
 | 
						|
	 * If you change this value, you probably want to change the client directive in the configuration for the memoserv module too.
 | 
						|
	 */
 | 
						|
	nick = "MemoServ"
 | 
						|
 | 
						|
	/*
 | 
						|
	 * The username of the MemoServ client.
 | 
						|
	 */
 | 
						|
	user = "services"
 | 
						|
 | 
						|
	/*
 | 
						|
	 * The hostname of the MemoServ client.
 | 
						|
	 */
 | 
						|
	host = "ircservices.{{ external_domain }}"
 | 
						|
 | 
						|
	/*
 | 
						|
	 * The realname of the MemoServ client.
 | 
						|
	 */
 | 
						|
	gecos = "Memo Service"
 | 
						|
 | 
						|
	/*
 | 
						|
	 * The modes this client should use.
 | 
						|
	 * Do not modify this unless you know what you are doing.
 | 
						|
	 *
 | 
						|
	 * These modes are very IRCd specific. If left commented, sane defaults
 | 
						|
	 * are used based on what protocol module you have loaded.
 | 
						|
	 *
 | 
						|
	 * Note that setting this option incorrectly could potentially BREAK some, if
 | 
						|
	 * not all, usefulness of the client. We will not support you if this client is
 | 
						|
	 * unable to do certain things if this option is enabled.
 | 
						|
	 */
 | 
						|
	#modes = "+o"
 | 
						|
 | 
						|
	/*
 | 
						|
	 * An optional comma separated list of channels this service should join. Outside
 | 
						|
	 * of log channels this is not very useful, as the service will just idle in the
 | 
						|
	 * specified channels, and will not accept any types of commands.
 | 
						|
	 *
 | 
						|
	 * Prefixes may be given to the channels in the form of mode characters or prefix symbols.
 | 
						|
	 */
 | 
						|
	#channels = "@#services,#mychan"
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
 * Core MemoServ module.
 | 
						|
 *
 | 
						|
 * Provides essential functionality for MemoServ.
 | 
						|
 */
 | 
						|
module
 | 
						|
{
 | 
						|
	name = "memoserv"
 | 
						|
	/*
 | 
						|
	 * The name of the client that should be MemoServ. Clients are configured
 | 
						|
	 * with the service blocks.
 | 
						|
	 */
 | 
						|
	client = "MemoServ"
 | 
						|
 | 
						|
	/*
 | 
						|
	 * The maximum number of memos a user is allowed to keep by default. Normal users may set the
 | 
						|
	 * limit anywhere between 0 and this value. Services Admins can change it to any value or
 | 
						|
	 * disable it.
 | 
						|
	 *
 | 
						|
	 * This directive is optional, but recommended. If not set, the limit is disabled
 | 
						|
	 * by default, and normal users can set any limit they want.
 | 
						|
	 */
 | 
						|
	maxmemos = 20
 | 
						|
 | 
						|
	/*
 | 
						|
	 * The delay between consecutive uses of the MemoServ SEND command. This can help prevent spam
 | 
						|
	 * as well as denial-of-service attacks from sending large numbers of memos and filling up disk
 | 
						|
	 * space (and memory). The default 3-second wait means a maximum average of 150 bytes of memo
 | 
						|
	 * per second per user under the current IRC protocol.
 | 
						|
	 *
 | 
						|
	 * This directive is optional, but recommended.
 | 
						|
	 */
 | 
						|
	senddelay = 3s
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
 * Core MemoServ 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.
 | 
						|
 */
 | 
						|
 | 
						|
/* Give it a help command. */
 | 
						|
command { service = "MemoServ"; name = "HELP"; command = "generic/help"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_cancel
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/cancel.
 | 
						|
 *
 | 
						|
 * Used to cancel memos already sent but not yet read.
 | 
						|
 */
 | 
						|
module { name = "ms_cancel" }
 | 
						|
command { service = "MemoServ"; name = "CANCEL"; command = "memoserv/cancel"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_check
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/check.
 | 
						|
 *
 | 
						|
 * Used to check if a sent memo has been read.
 | 
						|
 */
 | 
						|
module { name = "ms_check" }
 | 
						|
command { service = "MemoServ"; name = "CHECK"; command = "memoserv/check"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_del
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/del.
 | 
						|
 *
 | 
						|
 * Used to delete your memos.
 | 
						|
 */
 | 
						|
module { name = "ms_del" }
 | 
						|
command { service = "MemoServ"; name = "DEL"; command = "memoserv/del"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_ignore
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/ignore.
 | 
						|
 *
 | 
						|
 * Used to ignore memos from specific users.
 | 
						|
 */
 | 
						|
module
 | 
						|
{
 | 
						|
	name = "ms_ignore"
 | 
						|
 | 
						|
	/*
 | 
						|
	 * The maximum number of entries that may be on a memo ignore list.
 | 
						|
	 *
 | 
						|
	 * This directive is optional.
 | 
						|
	 */
 | 
						|
	max = 32
 | 
						|
}
 | 
						|
command { service = "MemoServ"; name = "IGNORE"; command = "memoserv/ignore"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_info
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/info.
 | 
						|
 *
 | 
						|
 * Used to show memo related information about an account or a channel.
 | 
						|
 */
 | 
						|
module { name = "ms_info" }
 | 
						|
command { service = "MemoServ"; name = "INFO"; command = "memoserv/info"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_list
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/list.
 | 
						|
 *
 | 
						|
 * Used to list your current memos.
 | 
						|
 */
 | 
						|
module { name = "ms_list" }
 | 
						|
command { service = "MemoServ"; name = "LIST"; command = "memoserv/list"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_read
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/read.
 | 
						|
 *
 | 
						|
 * Used to read your memos.
 | 
						|
 */
 | 
						|
module { name = "ms_read" }
 | 
						|
command { service = "MemoServ"; name = "READ"; command = "memoserv/read"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_rsend
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/rsend.
 | 
						|
 *
 | 
						|
 * Used to send a memo requiring a receipt be sent back once it is read.
 | 
						|
 *
 | 
						|
 * Requires configuring memoserv:memoreceipt.
 | 
						|
 */
 | 
						|
#module
 | 
						|
{
 | 
						|
	name = "ms_rsend"
 | 
						|
 | 
						|
	/*
 | 
						|
	 * Only allow Services Operators to use ms_rsend.
 | 
						|
	 *
 | 
						|
	 * This directive is optional.
 | 
						|
	 */
 | 
						|
	operonly = false
 | 
						|
}
 | 
						|
#command { service = "MemoServ"; name = "RSEND"; command = "memoserv/rsend"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_send
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/send.
 | 
						|
 *
 | 
						|
 * Used to send memos.
 | 
						|
 */
 | 
						|
module { name = "ms_send" }
 | 
						|
command { service = "MemoServ"; name = "SEND"; command = "memoserv/send"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_sendall
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/sendall.
 | 
						|
 *
 | 
						|
 * Used to send a mass memo to every registered user.
 | 
						|
 */
 | 
						|
module { name = "ms_sendall" }
 | 
						|
command { service = "MemoServ"; name = "SENDALL"; command = "memoserv/sendall"; permission = "memoserv/sendall"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_set
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/set.
 | 
						|
 *
 | 
						|
 * Used to set settings such as how you are notified of new memos, and your memo limit.
 | 
						|
 */
 | 
						|
module { name = "ms_set" }
 | 
						|
command { service = "MemoServ"; name = "SET"; command = "memoserv/set"; }
 | 
						|
 | 
						|
/*
 | 
						|
 * ms_staff
 | 
						|
 *
 | 
						|
 * Provides the command memoserv/staff.
 | 
						|
 *
 | 
						|
 * Used to send a memo to all registered staff members.
 | 
						|
 */
 | 
						|
module { name = "ms_staff" }
 | 
						|
command { service = "MemoServ"; name = "STAFF"; command = "memoserv/staff"; permission = "memoserv/staff"; }
 |