IRC bot

From Wikipedia, the free encyclopedia

An IRC bot performing a simple task.
Enlarge
An IRC bot performing a simple task.

An IRC bot is a set of scripts or an independent program that connects to Internet Relay Chat as a client, and so appears to other IRC users as another user. It differs from a regular client in that instead of providing interactive access to IRC for a human user, it performs automated functions.

The original IRC bot was GM, written by IRC server operator Greg Lindahl, whose IRC nickname was Wumpus. GM played a game of Hunt the Wumpus with users who communicated with it over IRC. Over time, bots evolved to provide special services, such as managing channels on behalf of groups of users, maintaining access lists, and providing access to databases.

Often, an IRC bot is deployed as a detached program running from a stable host. It sits on an IRC channel to keep it open and prevents malicious users from taking over the channel. It can be configured to give channel operator status to privileged users when they join the channel, and can provide a unified channel operator list. Many of these features require that the bot be a channel operator. Thus, most IRC bots are run from computers which have long uptimes (generally running a BSD derivative or Linux) and a fast, stable Internet connection. As IRC has become popular with many dial-up users as well, special services have appeared that offer limited user-level access to a stable Linux server with a decent connection. The user may run an IRC bot from this shell account. These services are commonly known as shell providers.

A bot can also perform many other useful functions, such as logging what happens in an IRC channel, giving out information on demand (very popular in IRC channels dealing with user support), creating statistics, hosting trivia games, and so on. These functions are usually provided by user-writable scripts, often written in a scripting programming language such as Tcl or Perl, added to the bot in question. Channels dedicated to file sharing often use XDCC bots to distribute their files.

IRC bots are particularly well-used on IRC networks without channel registration services like ChanServ, such as EFnet and IRCnet, and on networks that may prevent your channel being registered due to certain registration requirements (minimum user count, etc.), such as Undernet or QuakeNet. Where bots are used for administrative functions such as this, they may need more access than a normal client connection allows. Some versions of IRC have a "Service" protocol that allows clients these extra powers. Such server-sanctioned bots are called IRC services.

Popular IRC bots include Eggdrop, Winbot, EnergyMech, Infobot, blootbot, gozerbot and Supybot.

Many people that create an IRC bot use the program mIRC. The mIRC script editor allows large scripts that people can create. mIRC has its own scripting language that almost anyone can learn from the different tutorials on the internet. There is also a help file to learn basic and advanced scripting.


[edit] External links