Cobalt

From IRC Wiki
Jump to: navigation, search
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)