X-Git-Url: http://git.pk910.de/?p=ircu2.10.12-pk.git;a=blobdiff_plain;f=doc%2Fhistory%2FManual;fp=doc%2Fhistory%2FManual;h=37a31a152e17c4a8e8342f77430cfbfa31bfdc3b;hp=0000000000000000000000000000000000000000;hb=0400a5a6479398d82526785c18c0df8bc8b92dce;hpb=d17e10da972ce5776c60b4c317267c6abe0e1ead diff --git a/doc/history/Manual b/doc/history/Manual new file mode 100644 index 0000000..37a31a1 --- /dev/null +++ b/doc/history/Manual @@ -0,0 +1,316 @@ +/************************************************************************ + * IRC - Internet Relay Chat, doc/MANUAL + * Copyright (C) 1990, Karl Kleinpaste + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 1, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + + Date: 04 Apr 1989 + Author: Karl Kleinpaste + karl@cis.ohio-state.edu + + Last modification: 15 May 1992 + by Mauri Haikola + mjh@stekt.oulu.fi + + Modified for undernet: 7 Feb 1995 + by Carlo Wood + carlo@runaway.xs4all.nl + + + INTERNET RELAY CHAT (IRC) + a real-time conversational system + + +* 1: IRC - replacement for talk(1) + +IRC is a functional replacement for and improvement to talk(1). Talk +is an old, primitive, atrocious, minimalist sort of keyboard/screen +conversation tool, using a grotesque, machine-dependent protocol. +IRC does everything talk does, but with a better protocol, allowing +more than 2 users to talk at once, with access across the aggregate +Internet, and providing a whole raft of other useful features. + +Note (added Apr 7, 1998): The above statement has been left there for +historical reasons. It should be noted however that IRC is not any +longer a replacement for talk(1). At the time IRC was first developed, +people connected to internet all were using accounts on UNIX Operating +Systems, which almost all did run a non-restricted fingerd and a talkd. +This allowed to see if someone was logged in (with finger) and then +summon him to talk by connecting to his talk daemon. For IRC however it +is necessary to already be connected to an IRC server and one needs +to pay attention to the window of the IRC client in order to see if someone +wants to talk to you. Therefore IRC has become more of a 'chat box': +a Real Time Chat environment for chatting, making friends and exchanging +information. It has little resemblance anyore with talk(1). + +* 2: Entering Internet Relay Chat + +To enter Internet Relay Chat you need to run a client, which will start +connecting to its default server. More info on clients can be achieved +from ftp://ftp.undernet.org/pub/irc/docs/faq/underfaq.1. A lot of clients +for all kinds of Operating Systems and (programming) languages can be +found in ftp://ftp.undernet.org/pub/irc/clients/index.html. + +* 3: How much can be seen from here + +The universe - seriously. + +This is most formally called Internet Relay Chat. Server hosts are +connected via a tree structure. The various servers relay control and +message data among themselves to advertise the existence of other +servers, users, and the channels and other resources being occupied by +those users. + +* 4: Structure + +There is quite a lot of structure to the operation of IRC, as compared +to crufty old talk(1). Since so little could be done with talk(1), it +needed little structure. But to keep track of people spread literally +around the world, the structure is useful so that one can speak to exactly +those people with whom one wishes to speak. The structure is outlined in +more detail in the paragraphs below. + +** 4.1: Nicknames + +All users of IRC are known to the system by a `nickname.' A nickname +can be chosen at the moment the client connects, but can be changed at +any time. Nickname clashes are not allowed; this is enforced by the servers. +If one's intended nickname clashes with someone else as one enters chat, one +will not be able to complete entry to IRC until one changes one's nickname +to something else. + +** 4.2: Presence on a channel + +Fundamental to the operation of IRC is the concept of a channel. All +users are `on a channel' while inside IRC. One enters the `null +channel' first. One cannot send any messages while not in any +chatting channel unless one has set up a private conversation in some +way. The number of channels is virtually unlimited - whatever will +fit in a string of 200 characters and starts with a #, & or + sign. +A channel which is prefixed with a '#' (pound sign) is a global channel; +available to everyone on the network. A channel prefixed with a +'&' (ampersand) is a local channel; only available to users on the server +you are connected to. While a channel prefixed with a + (addition sign) +are global and modeless; those channels do accept mode changes. + +** 4.3: Main modes of #channels + +Public + +This is the default mode for a channel. When one is on a public +channel, one can be seen by all other users (if one's own user mode +permits this). Anyone can notice users on a public channel and join +such a channel's conversation. + +Private + +This means that, although anyone can see that one is using chat, no +one can tell what channel one is using unless one is already on that +channel with oneself. Since the number of potential channels is in +the billions, this is quite some security - all one gives away is the +acknowledgement that one is using chat. + +Secret + +While one is on a secret channel, no one who is not on one's channel +with oneself can even see that one is there. One's name does not show +up in a wildcard search of active users. Of course, making a channel +like '#test' secret gives a huge change to be discovered anyway. + +Changing the mode + +The mode of a channel (private, secret, invite-only, moderated, +topic-limited, person-number-limited, no-messages-to-channel, ban +someone from channel, etc.) is set by a channel operator, who is the +first person to join a channel, or someone who has had channel +operatorship bestowed on them by another channel operator. + +Local channels + +Channels which are prefixed with the ampersand (&) sign are local +channels which mean they can only be accessed to users who are on +the same server. For example, &help may exist on every server on +the network, however each of them are different channels whereas +global (#) channels are just one channel for the entire network. + +Modeless channels + +Channels that have a name that start with a plus sign (+) instead, +are modeless. This means that nobody is channel operator and hence +no mode changes can be done. The default mode of a +channel is "+nt". +The intention of modeless channels is to avoid channel wars by making +all users on that channel a-priori equal. The only possible abuse, +channel flooding, should be solved with /ignore. + +*** 4.4: Conversations not using channels + +It is possible to conduct conversations with others without using the +formalized channel structure. Doing so requires that two people set +themselves up for private conversation using special commands; see +User Commands below. + +** 5: Getting help + +Type "/help." Follow the instructions. Since this is a client feature +it might not work for you, in which case you'd have to consult your +local IRC guru or someone on the net. + +** 5.1: User commands + +In most clients, commands must start with a '/' (for example: /join #test). +The most important commands supported by IRC are: + + help quit who whois + list topic join part + links msg invite silence + names stats nick away + info clear query ignore + mode + +Also read the file ADD-TO-IRCRC for a description of Undernet specific +commands and an example script for the ircII client. + +*** 5.1.1: /quit [comment] + +/quit exits chat. Optional comment may be included; see above. + +*** 5.1.2: /who [channelname_mask | user@host.mask] + +/who returns information on who is using chat. Users of public channels +show up with one of their channels identified, if any. Users of private +channels appear, but they are specified as being on a private, unspecified +channel. Users of secret channels and users whose user mode is +i (invisible) +do not appear at all. + +Giving a channel name as an argument to /who returns only those users of the +specified channel. This still doesn't show users of secret channel or +invisible users one is actually on the same channel with them. Users +of private channels are shown, if an exact channel name is given. + +For a detailed explanation of the many options of /who, see doc/readme.who ! + +*** 5.1.3: /whois + +This returns information about individual users. Type "/whois nickname" +to get information on the login name and host from which the nicknamed +user comes. You can specify multiple nicknames to query by seperating +each with a comma. + +*** 5.1.4: /topic + +Channels can be given off-the-cuff "topics." Saying "/topic some +string of text" will associate that topic with the current channel. + +*** 5.1.5: /list [options] [channel.mask] + +/list will give lists of active channels, the number of users of each, +and the topics therewith associated. Again, secret channels do not +appear and private channels only appear as Prv. + +[options] is a comma seperated list of one or more of the following options: + + >nnn + ccc + Tttt + +This comma seperated list may not contain spaces. +Here `nnn' is the minimum or maximum number of users on a channel, +`ccc' is the minimum or maximum age or creation time of a channel, in +respectively seconds or UTC. And `ttt' is the minimum or maximum age +or creation time of the topic of the channel, in respectively seconds +or UTC. + +On most servers, if no options are given, the server will use a +default option (like "T<10") in order to strongly reduce the of number +of listed channels. + +*** 5.1.6: /join [key] + +/join is the means to enter a channel. Give the channel +name as an argument. If this is a secret or hidden channel, /who +commands will show oneself and any other users of one's channel. + +One's arrival on a channel is announced to the rest of the users +already on that channel. Silent, anonymous "lurking" is not +supported. + +If the channel is locked with a key, you need to add the [key] +parameter which acts as a password (cannot contain spaces). + +*** 5.1.7: /msg + +A single message can be sent privately to a certain user with /msg. +Type /msg nickname and the text to be sent. It will be sent privately +to the indicated nickname. + +*** 5.1.8: /invite <#channel> + +If there is a user online to whom one wishes to speak, one may invite +that user to join oneself on a certain channel. One types "/invite +nickname" with an optional channel name. The receiving user gets a +one-line message indicating the sender and the invitation. The +receiving user is free to ignore the invitation, of course. You +cannot invite users to a modeless channel. + +*** 5.1.9: /ignore + +If one wants to ignore messages sent by some other user or users, it +may be done with /ignore command. One can ignore someone by their +nickname, or by their user@host data. Wildcards may be used. /ignore +is only intended to ignore annoying public messages (messages sent to +a channel), to stop flooding (a huge number of messages per second) +you have to use banning for channel messages, and /silence for private +messages. /mode +d stops all messages from ALL channels. + +*** 5.1.12: /silence [nick!user@host.mask] + +This command effectively stops private message flooding at the server +of the flooder. You can use "/silence nick" to get a list of the +silence masks of 'nick'. This command is undernet specific and therefor +not supported by all clients unless you add specifically a line to your +clients configuration file. + +*** 5.1.11: /nick + +One can change nicknames by issuing "/nick new-nickname." All users +on one's channel will be informed about the change. NOTE: If one enters +chat with a nickname clash (e.g., one's login name is the same as +someone else's, and the other user got there first), the system will +not let one enter until one issues a /nick command with a unique +nickname. Nicknames are limited to nine characters in length on the +Undernet. + +*** 5.1.12: /mode #channel [lots of parameters] + +This command can be used for altering the various modes of a channel +(see the explanation of channel modes above). /mode command can only +be issued by channel operators. Please use /help, or the manual of +your client to find out about this command. + +If you would like a list of the current modes in the channel, type +/mode (you do not need to be a channel operator to do this). +For a list of channel bans, type /mode +b. + +* 6: Questions, problems, troubles? + +If you have problems, please get and read the FAQs from +ftp.undernet.org:/pub/irc/docs/underfaq.1 and underfaq.2. +You can also ask for help on some of the operator channels on IRC, +for example #help. They will be able to assist you in whatever +problems you are having with IRC.