Tutorial: Introduction to IRC and AO IRC

[edited: July 7, 2006]: Quick update -- you can find the AO IRC details here

Well, it was asked of me to write up a tutorial on using IRC and specifically, on using the AntiOnline Servers especially in relation to the new change in one of the bots there, AntiBot. This tutorial will cover the more common basic commands along with commands specific to AntiBot. In addition, I will cover something that seems to be have been long forgotten but very important -- Netiquette.

Let's begin.

IRC, Internet Relay Chat, has been around a long time. It's not a new service. In fact, it's probably the most common use of internet communication, long before Instant Messaging. The only service older would be e-mail itself. There are many different servers that play host to thousands of channels. A channel is a chat room that users go into. Often it is about a specific topic. When I used to be on EfNet (one of the major IRC group of servers -- www.efnet.org), I would frequent #macintosh (a channel for macintosh users) and #internex (a help channel setup by my ISP at the time. I could actually get online help in the channel or just yap away).

Many irc servers have help channels. If you are on a server and need information about it try one of the following. They are often present and helpful: #help, #irchelp, #service, #helpdesk. Some of the major IRC server groups include:

EFnet -- Possibly the oldest around. Quite wild at times: www.efnet.org
Undernet -- Possibly the largest around. Recently they were DDoSed by hackers but they seemed to have pulled through, albeit with a little more of a serious look on things: www.undernet.org
DalNet -- Second only to Undernet. Note: if you're an @home user, you'll find you've probably been k-lined (I'll explain this later): www.dal.net
Everywherechat -- I found these guys via web chats: www.everywherechat.org
ChatNet: www.chatnet.org
and many, many more.

To find a listing of servers you can go to yahoo.com and do a search for IRC networks. They have a full category entirely dedicated to it. In addition, many IRC applications have built-in lists. AntiOnline has opened it's own IRC server that is separate from any of the larger networks. This was to allow for AO members to get to know each other as well as help each other and generally yap (JP, I hope you don't mind the poetic license). The AO Chat Network, as it is often referred to, consists of two servers. When you are connected you can type /map:

