ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/vendor/ircservices-5.1.24/docs/1.html
Revision: 3389
Committed: Fri Apr 25 14:12:15 2014 UTC (11 years, 4 months ago) by michael
Content type: text/html
File size: 17175 byte(s)
Log Message:
- Imported ircservices-5.1.24

File Contents

# User Rev Content
1 michael 3389 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2     <html>
3     <head>
4     <meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
5     <title>IRC Services Manual - 1. About IRC Services</title>
6     </head>
7    
8     <body>
9     <a name=top></a>
10     <h1 align=center>IRC Services Manual</h1>
11    
12     <h2 align=center>1. About IRC Services</h2>
13    
14     <p>1-1. <a href="#1">Introduction</a>
15     <br>1-2. <a href="#2">Overview of IRC Services clients</a>
16     <br>1-3. <a href="#3">IRC Services download site</a>
17     <br>1-4. <a href="#4">IRC Services discussion forums</a>
18     <br>1-5. <a href="#5">Credits and acknowledgements</a>
19     <br>1-6. <a href="#6">Contacting the author</a>
20    
21     <p align=right><font size=-1><a href=index.html>Table of Contents</a> |
22     <a href=2.html>Next section: About IRC Services</a></font>
23    
24     <p><hr>
25    
26     <a name=1></a>
27     <h3>1-1. Introduction</h3>
28    
29     <p>IRC Services (also called just "Services" for short) is a system of
30     services to be used with Internet Relay Chat networks. Services provides
31     for definitive nickname and channel ownership, as well as the ability to
32     send messages ("memos") to offline users, and gives IRC operators
33     considerably more control over the network.
34    
35     <p>In particular, Services provides the following features to an IRC
36     network:
37    
38     <p><ul>
39     <li><b>Nickname management.</b> Services allows users to "register"
40     nicknames, and will prevent users other than the registrant from using
41     them. Services also maintains information about each registered nickname,
42     including the last time the nick's owner was online as well as a URL and
43     E-mail address that can be set by the user.
44    
45     <li><b>Channel management.</b> Like nicknames, Services allows users to
46     register channels as well. A channel's owner can give privileges to other
47     users of the channel, such as auto-opping or the ability to set various
48     channel options, or conversely deny other users the ability to obtain
49     channel operator privileges or even enter the channel altogether. Services
50     will remember the topic on the channel even after the last user leaves, and
51     can automatically set modes on the channel whenever a user joins it.
52    
53     <li><b>Messages to offline users.</b> Probably every IRC user has gone
54     through the experience of waiting and waiting for someone to come online in
55     order to pass a message along or ask a question. Services alleviates this
56     with a "memo" system, allowing users to leave messages for other users even
57     if the recipient is not online at the time; the recipient will be notified
58     of the memo the next time they log on.
59    
60     <li><b>Centralized network control.</b> Services includes features which
61     allow IRC operators greater control over the IRC network through a single
62     point, and also defines multiple privilege levels for IRC operators with
63     respect to Services itself. For example, IRC operators with sufficient
64     privileges can use Services to set modes on any channel; it is also
65     possible to ban users or groups of users from connecting to the network
66     entirely, and such bans ("autokills" in Services terminology) will remain
67     active even if a server, or Services itself, splits from the network.
68     </ul>
69    
70     <p>Furthermore, each of these sets of features can be configured or
71     disabled to match individual networks' policies.
72    
73     <p align=right><font size="-1"><a href="#top">Back to top</a></font>
74    
75     <p><hr>
76    
77     <a name=2></a>
78     <h3>1-2. Overview of Services clients</h3>
79    
80     <p>Each of the major feature groups mentioned in <a href="#1">section
81     1-1</a> above is controlled through a Services <i>client</i>, a nickname
82     associated with that particular set of features. (These are often called
83     "pseudoclients", since they are not true clients, like IRC programs used by
84     humans, but conveniences to simplify access to Services' features.) These
85     clients, as well as others which handle smaller areas of network control,
86     are briefly described below; a more detailed discussion of each feature is
87     presented in <a href=3.html>section 3</a>, while complete information on
88     each of the commands used to control each client can be found in
89     <a href=4.html>section 4</a>.
90    
91     <p><b>NickServ</b> handles registration and maintenance of nicknames. Its
92     primary functions include:
93     <p>
94     <ul><li>registration and de-registration (dropping) of nicknames;
95     <li>verification of nickname users, including password authentication,
96     and removal (either automatically or upon request) of unauthorized
97     users;
98     <li>creation and deletion of nickname aliases (links), which allow a
99     single user to own and switch between multiple nicknames which
100     share settings;
101     <li>control of nickname options, including security level (whether to
102     require a password or simply check the user's username and
103     hostname), associated URL and E-mail address, and what information
104     to show or not show to other users;
105     <li>recording of nickname usage information, including the nickname's
106     last used time and the username and hostname of the nickname's last
107     user; and
108     <li>expiration of nicknames that have not been used in a certain period
109     of time.</ul>
110    
111     <p>Services has the ability to send messages to users in multiple
112     languages; a user who has registered their nickname can select from any of
113     the supported languages (English, Dutch, French, German, Hungarian,
114     Japanese, Russian, Spanish, and Turkish). A default language can also be
115     configured for users who have not registered their nicknames or have not
116     selected a specific language.
117    
118     <p>Furthermore, NickServ has the ability to verify E-mail addresses
119     associated with nicknames, by sending an "authentication code" to the
120     E-mail address and not allowing the owner any privileges associated with
121     the nickname until the owner sends that authentication code back to
122     NickServ. This feature can help maintain accountability of users for their
123     actions on IRC by requiring a valid E-mail address at which the user of a
124     nickname can be contacted if problems arise.
125    
126     <p><b>ChanServ</b> is to channels what NickServ is to nicknames; it handles
127     registration and maintenance of channels on the IRC network. Its functions
128     in large part mirror those of NickServ, and include:
129     <p>
130     <ul><li>registration and dropping of channels (a user who registers a
131     channel is known as the channel's <i>founder</i>);
132     <li>verification of channel users, through either direct password
133     authentication or NickServ verification;
134     <li>control of channel access and autokick lists (see below);
135     <li>monitoring and adjustment of channel modes, including automatically
136     giving channel-operator or voice privileges or "inviting"
137     authorized users into invite-only channels;
138     <li>control of channel options, such as preventing users from changing
139     the topic or controlling the strictness with which channel modes
140     and privileges are enforced, and setting a URL or E-mail address
141     for the channel;
142     <li>recording of channel usage information, including the last time a
143     verified user was in the channel; and
144     <li>expiration of channels that have not been used in a certain period
145     of time.
146     </ul>
147    
148     <p>One major difference between nicknames and channels is the <i>access
149     list</i>. While nicknames may have an "access list" that lists addresses
150     which NickServ will recognize as "allowed to use the nickname"&mdash;a
151     feature that has little value if passwords are used as the primary means of
152     verification&mdash;channel access lists play a much greater role, in that
153     they control which users (nicknames) have what degree of access to
154     (privileges in) the channel. The founder of a channel will always have
155     full access to the channel, but the founder can, via the access list,
156     designate other users who will receive a certain subset of channel
157     privileges. For example, the founder might give privileges to some users
158     to automatically receive channel operator (<tt>+o</tt>) status when they
159     enter the channel; those users might then, in turn, designate other users
160     to automatically receive voice (<tt>+v</tt>) status if the channel is
161     moderated. Certain levels of access also allow users to use privileged
162     ChanServ features, such as management of the "autokick list", explained
163     below, or commands which remove channel bans on a user or invite the user
164     into a channel.
165    
166     <p>Conversely, the <i>autokick list</i> (often referred to as the "AKICK
167     list", from the name of the command&mdash;<tt>AKICK</tt>&mdash;which
168     controls it) specifies users which are not to be allowed access to the
169     channel at all. If a user joins a channel whose autokick list they are
170     listed on, ChanServ will kick them out of the channel and set a channel ban
171     which prevents them from entering again. Since a malicious user could
172     easily enter using an unregistered nickname, channel founders (or other
173     privileged users) can enter username/hostname masks as well as nicknames in
174     the autokick list.
175    
176     <p>As channels are complex beasts, ChanServ features many options which
177     control how the channel is managed; for example, ChanServ can be set to
178     disallow any changes to the channel topic (if a user changes the topic,
179     ChanServ will cancel the change by restoring the previous topic), or to
180     prevent any users not explicitly entered in the access list from using the
181     channel. ChanServ can also enforce a certain set of modes on a channel;
182     for example, a channel which wants to stay hidden from casual users could
183     use ChanServ to ensure that the <tt>+s</tt> (secret) mode is always set on
184     the channel.
185    
186     <p>If the founder of a channel loses his nickname, whether by explicitly
187     dropping it or by letting it expire, the channel will be dropped as well.
188     If this should happen by accident, it can be difficult to restore all of
189     the channel settings. To help avoid this problem, ChanServ allows channel
190     founders to designate a <i>successor</i> for the channel. If the founder's
191     nickname should ever be dropped or expire, then ChanServ will give the
192     channel to the successor&mdash;making them the new founder of the
193     channel&mdash;rather than dropping the channel.
194    
195     <p><b>MemoServ</b> handles storage and notification of <i>memos</i>, short
196     messages between IRC users. Memos can be thought of as an intermediate
197     stage between realtime chat and E-mail; they are sent and read in the same
198     way as ordinary chatting, but can be sent even if the recipient is not
199     online at the time, and the recipient can read the memos at his or her
200     leisure. Memos are particularly useful for short messages for which it
201     would not be worth the time to start up an E-mail client and type out a
202     complete message, or for cases where the nickname of the recipient is known
203     but the recipient's E-mail address is not (or the recipient does not have
204     an E-mail address at all).
205    
206     <p>MemoServ's four main functions are <i>sending</i> memos, <i>listing</i>
207     memos which have been received, <i>reading</i> memos, and <i>deleting</i>
208     memos after they have been read. Users can also set memo options, which
209     include whether to notify them of new memos when they log on and whether
210     they should be able to receive memos at all, and can have memos
211     automatically forwarded to an authenticated E-mail address.
212    
213     <p>In addition to memos between users, memos can also be sent to channels;
214     such memos will be sent to all users with sufficient privileges on the
215     channel. This type of memo can be used, for example, to inform channel
216     operators about a problem user, or as a way for users to ask questions
217     about the channel.
218    
219     <p><b>OperServ</b> provides access to the "network control" functionality
220     of Services. Available only to IRC operators, OperServ allows:
221     <p>
222     <ul><li>broadcasts of messages to the entire network (global notices), as
223     well as recording of news messages to be sent to users when they
224     connect to the network;
225     <li>control of modes in any channel, as well as the ability to kick any
226     user from any channel;
227     <li>banning certain users from the entire network (autokill list and
228     S-lines, described below);
229     <li>limiting the number of users which can connect from a single IP
230     address, useful for preventing "cloning" (sessions), as well as
231     making exceptions to those limits;
232     <li>disconnecting all users from a given IP address;
233     <li>preventing certain servers from connecting to the network
234     ("juping");
235     <li>setting global Services options; and
236     <li>restarting or shutting down Services itself.
237     </ul>
238    
239     <p>Many of these functions can, if misused, have disastrous effects for the
240     entire network; thus, OperServ implements a privilege system to limit which
241     IRC operators can use which functions. Four different privilege levels are
242     defined: normal IRC operator, Services operator, Services administrator,
243     and Services super-user (also known as "Services root", from the Unix
244     tradition of using the username "root" for the system super-user). Normal
245     IRC operators can use very few of the functions above, while the Services
246     super-user has absolute control over Services and the IRC network.
247    
248     <p>Of particular note are the <i>autokill list</i> and <i>S-line</i>
249     features, which are to the network as autokick lists are to channels; users
250     in these lists will be prohibited from connecting to any server on the
251     network, and will be disconnected immediately if they do connect. The
252     difference between the two is what they prohibit; the autokill list
253     prohibits certain combinations of username and hostname, much like autokick
254     lists do, while S-lines, named after the commands used by a certain IRC
255     server to implement them, prohibit nicknames, "real names", or IP addresses
256     (IP address checking is only available with a few IRC servers).
257    
258     <p>OperServ also includes a separate client, by default called
259     <b>Global</b>, which is used to send global (network-wide) notices and news
260     messages to users. Many networks rename this client to the same name as
261     their network; the name of the client (as well as all other Services
262     clients) can be changed by editing the configuration file, as described in
263     <a href="2.html#4">section 2-4</a>.
264    
265     <p><b>StatServ</b> is an additional client which monitors and keeps basic
266     statistical information regarding network usage. It can be useful to
267     check, for example, which servers are getting the most use, or whether
268     certain servers have a tendency to split from the network frequently.
269    
270     <p><b>In addition</b> to the clients above, Services also has a built-in
271     HTTP (web) server, which allows access to Services information (such as
272     registered nickname and channel information and network statistics) without
273     having to connect to the IRC network. See <a href="3.html#6">section
274     3-6</a> for more information about the HTTP server.
275    
276     <p align=right><font size="-1"><a href="#top">Back to top</a></font>
277    
278     <p><hr>
279    
280     <a name=3></a>
281     <h3>1-3. IRC Services download site</h3>
282    
283     <p>Development and maintenance of IRC Services has been discontinued.
284     As of the writing of this manual, historical information can be found at
285     <a href="http://achurch.org/services/"><tt>http://achurch.org/services/</tt></a>.
286    
287     <p align=right><font size="-1"><a href="#top">Back to top</a></font>
288    
289     <p><hr>
290    
291     <a name=4></a>
292     <h3>1-4. IRC Services discussion forums</h3>
293    
294     <p>Two mailing lists were previously provided for discussion of Services:
295     <i>ircservices</i>, for general discussion, and <i>ircservices-coding</i>,
296     for technical issues. These mailing lists were disabled on January 1, 2010,
297     but archives of the lists are available at the historical information site
298     listed in <a href="#3">section 1-3</a> above.
299    
300     <p align=right><font size="-1"><a href="#top">Back to top</a></font>
301    
302     <p><hr>
303    
304     <a name=5></a>
305     <h3>1-5. Credits and acknowledgements</h3>
306    
307     <p>Services is primarily the work of <a href="http://achurch.org/"><b>Andrew
308     Church</b></a>, and was developed from early 1996 through 2009; a somewhat
309     more detailed history can be found in <a href="tech/1.html#s3">section 1-3
310     of the technical manual</a>. However, many people have contributed ideas,
311     bug reports, or other help to the project as well. Some of the more
312     noteworthy contributors include:
313     <ul>
314     <li><b>Andrew Kempe</b> (session limiting and news systems, as well as
315     maintenance and development of Services for versions 4.3 and 4.4)
316     <li><b>Yusuf Iskenderoglu</b> (Turkish translation and many feature suggestions)
317     <li><b>Martin Pels</b> (Dutch translation)
318     <li><b>Elijah</b> (French translation)
319     <li><b>Jacek Margos</b> and <b>Holger Baust</b> (German translation)
320     <li><b>Janos Kapitany</b> and <b>Krisztian Romek</b> (Hungarian translation)
321     <li><b>Alexander Zverev</b> (Russian translation)
322     <li><b>&lt;RealCFC@chatfirst.com&gt;</b> (Spanish translation)
323     </ul>
324     Credit is given to all contributions in the
325     <tt><a href="Changes">Changes</a></tt> and
326     <tt><a href="Changes.old">Changes.old</a></tt> files in this directory,
327     which detail all changes made in each version of Services.
328    
329     <p align=right><font size="-1"><a href="#top">Back to top</a></font>
330    
331     <p><hr>
332    
333     <a name=6></a>
334     <h3>1-6. Contacting the author</h3>
335    
336     <p>The author may be contacted via E-mail at
337     <tt><a href="mailto:achurch@achurch.org">achurch@achurch.org</a></tt>
338     as of the writing of this manual.
339    
340     <p align=right><font size="-1"><a href="#top">Back to top</a></font>
341    
342     <p><hr>
343    
344     <p align=right><font size=-1><a href=index.html>Table of Contents</a> |
345     <a href=2.html>Next section: About IRC Services</a></font>
346    
347     </body>
348     </html>