Auspice Services Administration Manual
Written by Ace


--------------------------------------------------
	Table of contents:
1 Setting Up Auspice Services
1.1 Unzipping the Aus2.5.1.tgz file (file name may differ from version to version)
1.2 Compile-time Configuration 
1.3 Configuring Auspice Services To Work With Your IRCd
1.4 Starting Auspice Services
2 Setting Up Auspice Services
2.1 Registering Your Nickname To Get Access
2.2 AdminServ
2.3 OperServ
2.4 RootServ
2.5 Agent
2.6 MassServ
2.7 HostServ
2.8 Create Bots For Your Network With BotServ
3.0 Getting Help
3.1 Various Help Commands
3.2 Support
4.0 End


--------------------------------------------------
1 Setting Up Auspice Services

	You need to make sure that you always have the latest version of Services. The latest version at this time is 2.5.1 Newlife and the direct link for it is:
http://prdownloads.sourceforge.net/auspice/aus2.5.1.tgz
http://prdownloads.sourceforge.net/auspice/aus251.zip
The first link is what you want if you plan to set Services up on a Unix/Linux machine. The second link is for windows users. 

	Services work best with UnrealIRCd version 3.1 and up. Support for other IRCd's is being worked on, however.

1.1 Unzipping the aus2.5.1.tgz file

	To start the installation, we assume that the zipped package is on the root directory of your shell. Depending on what version you are using, the file name may be different. 

Please follow the steps below to unzip Auspice Services into their default directory, auspices:
cd
(Gets you to the root directory of the shell)
gunzip aus2.5.1.tgz
(If the file is there, it'll unzip successfully; else you'll get an error. In that case you should try to get the file as explained above and put it there)
tar -xf aus2.5.1.tar
(This will untar the package and make the directory, /auspices)

	You are finished with installing the files. If this was not successful, please repete the steps.

1.2 Compile-time Configuration

	To start the compile-time comfiguration and compile Auspice Services, you must first be in the auspices directory. From the root directory of your shell, type:
cd auspices
This'll put you at the prompt in the auspices directory. Please type the following to start the configuration:
./config

	You will be asked a number of questions reguarding the setup of your services.

	You must choose the IRCd that you are using from the first menu. For best results, I recommend you go with the first setting, UnrealIRCd (if you are using Unreal that is). 

	Next, you will be asked what version of UnrealIRCd you are using. In this manual, I assume you are using Unreal3.2-Selin(beta4) which can be uptained from www.unrealircd.com.

	The last remaining options are related to the services that you want to use. I usually enable X, W, and MassServ. As it says, you may want to disable the game feature.. don't even think it works yet :)

	When you're done with the configuration script and are back at the prompt with no errors, type the following to compile your services. Note: if you had an error, try to configure it again.
make install

	This will compile your services. You should return to the prompt ready to continue.

1.3 Configuring Auspice Services To Work With Your IRCd

	With the services installed, compiled, and configured, we must do the rest of the configuration to make the services link with your server. 

	Assuming you are using UnrealIRCd version 3.2, copy and insert these lines into your unrealircd.conf file and edit them to fit your network's configuration.

/* Link configuration for network services */
link ircservices.mynet.net {
	username *;
	hostname 127.0.0.1;
	bind-ip *;
	port 7029;
	password-connect "<password>";
	password-receive "<password>";
	class servers;
};
/* End of services link configuration */

	The following few lines are also important for you to add to your unrealircd.conf file and edit. These allow Services to change channel modes without being opped in the channel.

/* U:line for network services */
ulines {
	ircservices.mynet.net;
};
/* End of U:line */

	Remember to define the port 7029 in the unrealircd.conf file if you have not done it yet:

listen 127.0.0.1:7029;


	Now you must go edit sample.conf in the auspices directory of Services to configure the Services to link with your server. This is quite simple.. you just need to use the info that you used in the C/N lines above. There are comments within the file so it will not be fully explained here.. if you have any problems see the support section of this manual.

	Once you are done editing sample.conf, rename it to services.conf. This is very important.

1.4 Starting Auspice Services

	Once the configuration is completed with no errors, switch to your auspices directory, and issue the following command to boot the services:
./services

	If you get any errors, try to correct them, and if that fails, see the support section. Also before contacting us, be sure that your IRCd is running before booting services so that they are able to link!!!


--------------------------------------------------
2 Setting Up Auspice Services

	Now since you have your services up and linked to your server, you are ready to connect to your server and change the settings of your services to suit your wants and needs. Auspice Services provide a very huge amount of options, settings, and configuration to greatly enhance your network. Auspice contains around 15 services, including the popular NickServ, ChanServ, and MemoServ. Also included is a helpful tool for users called HelpServ that enables your users to get all the help they need from one service. There are a lot of services bots provided to you as an admin to adjust your server and services settings. The following administrative bots are available:
