Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Artificial Intelligence Markup Language lib for Node.js
CoffeeScript JavaScript
branch: master
Failed to load latest commit information.
lib getters and setters
test bump version
.editorconfig Initial commit
.gitattributes Initial commit
.gitignore Initial commit
.travis.yml Initial commit
AIML.xsd Expressions parsing added
LICENSE Initial commit
README.md bump version
index.js Directory parsing
package.json bump version

README.md

AIML Build Status

Artificial Intelligence Markup Language lib for Node.js

Usage

Installation

npm install aiml

Parser

  • aiml.parse(xml, callback) - parse string with AIML Xml.
  • aiml.parseFiles(files, callback) - parse file or files.
  • aiml.parseDir(dir, callback) - parse all files in specified directory.

Engine

Engine constructor: var engine = new aiml.AiEngine(roomName, topics, botData)

Parameters

  • roomName - (required) name of chat room.
  • topics - (required) array of topics(parser results).
  • botData - (optional) bot metadata (name, version, gender, etc.).

Main awesome function: engine.reply(authorData, message, callback)

Parameters

  • authorData - (required) message author metadata (name, age, etc.).
  • message - (required) just message.
  • callback - (required) classic js callback, nothing special: ).

Sample

var aiml = require('aiml')

aiml.parseFile('sample.aiml', function(err, topics){
  var engine = new aiml.AiEngine('Default', topics, {name: 'Jonny'});
  var responce = engine.reply({name: 'Billy'}, "Hi, dude", function(err, responce){
    console.log(responce);
  });
});

Supported features in current release

  • Category patterns
    • <bot name="*"/>
    • *
  • Ctegory templates
    • <bot name="*"/>
    • *
    • <srai>link</srai>
    • <get name="variable"/>
    • <set name="variable">value</set>

Contribute

You are welcome ;)

Something went wrong with that request. Please try again.