This release note documents functional, configuration, and code changes introduced with the release of Discourse 3.3, the main Daden chatbot engine, and version 1.3 of the Bot Manager.
These changes went live on 17 Jan 09.
For more information please contact support@daden.co.uk.
Overview
Version 3.3 provides some incremental improvements to the Discourse engine but adds the following major features:
Separation of Discourse engine from the Web Services interface (see below)
- Introduction of an alternate Altair front-end for broader AI support
- A new RDF based knowledge engine
- Improved support for the BotIF Second Life interface
Functional Changes
Parser
- Fixed a bug when using bracketed optional words in Patterns with <star/> in response
- Allowed a #null# keyword in bracketed optional words in Patterns to allow a null match. e.g "Is that (a an the #null#) truth" will now match "Is that truth" as well as "Is that the truth" etc.
- Fully implemented the "actions" field - previously called extras - for easier support of avatar animations using our emergent Avatar Action Markup Language - AAML
AIML
- We've added non-standard tags <singular> and <plural> which can be used around single words (and <star/>) to change the plurality of a word.
- You can increment and decrement counters with <set name="fred">++</set> and <set name="fred">--</set>
- You can use counters with the "that" field to provide context dependent cases (e.g. fred=2 only triggers on fred=2, fred>2 only triggers on fred > 2)
Triples
A whole new RDF based triples engine has been introduced, complete with limited reasoning. Please see the new Triples documentation.
Modules
- Triples
A new core module has been introduced to support the triples functionality.
Added a plurals module that will convert from singular to plural and vice-versa. Use with:
<system name="plural" action="makeplural" value="<star/>"/> and
<system name="plural" action="makesingular" value="<star/>"/> with a * pattern
Added a new Twitter module. This is automatically triggered when a new conversation starts - allowing you to monitor bot use in real time via Twitter. When used with BotIF it also reports the name of the avatar being spoken to. There are 3 new values in the config file to support this:
<twitter_action>start</twitter_action> - set bot to report to twitter when conversation starts (other actions will follow in later releases)
<twitter_username>xxx</twitter_username> - the user name for the twitter account being used
<twitter_passwordxx</twitter_password>- the user name for the twitter account being used
- Other
Deprecated <get name="rss"/> module removed as replaced 12 months ago by <module name="rss"/>
Cases
No changes to common libraries.
Lookups
No changes to common lookups
Configuration
Changes
No changes to configuration
Template and User Interface Changes
No changes to templates or user interface. The change to discourse_core.pl is transparent since chatbot.pl still manages the normal web services interface.
Other Changes
None
Management Changes
Changed order of domains so Common shows at the bottom
Proper support for the "action" field
Deprecated the "mood" field - now handled by AAML and action field
New Div markup and CSS file
Code Changes
Old chatbot.pl has been split into a new chatbot.pl which presents the web service, and discourse_core.pl which contains the Discourse code accessed through an internal Perl #include API. This has allowed us to introduce a new altair.pl optional web service tuned for AI development which can share the same Discourse chatbot engine. Other internal dependencies also changed.
User Data Changes
The only data changes required is user data are where set name="payload" has been used to supply AAML animations to SL avatars. These now MUST be replaced by the action tag. We will liaise with effected user to make the changes during the transition period.