OperServ - For controling users and services. A great tool for any oper on your network.
RootServ - To control services program. Includes the option to shut down and restart.
Agent - The core service for configuring your services. Many options are available.
MassServ - A very fun little tool for making services bots join channels and forcing users and bots into a specified channel.
Global - Sends out global news messages to users.
HostServ - Give a user a fake host on connect. Useful for masking a users real hostname.
AdminServ - This is where you add opers to have privilages over certain functions on services.

2.1 Registering Your Nickname To Get Access

	In order to access any of the commands provided to Services Founders or any kind of Service Oper, you must register your nickname. 
*NOTE: In order to get access you must register with the nickname you put down as Services Master in the services.conf file! If you did not, then you are not ready to continue.

	To register your nickname, you must first connect to your server. Then, issue the following command:
/msg nickserv register <password> <Email>
For example:
/msg nickserv register mypass somewhere@somehost.com

	After doing this, you may have to reconnect and identify to your nickname to gain access.
*NOTE: You cannot get access to Services functions unless you /oper to your server's O line! More information on this should be included in your IRCd documentation.

2.2 AdminServ

	The tool to adding opers to your Services access lists is called AdminServ. It is recommended that a user on the access lists of Services should also have an O line in the server's configuration file. 

	When you add a user, you have to define his/her privilages. The privilages include:
HOP - Services Help Oper.
SOP - Services Oper.
SA - Services Administrator.
SRA - Services Root Administrator.
*SRA - Services Co-Master.. must also be written in services.conf!
The Services Master must be put in the services.conf file.

	Opers may also have extra flags which we will discuss later.

	To add an oper, use the following command syntax:
/msg adminserv oper add <registered nickname> <flags>
For example:
/msg adminserv oper add ace SRA
/msg adminserv oper add cooldude SA
/msg adminserv oper add JD HOP
/msg adminserv oper add auspice *SRA
All oper's nicknames must first be registered!

	You may view an oper's information and privilages by issuing the following command:
/msg adminserv whois <nickname>
For example:
/msg adminserv whois ace

	You can get a list of opers by doing the following command:
/msg adminserv oper list HOP|SOP|SA|SRA|*SRA
For example:
/msg adminserv oper list SRA
Will list all opers in the Services Root Administrator list.

	If you wish to change an oper's privilages, use the following command:
/msg adminserv operset <nick> HOP|SOP|SA|SRA|*SRA
For example:
/msg adminserv operset cooldude SRA
/msg adminserv operset ace HOP

	You can add aditional flags to an oper's privilages. Below is a list of aditional flags you may add:
ADDSRA - Oper can add SRA (Services Root Administrator).
ADDSA - Services Root Administrators may add SA (Services Administrators).
ABUSETM - Set this on an oper to allow the oper to suspend an op.
SUSPEND - Set by opers with the flag ABUSETM to suspend an op.
AKILL - Allow an op to use OperServ akill.
HOLD - Allow Services Administrator to set NickServ/ChanServ hold.
FORBID - Allow Services Administrators to use NickServ/ChanServ forbid.
GLOBAL - Allow an oper to use /msg operserv global for sending newsflashes to the network.
FJOIN - Allow oper to use OperServ fjoin.

 	To add one of the above flags to an oper's privilages, use the following command:
/msg adminserv flags add <nickname> <flag>
For example:
/msg adminserv flags add liam GLOBAL
This will allow the oper named liam to send global messages to the network.
	To remove this flag from liam's privilages, use the following command:
/msg adminserv flags del liam GLOBAL

2.3 OperServ

	OperServ gives users commands over the network and it's users. All commands invoked from within OperServ have help text in the Services help files. You can use 
/msg operserv help
or 
/msg operserv help <option>

	The following short list of commands can be used depending on your flags and privilages:
/msg operserv clear <channel> modes|users
Use this to clear a channel's users or modes.
For Example:
/msg operserv clear #auspice users

/msg operserv kick <channel> <user> <reason>
Kicks a user from the specified channel giving the specified reason.
For example:
/msg operserv kick #auspice auspice Don't need no reason.

/msg operserv update
Updates the Services databases.

/msg operserv global <message>
Sends a newsflash/global message to the network.
For example:
/msg operserv global Attention, server going down in 5 minutes for maintanence!

	For lots more commands, type:
/msg operserv help
within your IRC session.

2.4 RootServ


	RootServ is just another service for controling services. You would use RootServ to restart and shut down services. You can manage log files with RootServ as well.

	Small list of commands:
/msg rootserv mkick <channel>
Will mass-kick a channel.
For example:
/msg rootserv mkick #ausserv

