Cobalt
cobalt
| |
---|---|
Author(s): | avenj |
Programming language: | Perl |
Platform: | Unix |
Status: | Active/Development |
License: | GNU General Public License v2 |
Homepage: | http://www.cobaltirc.org/dev/bots |
Bot::Cobalt is a pluggable IRC bot framework, tying a multi-server IRC interface into a plugin pipeline, configuration manager, database and serialization interfaces, and other useful tools.
The core Bot::Cobalt plugin set includes most of the functionality of Jason Hamilton's abandoned DarkBot along with a vast number of improvements.
It's written from the ground up using POE::Component::IRC and POE::Component::Syndicator.
The original cobalt (1.x) is deprecated and no longer documented here. Conversion tools for cobalt1 data sets are bundled with Bot::Cobalt
Documentation
Documentation lives in "POD" embedded within the Bot::Cobalt distribution itself.
See http://www.cobaltirc.org/docs/wiki/doku.php?id=bots:cobalt:docs:filelist for an up-to-date Wiki documentation index or https://metacpan.org/release/Bot-Cobalt for the metaCPAN project page.
Features
Bot::Cobalt::Plugin::Info3
The Info3 plugin largely emulates DarkBot's 'info2' text triggers; triggers can be written using simple glob syntax. Responses can include variables or randomized responses (via Cobalt::Plugin::RDB).
With Info3 enabled, your bot can be used as an IRC help bot, a humanoid chatter-bot, a method of storing interesting bits of information, etc.
Bot::Cobalt::Plugin::RDB
RDBs provide databases of 'random stuff' that can be triggered on a timer or via Cobalt::Plugin::Info3 topic triggers.
The main RDB acts much like DarkBot's randstuff functionality.
Other Plugins
- Alarmclock.pm - Timed highlights/reminders
- Auth.pm - Flexible Auth system
- Games.pm - Interface a collection of silly games (!roll, !magic8, !rr, !rps ...)
- PluginMgr.pm - Plugin management via IRC
- Rehash.pm - Rehash configuration files via IRC
- Seen.pm - 'Seen' bot plugin
Bot::Cobalt::Plugin::Extras::
The core plugin set also includes a handful of useful modules in the Extras:: namespace, including:
- Karma.pm - Karma-bot
- Money.pm - Convert currencies
- Relay.pm - Multiplex chatter between IRC channels
- Shorten.pm - Shorten URLs on IRC via Metamark
- TempConv.pm - Convert temperatures between C, F, K
Obtaining Bot::Cobalt
Via CPAN:
$ cpan Bot::Cobalt
Also see the metaCPAN page at https://metacpan.org/release/Bot-Cobalt
Development discussion takes place on #eris (Blackcobalt)