A simple AIML chatterbot plugin for XmppBot
C#
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
AIML.Tests Fixed bug where bot never new the name of the person it was talking to Dec 20, 2013
AIML
Properties Initial commit Dec 3, 2013
lib
.gitignore Initial commit Dec 3, 2013
AimlBotConfig.cs Initial commit Dec 3, 2013
AimlPlugin.cs Remove vestigial name code Dec 20, 2013
ChatBot.cs Fixed bug where bot never new the name of the person it was talking to Dec 20, 2013
Trigger.cs
XmppBot-AIML.csproj
XmppBot-AIML.sln Initial commit Dec 3, 2013
license.txt
packages.config Initial commit Dec 3, 2013
readme.md Update readme.md Mar 19, 2014

readme.md

AIML Plugin for XmppBot

This is a simple plugin for XmppBot For HipChat which connects the AIMLBot project to XmppBot. AIML stands for Artificial Intelligence Markup Language.

Installation

Copy the .dlls (Bender.dll, SimpleConfig.dll, XmppBot.Common.dll, and XmppBot-AIML.dll) into the /plugins folder. You'll also need to include the AIML folder and its subfolders (aiml and config) somewhere accessible (making AIML a subfolder of /plugins works pretty well).

Configuration

Add the following to the <configSections> element of XmppBot's configuration file:

<section name="aimlBotConfig" type="SimpleConfig.Section, SimpleConfig, Version=1.0.29.0, Culture=neutral, PublicKeyToken=null"/>

Then add the following to the configuration element:

<aimlBotConfig settingsPath="plugins/AIML/config/Settings.xml">
<startTriggers>
  <trigger Partial="true" CaseSensitive="false" Text="Hey, Bot"></trigger>
  <trigger Partial="true" CaseSensitive="false" Text="Hey Bot"></trigger>
  <trigger Partial="true" CaseSensitive="false" Text="Bot!"></trigger>
</startTriggers>
<stopTriggers>
  <trigger Partial="true" CaseSensitive="false" Text="That's enough, bot"></trigger>
  <trigger Partial="true" CaseSensitive="false" Text="Stop Talking"></trigger>
</stopTriggers>

Where settingsPath is the path to the .xml file containing containing the AIMLBot settings. The startTriggers and stopTriggers elements control the phrases which will cause the chatbot to engage; when the bot starts up it will remain silent until one of the startTriggers occurs in the chat. Once triggered, it will continue to respond until a stopTrigger occurs. Triggers can be exact or partial matches, and may be made case sensitive.

Customization

The libraries, settings, and AIML files from the AIMLBot project have been included in this repo for convenience. You can modify the existing AIML files or add new ones to the aiml folder and they'll be picked up when the plugin is loaded.