App-Bondage
view release on metacpan or search on metacpan
NAME
App::Bondage - A featureful IRC bouncer based on POE::Component::IRC
SYNOPSIS
my $bouncer = App::Bondage->new(
Debug => $debug,
Work_dir => $work_dir,
);
DESCRIPTION
Bondage is an IRC bouncer. It acts as a proxy between multiple IRC
servers and multiple IRC clients. It makes it easy to stay permanently
connected to IRC. It is mostly made up of reusable components. Very
little is made from scratch here. If it is, it will be made modular and
reusable, probably as a POE::Component::IRC plugin. This keeps the code
short and (hopefully) well tested by others.
Rationale
I wrote Bondage because no other IRC bouncer out there fit my needs.
Either they were missing essential features, or they were implemented in
an undesirable (if not buggy) way. I've tried to make Bondage stay out
of your way and be as transparent as possible. It's supposed to be a
proxy, after all.
FEATURES
Easy setup
Bondage is easy to get up and running. In the configuration file, you
just have to specify the port it will listen on, the password, and some
IRC server(s) you want Bondage to connect to. Everything else has
sensible defaults, though you might want to use a custom nickname and
pick some channels to join on connect.
Logging
Bondage can log both public and private messages for you. All log files
are saved as UTF-8.
Stays connected
Bondage will reconnect to IRC when it gets disconnected or the IRC
server stops responding.
Recall messages
Bondage can send you all the messages you missed since you detached, or
it can send you all messages received since it connected to the IRC
server, or neither. This feature is based on similar features found in
miau, dircproxy, and ctrlproxy.
Auto-away
Bondage will set your status to away when no clients are attached.
Reclaim nickname
Bondage will periodically try to change to your preferred nickname if it
is taken.
Flood protection
Bondage utilizes POE::Component::IRC's flood protection to ensure that
you never flood yourself off the IRC server.
NickServ support
Bondage can identify with NickServ for you when needed.
Rejoins channels if kicked
Bondage can try to rejoin a channel if you get kicked from it.
Encrypted passwords
Bondage supports encrypted passwords in its configuration file for added
security.
SSL support
You can connect to SSL-enabled IRC servers, and make Bondage require SSL
for client connections.
IPv6 support
Bondage can connect to IPv6 IRC servers, and also listen for client
connections via IPv6.
Cycles empty channels
Bondage can cycle (part and rejoin) channels for you when they become
empty in order to gain ops.
CTCP replies
Bondage will reply to CTCP VERSION requests when you are offline.
( run in 1.683 second using v1.01-cache-2.11-cpan-6aa56a78535 )