0.161950 2016-07-13 13:40:36-05:00 America/Chicago
* Added the initialize_services method to Bot::Backbone::Bot.
* Adjust the order services are constructed to account for dependencies.
0.160630 2016-03-03 16:48:52-06:00 America/Chicago
* Bot::Backbone::Service::JabberChat has been moved to a separate release
for installation.
* Bot::Backbone::Service::IRChat has been moved to a separate release for
installation.
* To make effective use of this bot framework, you probably want to install
one of the chat engine services: JabberChat, IRChat, or SlackChat. If you
just want to play with a command-line bot, then you can just install this
module by itself and use ConsoleChat.
* Removed the examples in eg... they were red herrings.
0.142820 2014-10-09 08:53:20CDT-0500 America/Chicago
* Added Bot::Backbone::Service::IRChat which enables bots using the service
to connect to IRC servers.
* Tweaked the "is_to_me" method of Bot::Backbone::Service::JabberChat to
allow the bot to identify messages sent to it that end in an exclamation
point ("!") or ("?") as well as a period (".").
* Added an IRC link to the #backbone channel on irc.perl.org where I have a
bot demoing the features of the framework.
0.142220 2014-08-09 22:47:33-05:00 America/Chicago
* Added Bot::Backbone::Service::Role::Storage to make it easier to build
storage-based add-on modules distributed on CPAN.
* Added the ability to rewrite commands easily through the new commands
attribute on dispatched services.
* Added the predicate_iterator method to the dispatcher to allow classes to
iterate over predicates and tweak them.
* API Change: This is mostly in undocumented internals, but just anyone that
added custom predicates will now be broken.
* Bot::Backbone::Dispatcher::Predicate is now a role instead of a base
class. Done to facilitate predicate iteration.
* Added the respond_by_bot_method, respond_by_service_method,
run_this_bot_method, and run_this_service_method dispatch sugar
directives.
0.141180 2014-04-27 22:06:19 America/Chicago
* Added new client debugging settings to XMPP
* Bugfix: It's possible to receive an IM from someone we do not have on
roster and we do not have a presence reported for. Make sure that doesn't
cause us to choke.
0.140590 2014-02-28 10:20:15 America/Chicago
* Bugfix: The code that detects whether the message "is_to_me" is supposed
to strip the nick from the message if it is. The previous release stopped
doing that correctly.
0.140490 2014-02-17 21:20:26 America/Chicago
* Made it so that the notion of is_to_me on Jabber messages is easier to
override.
* Updated the default notion of is_to_me to cover a few more cases, such as
infix and suffix mentions of the bot by name.
* XMPP MUC chats (group chats) use the volume level to specify whether a
message is a PM (whisper) or a channel message (spoken).
* Added a new volume attribute to messages and a set of volume-related
predicates for use in dispatchers.
* Bugfix: Corrects [rt.cpan.org #78211] reported by IRONCAMEL. This was a
known problem from the beginning that POE::Loop::EV has problems during
testing. However, it proved itself to be the only stable event loop that
cooperated with AnyEvent on RedHat, which was where my bot first ran. I've
now replaced it with POE::Loop::AnyEvent, which works well on the Centos
machines I am using in production now.
* Bugfix: Corrects [rt.cpan.org #90695] reported by Upasana Shukla and
patched by Zoffix Znet. The usage of enum in one instance was deprecated
and has now been fixed.
0.140280 2014-01-28 07:05:02 America/Chicago
* Bugfix: Corrects [rt.cpan.org #90955] reported by Upasana Shukla and
patched by Zoffix Znet. The use of Class::MOP::load_class is now
deprecated. Use Class::Load::load_class instead.
0.112500 2011-09-06 23:08:32 America/Chicago
* API Change: The join_group() method of the GroupJoiner role now accepts a
reference to a hash as the one and only argument rather than a string.
This allows it to be more flexible so that the nickname or other group
options may be passed when joining a chat.
* The JabberChat now allows you to specify the nickname the bot should have
in a chat room.
* The GroupChat service now provides a nickname attribute to set a custom
nickname within that group.
* Bugfix: Some of the dependencies in the Makefile.PL file were wrong.
Namely, some internal packages were incorrectly being included as
dependencies and POE::Loop::EV was missing.
0.112400 2011-08-27 22:47:18 America/Chicago
* API Change: The send_message method expects a hash ref rather than plain
named parameters.
* API Change: The send_reply method no longer allows a string to be passed,
but requires a hash ref of named parameters.
* API Change: The reply method of Bot::Backbone::Message now takes two
arguments rather than just one. The first argument should be the service
or bot object sending the message so that the send policies of that sender
may be applied to the outgoing message. This may be something else
entirely or undef, but a warning will be issued in that case.
* There's a new extensible send policy framework for helping authors build
bots that are prevented from doing really annoying things like being too
chatty, repeating themselves too often, etc.
* Send policies will be applied in all cases to chats, chat consumers, and
dispatched responders automatically.
* A new send_policy sugar method is available via Bot::Backbone to configure
send policies.
* Two send policy models are provided: (1) MinimumInterval to prevent
general flooding and (2) MinimumRepeatInterval to prevent the bot from
repeating itself.
* Added a Responder service role to help in the process of building
dispatched responders (i.e., most services a bot author is going to write
up), which provides reasonable defaults for send_message/send_reply that
will be subject to a send policy, if set.
* ConsoleChat now has get_line and put_line methods to allow easier
interaction with the terminal.
* Bugfix: The respond sugar subroutine was completely unusable.
* Bugfix: Previously, JabberChat would fail if a message was sent through it
before the session was completely ready. Now a warning is issued instead.
* Bugfix: JabberChat is no longer XMPP spewing debug output to STDOUT.
* Bugfix: Group chats that start with the bots nick were being incorrectly
picked up by the DirectChat service.
* Bugfix: Sometimes Jabber servers send messages with no message.
AnyEvent::XMPP passes these on for some reason. We ignore them now because
they were causing the Bot::Backbone::Message constructor to craok.
* Bugfix: A few documentation tweaks and other small fixes.
0.112320 2011-08-19 23:17:37 America/Chicago
* Moose-based tools for building chat bot dispatchers and organizing chat
bot services.
* Moose-based tools for building chat services, which are submodules
(minibots) that can be combined in flexible ways.
* Chat service for Jabber
* Chat service for working with a running bot at the console
* Helper chat service for direct chat features.
* Helper chat service for group chat features.