From ProgSoc Wiki
In need of a mind enema? Are you trying to fail a few exams in order to stay popular with your more dim-witted friends? Or just brushing up on your French expletives and ASCII Japanese?
IRC is an international means by which people all over the world can abuse each other in a multitude of languages. It is a world-wide multi-user chat system, and it's at your door. This guide is to give you a very brief and simplistic overview of the IRC beast.
A Few Details
Just as it would be rather embarrassing to have a toilet block without separate cubicles, IRC provides separate "channels" in which people can group to talk.
Similarly, just as UTS has many toilet blocks available, IRC has many different "servers" (many of which are linked together into single "networks"). For this chapter we'll be using Freenode, a popular network for Free Software Developers, and the home of ProgSoc's own channel.
Channels are identified by names, and always have a "#" as the first character. Channels are generally public access, but can be tampered with to make them private, or invitation only.
Play along at home
Whilst the wild open fields of IRC had been fair gamefor all in times of previous TFM productions. In 2006, the UTS ITD overlords deemed its use to be more malicious than legitimate, and since blocked connections to common IRC ports (6667) from within the university. So, to use IRC properly, you'll need to play along from home rather than at uni.
Choosing your client
This tutorial has been updated to primarily deal with one of the most popular console-mode IRC clients, irssi. There are many other console-mode clients, such as the cleverly-named ircII, bitchx and epic. These all function in a similar way, with varying amounts of fancy features. If you're running X you might want to look at a graphical client for X, such as xchat (as you can see, programming skill and creativity in application titles don't always mix). For Windows, there are several popular clients, but the grand high supreme king of them all, if popularity is anything to go by, is a program called "mIRC", available from http://www.mirc.com.
Fortunately, all of these clients support the commands outlined below, so regardless of which one you pick, this chapter will be relevant to you.
The ProgSoc client of choice: irssi
Presuming you're running some kind of unix operating system, and you've managed to install it by said operating system's package system of choice, then you should be able to start IRC using the irssi command.
You'll be dumped into a prompt connected to no server in particular. A quick way to get started would be to type /server chat.freenode.net.
If it's working, you should get something like the following:
22:03 -!- Irssi: Looking up chat.freenode.net 22:03 -!- Irssi: Connecting to chat.freenode.net [22.214.171.124] port 6667 22:03 -!- Irssi: Connection to chat.freenode.net established 22:03 !card.freenode.net *** Looking up your hostname... 22:03 !card.freenode.net *** Checking Ident 22:03 !card.freenode.net *** Found your hostname 22:04 !card.freenode.net *** No Ident response 22:04 -!- Welcome to the freenode Internet Relay Chat Network ctd_ 22:04 -!- Your host is card.freenode.net[126.96.36.199/6667], running version ircd-seven-1.0.1 22:04 -!- This server was created Sat Jan 30 2011 at 21:08:53 UTC 22:04 -!- card.freenode.net ircd-seven-1.0.1 DOQRSZaghilopswz
... and probably more text than you could care to decipher.
All IRC commands start with "/".
Before you set off on your merry rampage, you may want to choose a nickname by which you will be identified by other users - otheriwse it will fall back the the default of your login name.
On the main display (the bigger chunk of screen, not the tiny bit down the bottom where you type) you will see a message like:
*** jtripper is now known as Jack
At this point in time, you are still not connected to any channel. You are in limbo. No-one can hear you scream. Whatever you type (aside from commands) will be thrown away, and you won't see any conversational public messages. However, you can still send and receive messages from people with the /msg command (discussed later).
Joining A Channel
In order to join a channel, it might help to know what channels are already there. Type /list, and you'll get something vaguely resembling this (but quite a bit longer):
*** #Nippon 1 *** #aussies 43 Is anyone awake in here?? *** #uts_crims 3 *** Prv 2 *** Prv 3 *** Prv 1
This is a list of channel names, followed by the number of people on each channel, and then the topic (if any). "Prv" means that it is a private channel and you can't join unless invited, or you happen to know the name of it.
Channels with one person are generally people who have fallen asleep, are waiting for someone to turn up, or simply enjoy using an international chat system in order to not talk to anyone.
Some users are not users at all. There are channels that employ the use of "bots", programs that sit around and "op" particular users as they join, kick off others, etc. They don't tend to be very interesting things to talk to. (More about "ops" later.)
Topics, set by /topic, are usually set to annoy people on the channel, and may retain their relevance for anything up to ten seconds.
To actually join a channel, type: /join #channel
What will follow will be something like:
*** Jack has joined channel #aussies *** Topic: Is anyone awake in here?? *** Users on #aussies: Moron, @mork, @Insomniak, enema
A @ before a nick means that the user is a channel operator. Graphical IRC clients might identify chanops with coloured dots or similar imagery instead.
If at any time you wish to see who is on the channel, /join (without a name after it) will usually suffice.
Now that you are in, everything you type without a / in front of it will be sent to everyone on this channel. What you type will appear with your name at the front.
<Jack> Hi! I'm female!!
(This message often gets people's attention.)
Public messages from other people will look something like:
<Moron> What, with a name like Jack??
A useful tool for the average multi-chatting backstabbing user is the private message command, /msg.
/msg moron Actually, I'm not.
You'll see, by default, a new window pop open where the conversation is only between yourself (Jack) and moron. Moron may see the same, but in any case will see a message on his screen marked in some way as being a private message.
A common mistake is to send a private message without the /msg. This looks incredibly silly when it comes up as a public message, but a couple of remedies are available. One is to yell "oh no!" (expletives are more popular) and thus let everyone know that you've made the mistake, drawing full attention to the rogue message. Another is not to react at all, but to resend the message privately. Yet another is to talk your way around it.
Yes, windows! irssi uses a concept of windows to allow you to switch between different channels and queries you may be participating in whilst keeping a seperate backlog for each. Conceptually, they're a little more like tabs since you switch between them in the same geometric space, but in irssi they're called windows.
Windows are sequentially numbered from 1 upwards. By default, you should be able to switch between them using the Alt key + left/right or Alt+the window number (presuming you have < 9 windows). So, Alt+Left to cycle through windows decreasing by number, and Alt+Right to do increasingly.
You can use /window list to see what windows you have open, and /window <number> to switch to a particular window number.
While you are querying someone, you can still reach other people using /msg (ie, if you're querying ennuyant and you enter /msg thrillu this ennuyant guy sure is boring then your insults will be seen only by thrillu).
To find out who someone is after you've been talking to them for half an hour, (and knowing who they are could be useful,) use /whois.
You'll get something similar to the following:
*** Moron is firstname.lastname@example.org (I'm a moron!) *** on channels: #aussies, @#mine *** on irc server mushed.blah.oz.au
If the person is an IRC operator, you will also get something like:
*** Moron has a connection to the twilight zone (is an IRC operator)
They will also have a "*" before their nick.
IRC operators can help you if you get stuck, but don't annoy them too much. They can bite.
More Handy Commands
One thing many people forget to tell you is how to get out. A simple /quit will make good your escape. If someone /quit's before you can do a /whois on them, try a /whowas instead. This will tell you the identity of the last person to use that nick.
By far the most useful command you will need to know is /help. This will give you a number of topics to choose from, so that you can explore IRC 's features to your heart's content. Alternately, you can hassle the people around you, or those on your channel, to help you if you get really stuck.
A popular feature is the action command. Type /me, followed by an action. For example, /me runs away will give something like:
* Jack runs away
/ignore is a very handy command when you wish to ignore a particular user. /ignore Moron all will stop all messages from Moron from reaching you - even messages sent to the channel. This can get confusing. Use /ignore by itself to see a list of people you are ignoring, and /unignore to start listening to them again.
/away will mark you as being "away" when you're there, but you're not. If you type /away (..message..), then anyone who does a /whois on your nick, or tries to /msg to you, will receive a message that you are away, followed by your message. To "unmark" yourself, type /away by itself. If you begin a /msg conversation with someone, they will probably complain if you forget to do this.
/names will show all the public channels, and the nicknames of the people using them.
/admin will tell you who is running the server you are using. If you have any problems, you can mail them with your complaints. But make sure that it is really a server problem, and not something silly that you've done.
Channel operators, and "ops"
If you join a channel that did not previously exist, it will be created and make you its "channel operator". This will give you "ops", certain powers and privileges that other people just joining won't have.
When the last person leaves a channel, it disappears. It is also possible to have a channel with no operator if all the operators leave without passing operator status to someone else. (This is where "bots" come in handy.)
Some handy channel operator commands are:
- /kick To remove nick from #channel use /kick #channel nick. This allows you to remove offensive people. The actual definition of "offensive" is pretty much up to you.
- /mode Every channel has certain attributes associated with it. This command allows you to look at and change the modes of any channel you operate. Anyone can look at the modes of any channel.
- /mode #channel +option (turn ON option)
- /mode #channel -option (turn OFF option)
If you type /mode #channel, you will see the modes active for that particular channel.
Type /help mode for further information.
Mode option summary:
- m Moderate the channel. Only channel operators can enter messages in the channel. Everyone else has to sit there and read.
- t Topic limited. Only channel operators can set the topic.
- n Messages cannot be sent to the channel from the outside.
- s Channel is secret. It will not show up on any listings, nor will anyone on the channel.
- p Channel is private. People in this channel will show in listings, but the channel name is not shown, so only people who know the name can join.
- a Anonymous. People entering messages into the channel are not identified.
- o Add nick to the list of channel operators. All operators are equally powerful.
- i Make channel invite only. People can only join the channel if they are invited by someone already there.
- l Channel is limited. Only a maximum of number people may join before entry is refused.
Where'd everybody go?
Sometimes the server you are using gets disconnected from all the other ones. If this happens, everyone outside of your server will appear to "signoff" (/bye) simultaneously, and the only company you get is that on your own server.
Your local server will be constantly trying to reconnect to the rest of the world, and there's nothing that can be done about it. Just sit and wait, and get to know some Australians a bit better.
This is only a simple guide to get you going. For more information on this gem of international socialising time wastage, use the /help command or ask (nicely) the people around you, or on your channel.
As a last resort, ask the administrator of the server you are using.
- ↑ Information Technology Division - controllers of UTS' Internet Connection
- ↑ and it isn't
- ↑ On many public IRC servers, with tens of thousands of channels, this is a stupid thing to do. On these servers, you simply have to know which channel you're interested in beforehand - though list does have a few options that can narrow your search.
- ↑ There is a global war on at the moment over "bots" on IRC. You'd be safer staying completely out of it, but it's important remember that some channels, and even some entire servers and networks, ban "bots" outright, and will ban you from connecting if they catch you running one. Be safe! Check your channel's bot policy.