NAME

POE::Component::IRC::Plugin::CycleEmpty - A PoCo-IRC plugin which cycles channels if they become empty and opless.

SYNOPSIS

use POE::Component::IRC::Plugin::CycleEmpty;

$irc->plugin_add('CycleEmpty', POE::Component::IRC::Plugin::CycleEmpty->new());

DESCRIPTION

POE::Component::IRC::Plugin::CycleEmpty is a POE::Component::IRC plugin. When a channel member quits, gets kicked, or parts, the plugin will cycle the channel if the IRC component is alone on that channel and is not a channel operator. If there was a topic or a key set on the channel, they will be restored upon rejoining.

This is useful for regaining ops in small channels if the IRC network does not have ChanServ or IRCNet's +R channel mode.

This plugin requires the IRC component to be POE::Component::IRC::State or a subclass thereof.

METHODS

new

Returns a plugin object suitable for feeding to POE::Component::IRC's plugin_add method.

is_cycling

One argument:

A channel name

Returns 1 if the plugin is currently cycling that channel, 0 otherwise. Useful if need to ignore the fact that the Component just parted the channel in question.

AUTHOR

Hinrik Örn Sigurðsson, hinrik.sig@gmail.com