How This Book Is Organized
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 to 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 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
look up words on FOLDOC, the Free Online Dictionary of Computing. 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 to 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 points you will need to consider 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 users to
install any software, IRC clients that can run on mobile phones and
Pocket PCs, and access to IRC through a proxy.
- Chapter 15, Servers and Services
-
IRC servers play an obviously important role in the whole story of
IRC, allowing clients to connect to them and chat with one another.
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.
|