/antichat.res.cmu.edu (6) 2
`-services.antionline.com (3) 1

This shows there are two servers. Services.antionline.com has, in this example, 3 users and antichat.res.cmu.edu has 6 users (light night). By the way, thanks to xy for graciously lending us access to his server. Now since AO chat is a separate network and not on most irc programs I've put the info below for you to enter into your IRC program as a new server.

antichat.res.cmu.edu port: 6667
services.antionline.com port: 6667

When you connect to any server you often want to join your favourite chat room(s). To do this you type in the command /join #room. So to join AntiOnline's room you'd type /join #antionline.

Now, here at AO, given our orientation and concern for security we did need a way to prevent users from pretending to be someone they aren't. For this purpose, the bot AntiBot was setup to recognize people by their AntiOnline user name. (Editor's Note: Bots are programs that are used for a variety of things from channel protection to nick protection to asking trivia questions. If you want to find out more about eggdrop bots -- the most common form -- go to www.egghelp.com)

To get AntiBot to recognize you, you need to type /msg AntiBot IDENTIFY YourAntiOnlinePassword to set your nick to your AO handle or your it will be changed to Guestxxxx (where xxxx represents a number) in 60 seconds. If you are successful, check in the console or status window. AntiBot should come back with -AntiBot[antibot@irc.antionline.database]- WooHoo, You Have Now Been Identified response. If it's something else, double check your spelling of your password and try again.

If you don't have an AntiOnline.com login, please register for one now at http://www.AntiOnline.com/register.php . Users with a space in their name have special situation as on IRC spaces are not allowed based on current specifications. At the time of writing, the bot was being worked on to deal with this. If you have a space in your name, mention it to xy or JP when in chat.

(Edited on January 14, 2002):

For those that use the BitchX client please add the following script to your client:

## Setting the following variables will prevent BitchX from nick flooding
## These three commands should be modified and typed directly into BitchX
## Please change my-normal-nick to the nick you normally use
/set ALTNICK guest_my-normal-nick
/set DEFAULT_NICK my-normal-nick

## BitchX auto identify for AntiBot
## put this in your ~/.bitchxrc file after the password line is modified

## change my_antionline_password to the password you use on antionline.com
assign nickpass my_antionline_password

alias nickident {
if (rmatch($0 *antionline*database)) {
eval quote privmsg antibot :identify $nickpass
} {

on notice "AntiBot You are using the handle of a registered*" {
userhost antibot -cmd nickident $$4

Commands sent to the server are prefaced with a /. Below are some of the more common commands:

/join #room: to join an existing room or to create a new room. All rooms are identified with a #

/list: list all the channels available

/msg username: to send a private message to someone. It's recommended to ask first.

/nick yourAOnickname: to change your nickname to your AOnickname. Don't forget:
To get AntiBot to recognize you, you need to type /msg AntiBot IDENTIFY YourAntiOnlinePassword to set your nick to your AO handle or your it will be changed to Guestxxxx (where xxxx represents a number) in 60 seconds. If you don't have an AntiOnline.com login, please register for one now at http://www.AntiOnline.com/register.php (note: your password is only seen by Antibot. None of the other users will see it unless you accidentally type it in the channel).

Now, that said some irc programs may have a feature to change your nick if the "NickServ" (A NickServ is a program-bot that protects nicknames) tells the irc program that the nick is protected. Some programs have a serious issue with this and it results in something called a "nick flood", where the program attempts to keep your nick. Please turn this feature OFF. You may inadvertantly get kicked/banned from the chat channel if you leave this running. (Editor's note: I believe the *nix irc program, BitchX has this a default that cannot be turned off. Make sure that you identify yourself to AntiBot to avoid this or to a guestxxxx name).

/whois username: to find out info about a specific user

/ping username: to see how great or small the lag is between yourself and another user (same as ping in networking).

/map: to see what servers exist on this IRC network.

/me action: allows for actions to be done to show emotions, actions, etc. The most common and well known is the infamous trout action: Punkin slaps MsMittens around a bit with a large trout. This is found as a default on the mIRC windows-based IRC program.

/notify username: to let you know when a user comes online

/ignore username: so you do not see any messages, actions or anything else by a specific user. Often good for those user(s) that are abusive or irritating.

/part message: to leave a room and leave with a message (optional)

/quit message: to quit the server and leave with a message (optional)

That should cover all the user commands. Now a little understanding of the hierarchy. When you join you will see a variety of other user types. Users with:

@ before their nick name indicates that they are channel operators. This means that they have abilities to kick other users, ban other users, change topic, give ops to other users and set the modes for the channel.

% indicates a half channel operator. This means they have abilities to kick other users, ban other users and change the topic.

+v indicates that the user can talk when the channel is set on moderated.

There is a special user. When you do a /whois nickname you might see *** User is a Network Administrator. This user is a server operator and has absolute authority.

Channel modes that can and often exist include:

+t = indicates that topic can only be changed by operators
+n = indicates no messages from external sources can be sent
+m = channel is moderated. Only operators, half ops and voiced users can talk.
+i = invite only meaning you have to be invited to get in
+s = keeps the channel from being listed when using the list command.
+p = indicates the channel is private. Often used with +k (indicates keyword password must be entered when joining)
+l = indicates limit number of users. Often used with high-traffic channels.

At this point, we've covered a fair amount of the commands and such. I'm now going to cover something called Netiquette. One of the biggest issues with IRC is, oddly enough, miscommunication. We, as humans, are often influenced by what we see or hear when talking with others. This is harder to convey in IRC. So some conventions have been created.

CAPS LOCK: often frowned up as it conveys anger, yelling and usually, ignorance of some type

Emoticons: are welcomed. They show feelings and emotions that are often not found. Ones you use in email or with IM often originated on IRC.

Abbreviations: until your typing speed improves, abbreviations are often used. I've put some of the more common ones below. Use them as needed:

LOL=laughing out loud
ROFL=rolling on the floor, laughing
ROFLMAO=rolling on the floor, laughing my ass off
BRB=be right back
BBIAB=be back in a bit
TTYL=talk to you later
LTNS=long time no see
SOL=**** out of luck
STBU=sucks to be you
A/S/L=age/sex/location (this is frowned upon and considered tacky/crass. Don't use it).
IMO=in my opinion
IMHO=in my humble opinion
WB=welcome back
AFK=away from keyboard

Arguing with opers (irc/network operators) and/or channel operators is a great way to get kicked/banned/klined. K-lined means banished from the server. Never mind trying to get into a room, you often can't even connect to the server. Opers are the ones with the power. They make the rules. It may be harsh but deal with it. Racism and sexism is often frowned upon in the channel. While banter is animated at times and scarcasm flows fast, there are limits to this. Don't try to test it right away. Your first visit may be your last.

ThePreacher reminded me of another thing in relation to opers that is frowned upon: that is something referred to as "ops begging". Whining, asking, demanding, etc. to get a magical @ or % is given a dim view. Ops is often earned and gained with respect. Get to know people, ask questions, help others and it might come with time.

Questions: Asking a question like "how do I hack Hotmail/yahoo/email accounts" in a security related chat channel is silly and will be met appropriately. AdditionallyDon't be surprised at the response. If you are having difficulties with something, want to know about how a particular thing works, eg, networking, need help with unix/windows, setting up firewalls, etc. ask. But, ask once. Don't repeat. We often hear you the first time. Sometimes however we may be trying to formulate an answer that makes sense, trying to find you a site to go to or maybe away from the screen. Patience is important in IRC.

For those users that connect via the java chat you will see colourful emoticons to play with. Use them SPARINGLY. They are only viewable by other java client users.

For those where english is a second language, don't be afraid to try and ask. We'll usually figure it out. We may ask you to try it another way. That's ok. =)

I hope this has helped some of you. I'm usually in the IRC channels most days/evenings (EST in Canada).