/*
 * Example configuration file for Global.
 */

/*
 * First, create the service.
 */
service
{
	/*
	 * The name of the Global client.
	 * If you change this value, you probably want to change the client directive in the configuration for the global module too.
	 */
	nick = "Global"

	/*
	 * The username of the Global client.
	 */
	user = "services"

	/*
	 * The hostname of the Global client.
	 */
	host = "${services.host}"

	/*
	 * The realname of the Global client.
	 */
	real = "Global Noticer"

	/*
	 * 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"

	/*
	 * The server alias that can be used to securely message this service. If
	 * your IRC server does not have an alias for this service you can set this
	 * to an empty string to tell users to use /msg instead.
	 *
	 * This setting is ignored when options:servicealias is disabled.
	 *
	 * Defaults to the nick of the service if not set.
	 */
	#alias = "GL"
}

/*
 * Core Global module.
 *
 * Provides essential functionality for Global.
 */
module
{
	name = "global"

	/*
	 * The name of the client that should be Global.
	 */
	client = "Global"

	/*
	 * This is the global message that will be sent when Anope is being
	 * shutdown/restarted.
	 *
	 * This directive is optional.
	 */
	#globaloncycledown = "Services are restarting, they will be back shortly - please be good while they're gone"

	/*
	 * This is the global message that will be sent when Anope (re)joins the
	 * network.
	 *
	 * This directive is optional.
	 */
	#globaloncycleup = "Services are now back online - have a nice day"

	/*
	 * If set, Anope will hide the Services Operator's nick in a global
	 * message/notice.
	 *
	 * This directive is optional.
	 */
	#anonymousglobal = yes
}

/*
 * Core Global 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 = "Global"; name = "HELP"; command = "generic/help" }

/*
 * gl_global
 *
 * Provides the command global/global.
 *
 * Used for sending a message to every online user.
 */
module { name = "gl_global" }
command { service = "Global"; name = "GLOBAL"; command = "global/global"; permission = "global/global" }

/*
 * gl_queue
 *
 * Provides the command global/queue.
 *
 * Used for queuing messages to send to every online user.
 */
module
{
	name = "gl_queue"

	/* The maximum number of messages in a message queue. Defaults to 10. */
	maxqueue = 10
}
command { service = "Global"; name = "QUEUE"; command = "global/queue"; permission = "global/queue" }

/*
 * gl_server
 *
 * Provides the command global/server.
 *
 * Used for sending a message to every online user on a server.
 */
module { name = "gl_server" }
command { service = "Global"; name = "SERVER"; command = "global/server"; permission = "global/server" }
