|
|
PipSqueek is a perl-based IRC bot. An IRC bot is a regular chat client
controlled by the computer, providing services and entertainment to the channel
denizens it lives with. PipSqueek was written in object-oriented perl and uses
state-of-the-art event based technology from the POE framework. PipSqueek
sports an impressive array of features, and is easily extended to add more!

-
Admin plugin allows you to modify user levels, kick or ban users (assuming the bot has appropriate channel permissions), reload all configuration data and plugins, make the bot say or do things in the channel, change the topic, etc.
-
AutoRejoin lets the bot know when it was kicked from the channel and automatically rejoins.
-
Babelize tries to translate your input into and out of a bunch of other languages and then returns the output!
-
Birthdays lets your channel users register birthdays of other users and then see what birthdays are coming up, etc.
-
BlackJack is a really fun module that lets you play blackjack (21) casino-style against the bot. There are many options including the 'High Rollers Club' which lets only rich players show off by playing in the channel.
-
CapsLockCop watches the chat and kicks those annoying types that like TO TYPE IN ALL CAPITAL LETTERS. It uses a configurable setting for the minimum length of text and the percentage of letters that must be capitals.
-
Currency plugin performs currency conversion between many currencies of the world in realtime. It even provides functionality to search for the correct currency code for your country.
-
Dictionary plugin lets the bot listen for people that may be having trouble spelling a word (by typing word(sp?)) and returns the proper URL to dictionary.com for them to check. Also provides easy word lookup handler with the !dictionary command.
-
Decide will help you make those really important decisions; Like,
"pipsqueek: should I go to taco bell or jack in the box?" Or, "pipsqueek:
shall we play games or do work?"
-
An online Help system is available for users to get information on the commmands that PipSqueek will accept. It includes usage information and an informative description for all commands.
-
The Host plugin attempts to look up the IP or hostname of the input given and returns the results.
-
LinkGrabber monitors the chatroom for URLs mentioned by other users and stores them away. It lets you see the last X urls mentioned, or even just the last few from a particular user. It's quite handy for when you can't just remember someone's homepage, but you're sure they mentioned it in the channel the other day...
-
The Logging module has the bot record everything that happens in the channel it's in to a file so that you can use those logs for stats or searches later.
-
Math plugin lets you perform mathematical operations in a safe consistent way, it even saves the result of the last mathematical expression in a special variable '_' and lets you re-use that variable in the next math expression.
-
The NickServ plugin provides PipSqueek a way to register with an IRCServices compliant NickServ service when it connects. This lets the bot automatically gain ops in appropriate channels, or receive protection from kicks, etc.
-
NumberConversion provides several handy commands for converting numbers from one base to another (for example, int2oct, hex2int, etc).
-
Quotes are an integral part of IRC chat, and PipSqueek provides a way to store, retrieve, delete, and search for the best quotes that your channel has to offer!
-
Russian Roulette is one of the most fun features of pipsqueek. Thanks to inspiration from 'rbot', the roulette plugin provides endless of hours in entertainment as you and your friends take turns putting the gun to your head and pulling the trigger in desperation. The bot keeps track of all games played and provides stats reporting for individual users and for the game as a whole.
-
Seen plugin keeps track of the users in the channel and lets you find out when the bot last encountered them (and what they were doing at the time). Useful for finding out just how long your favorite IRC friends have been missing (and maybe you should call the police!)
-
The Slap plugin was inspired by 'rbot' as well, and lets you smack people around with vicious mosquitos, and tiny pianos! With the randomly generated insulting slaps, there's no end to the laughter!
-
What would an IRC bot be without Stats. Let your users compete against each other for ranking in the venerable top10 of many categories, including characters typed, words per line, smiley faces, number of kicks they've received, and more! The bot dutifully tracks all input and records it. Retrieve stats for individual users, find out where you rank in certain categories, and more.
-
The StringFuncs plugin provides several fun operations to perform on messages in the channel, including; Reverse, ROT13, Length, and Morse code
-
The UnitConversion plugin enables the bot to perform conversions between many varied forms of measurement. Most used are celsius to farenheit and pounds to kilogram conversions for those of us that live in countries that aren't metric-system friendly.
-
The Uptime plugin reports how long the bot has been running (1-second accuracy), and assuming you find an operating system stable enough (Linux), will report even how many milleniums it has been running.
-
The URLGenerator plugin which lets you generate URLs for various popular search interfaces like google, cpan, freshmeat, sourceforge, etc. You just type '!google something', and presto! the bot appears and issues you the proper URL to click on and perform your search.
-
Our Weather plugin lets you see the temperature and condition summary for any zip code in the US!
-
The ever-lasting WTF plugin lets you see what a particular acronym means, so your friends won't make fun of you for not knowing what "IIRC" means.

-
POE-based architecture used for all networking and event delegation. This opens up a wide spectrum of options for the bot, not the least of which is external input. As a matter of fact, a plugin was written to monitor a logfile and post a new message to the IRC channel in just 4 minutes!
-
All functionality for the bot is handled in dynamically loaded perl modules that follow a consistent object-oriented approach (plugins). Plugins can be reloaded on-the-fly during execution (no restart of the bot is necessary).
-
All commands are assigned a permission level which allows them to be customized on a per-install basis. Users may be required to register with the bot to access higher level commands, and you may even set a level threshold that requires identification for all commands higher that that threshold.
-
Nearly everything about the bot can be customized. A good example is the character prefix required for the bot to recognize a command. This 'character' can be a string of any length, to save typing though most people just leave it as '!', '@', or '|'. You can also address the bot personally using the bots nickname, ie "PipSqueek: quote".
-
The configuration file is easy to read and understand. Everything has been documented and examples are included with most options. If you just need an IRC bot running fast though, there are really only 3 options that need to be defined!
-
PipSqueek automatically tracks usernames and nick changes in an attempt to match up users to their saved data correctly. This is built-in functionality to make storing data associated with a user easier. All user data is stored in an sqlite database. Plugins don't have to even use SQL to access data, they just search_user() and update_user() on a simple hash.
-
Plugins have the ability to control whether they are only used in a public or private setting (or both). The standard API is intelligent enough to figure out the context and respond appropriately. Of course, this can all be overridden to do whatever it is you need to do!
|