/msg rootserv shutdown
Will shut down Services (saves databases).

/msg rootserv quit
Will shut down services (does not save databases).

/msg rootserv restart
Restarts Services and saves databases.

	For more commands do:
/msg rootserv help
within your IRC session.

2.5 Agent

	Agent is a very large and option-full services. It lets you take full control over services settings, such as welcome messages, making opers autojoin channels, etc. Agent has so many commands that it'd be impossible to list them all here. However, a few common ones are listed:
/msg agent kick <channel> <user> <reason>
A bit more useful then OperServ's kick command because this one masks the oper's nick from the reason.
For example:
/msg agent kick #auspice xx12 Good bye

/msg agent exit <nickname> <reason>
This command kills a user from the network, putting the reason in their quit message making it look like the user has just type /quit rather then an oper killing them. This is why it can be fun to use rather then /kill :)
For example:
/msg agent exit mo I'm an idiot I know it. :)

/msg agent backupdata
Same as /msg operserv update.

/msg agent update
Saves network configuration file and messages configuration file. Should be used after you make any modifications to settings with Agent.

2.6 MassServ

	MassServ is a services used to move users and services bots around the network. It may be useful, but is also a very fun service to play with users.

	A list of commands follows:
/msg massserv servjoin <channel>
Makes all 15 services bots join a channel (this number may increase depending on how many bots you create with BotServ).
For example:
/msg massserv servjoin #servbots

/msg massserv alljoin <channel>
Makes all users on the network join the specified channel.
For example:
/msg massserv alljoin #comehere

	Please note that MassServ is still under construction! For more commands type:
/msg massserv help
within your IRC session.

2.7 HostServ

	HostServ allows you to set a fake host for opers and users who have a registered nickname. This should make it harder for people to get information with your hostname.

To set a fake hostname for a user, use:
/msg hostserv add <nickname> <host>
For example:
/msg hostserv add ace netadmin.mynet.net

To remove a user from the autohost list, use:
/msg hostserv del <nickname>
For example:
/msg hostserv del ace

2.8 Create Bots For Your Network With BotServ

	You can use BotServ to create feature-rich bots for your users to keep in their channels. These bots can be configured to kick colors, swearing, bolds, repeats, etc. 

	To create a bot for a user, use:
/msg botserv bot add <botnick> <botident> <bothost> <botname>
<botnick> - Bot's nickname.
<botident> - Bot's Whatever@*.
<bothost> - Bot's whatever.net. Will come as botident@bothost.whatever.
<botname> - Bot's realname. 
For example:
/msg botserv bot add AusBot ausesbot bots.auspice.org Inmean's Bot

	When the bot is created, it will be connected, and will almost be ready for users to use. However, when you create a bot, it is set by default to only let the bot master (it's creater) to control it. Use this simple command to turn this off so that users can assign your bot to their channels:
/msg botserv bot set <botnick> master off
For example:
/msg botserv bot set AusBot master off

	To assign this bot to a channel, the user must issue the following command:
/msg botserv assign <registered channel> <botnick>
For example:
/msg botserv assign #Cambodia AusBot

	Sometimes users will want the bot to permanently sit on the channel. A normal user cannot use this command; they will come asking you. Use this:
/msg botserv set <channel> botstay on
For example:
/msg botserv set #Cambodia botstay on

	To configure the bot to kick certain things, use:
/msg botserv help set
for more info.

	You can tell the bot to kick the following things:
bolds
colors
repeats
badwords

	To invoke these:
/msg botserv set <channel> <option> on
For example:
/msg botserv set #Cambodia bolds on


--------------------------------------------------
3.0 Getting Help

	The following sections will explain to you how you can get further support on Auspice IRCd Services.

3.1 Various Help Commands

	For all of these services, and any other service, you can type:
/msg <service> help
For example:
/msg agent help
A lot of these services have some extra help. Use:
/msg <service> help set
For example:
/msg agent help set
For normal services that users use like NickServ, ChanServ and MemoServ, you can use:
/msg <service> ohelp
For Example:
/msg memoserv ohelp
The ohelp command will give you help for what you as an admin or oper can do with the specified service.

3.2 Support

	If you still need help, point your IRC client to irc.auspice.org and /join #ausserv. Please note that we do not help you link Services with the IRCd!! This is covered in the IRCd docs somewhere. If you are using UnrealIRCd, try example.conf and unrealircd.doc. Also try unrealircd.conf.txt.

	Send bugs or suggestions to auspice@auspice.org

4.0 End

	Well, I hope you enjoy using Auspice IRCd Services, a very nice, feature-rich, services package. 

	I'd like to thank Auspice for providing us with Auspice Services.

	If you'd like to contact me, use robertls@shellyeah.org.

Thanks,
Ace.
