Skip to content

tcooc/aiml

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 ;)

About

Artificial Intelligence Markup Language lib for Node.js

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CoffeeScript 53.6%
  • JavaScript 46.4%