Ambrosio: a Jabber bot
Ambrosio is a Jabber bot for system administration. You can use it right now,
it has at least a usefull feature :)
- It's plugin based, you can write perl modules to
add new commands or functionality;
- It's POE based, so you can add other sessions doing
other things and report back via Jabber;
- has plugins for most common commands (ifconfig, df, ps, netstat,
uptime). It's easy to add others (and it will be easier in future
versions...);
- it has a notification plugin: scripts you write, or applications
you run, can drop small notification files in a specific
directory, and those notifications are sent to the Jabber ID's
you specify.
History / What's new
Simple history to know what's new with each release:
- Version 0.4, released 2004/07/27
- Notification plugin: scripts or applications can use the local
bot to send notifications to Jabber IDs. Read more on
how to create
notifications;
- Improved reply control: a reply packet will be sent if at least
one plugin returns RC_OK.
- Version 0.3, released 2004/07/23
- Presence support: you can subscribe the bot. It's a plugin, so you can disable this
- Plugins can catch any packet: presence plugin needed this :)
- Version 0.2, released 2004/07/21
- Added a local copy of POE::Component::Jabber::Client::Legacy: modifications where made to allow for registration.
- Version 0.1, released 2004/07/21
- Initial relase: Df, Ps, Uptime and Netstat plugins
Roadmap
This are some features that are going to make it into version 1.0.
- Groupchat (MUC) support: configure the bots to enter one or
several rooms, and you can send the same command to all
of them;
- Configuration file: add a small configuration file, it's easier
than editing bot.pl;
- Rewrite bot_input: don't treat message packets differently -
create A::InteractivePlugin and put it all there;
- Re-write the core using Spoon: this will make it easier to
install a bot;
- Document and test.
Download
The current version is
0.4, it works. Use 'help' to see what commands are available.
Installation and Configuration
Unpack the tarball, cd ambrosio/sbin, edit bot.pl, run ./bot.pl.