IRC Hacks

100 Industrial-Strength Tips & Tools

IRC Hacks

By Paul Mutton
July 2004
Series: O'Reilly Hacks
ISBN: 0-596-00687-X
400+ pages, $24.95 US, $36.95 CA, 17.50 UK

Click cover to enlarge image

Buy online

"IRC (Internet Relay Chat) may very well turn out to be the world's most successful hack"

While IRC is easy to get into and many people are happy to use it without being aware of what's happening under the hood, there are those who hunger for more knowledge, and this book is for them.

Some of the world's most renowned IRC hackers have grouped together to contribute their hacks, making this book essential reading for anybody who wants to create IRC bots, tweak their IRC client, or even write their own.

IRC Hacks Book Contents

There are several different areas you need to master to become a true IRC hacker. At the core is the conceptual model of IRC, while layered around that are the protocols and clients used to access the IRC networks. The book is divided into 15 chapters, starting with the basics and progressing to cover interesting hacks involving bots and client enhancements:

Chapter 1, Connecting to IRC
Before embarking on the journey through the rest of the hacks, it's important to make sure you know how to connect to IRC. This chapter shows you how to use a variety of IRC clients, on a variety of operating systems, to connect to an IRC server and join the #irchacks channel.
Chapter 2, Using IRC
To use IRC effectively, you need to be aware of how users, channels, servers and networks fit into the equation. This chapter also introduces you to the common abbreviations and acronyms that you are likely to encounter on a foray through IRC. You will also learn how to protect your channel and nickname using Services.
Chapter 3, Users and Channels
One common question asked by IRC newcomers is, "What channels should I join?" This chapter shows you how to find channels that are relevant to you, either by searching on a specific network or through all the networks in the world. You will also be shown how to perform some investigative work to find out where a user is from and generate amusing statistics for your channel.
Chapter 4, Enhancing IRC Clients
IRC clients have a lot of functionality built in, and this chapter helps to expose those features. Some of these hacks make use of client scripts to perform useful tasks that would otherwise not be possible. As you read through this chapter, you'll soon start to realize that if an IRC client doesn't do what you want it to do, you can easily add the feature yourself.
Chapter 5, Writing IRC Bots
IRC Bots are autonomous clients that run without direct human input. This chapter explores what needs to be done to write an autonomous client that can connect to IRC, using Perl, Java and Python. You will also be introduced to some popular libraries that simplify the process of writing IRC bots.
Chapter 6, Logging Bots
Bots that log IRC activity come in various guises. This chapter demonstrates how to create bots that use logging in different ways to achieve useful results, such as remembering when people were last active, logging URLs, running blogs and recapping on conversations.
Chapter 7, Community Bots
IRC is a chat system that is inherently amenable for use by communities. These communities can be served by IRC bots that perform useful tasks. Some of these applications are fun, such as generating social network diagrams of a community, while others are more useful, such as being able to pass messages on to other users.
Chapter 8, Search and Query Bots
IRC bots are often used to provide a gateway or interface to another service. This chapter shows you how to make bots to search Google and lookup words on FOLDOC. Web Services can be used to make bots that search for books on Amazon, check the weather, translate languages or convert currencies. On a more local scale, you can also create a bot to find out whether users are connected to an IRC network.
Chapter 9, Fun Bots
One reason for getting into IRC is that it is fun to chat. We reinforce this principle by demonstrating some fun bots that create comic strips, calculate mathematical expressions and even act as a quizmaster. You can even try and fool your friends with the artificial intelligence bot described in this chapter.
Chapter 10, Announcement Bots
IRC bots are ideal for making announcements. They don't argue back if you disagree with them. With the growing popularity of RSS, this chapter shows you how to create an IRC bot that reads news into a channel from RSS feeds. Other hacks show you how to announce items posted to newsgroups, or even events happening on a game server.
Chapter 11, Network Bots
As IRC bots run on machines with internet access, it seems foolish not to make use of this fact. This chapter shows you how to link bots together to share information and provide remote resources to users of your bots, letting them get remote shells and tail log files over IRC.
Chapter 12, Channel Management Bots
As IRC is accessible by anybody, you occasionally find the odd user who is intent on causing trouble. The primary target of such abuse is usually a channel, where messages may be spammed or topics may be changed. This chapter shows you how to take care of such troublemakers by using bots to thwart their evil intentions.
Chapter 13, The IRC Protocol
Having already explored the possibilities of bots, this chapter goes into more detail about the IRC protocol, which is essential if you wish to write your own IRC applications. This chapter covers some of the considerations you will need to make when writing IRC bots or clients.
Chapter 14, Other Ways to Connect to IRC
Chapter 1 covered the 'conventional' IRC clients that most people use to connect to IRC. This chapter provides alternatives, such as web-based clients that do not require a user to install any software, IRC clients that can run on mobile phones and Pocket PCs, and accessing IRC through a proxy.
Chapter 15, Servers and Services
IRC servers play an obvious important role in the whole story of IRC, allowing clients to connect to them and chat with each other. This chapter shows you how to run your own IRC server and let people connect to it from the internet. For greater resilience, you can even network more than one server. You can also find out how to access MSN, ICQ and AIM from your IRC client.

In addition to the above, the book contains an excellent foreword by Jarkko Oikarinen - the inventor of IRC.

Buy IRC Hacks

IRC Hacks is published by O'Reilly and appears in their catalog at You can also buy the book in association with Amazon.

If you have any questions about the book, please feel free to contact me.


Search this site


Copyright Paul Mutton 2001-2013
Feedback welcomed

Web Hosting

Web Hosting