conversational-ui

Standard regular expression based natural language interface to functions.

Usage no npm install needed!

<script type="module">
  import conversationalUi from 'https://cdn.skypack.dev/conversational-ui';
</script>

README

conversational-ui

Regular expression based natural language interface to functions.

Installation

npm i conversational-ui

Initialize


const cui = require('conversational-ui');

Register Handlers


cui.register(`what is the answer to the ultimate question of life`, '', function(options){
  return "Um, but what is the question?";
});

cui.register(`My name is (?<name>[a-z ]+)`, 'i', function(options){
  return `Hello ${options.name.trim()} how are you`;
});


Example 1


const question = 'what is the answer to the ultimate question of life';
console.log('Q:',question)
const response = await cui.request(question);
console.log("A:", response);

Q: what is the answer to the ultimate question of life
A: Um, but what is the question?

Example 2


const question = 'My name is Slim Shady !!!!';
console.log('Q:',question)
const response = await cui.request(question);
console.log("A:", response);

Q: My name is Slim Shady !!!!
A: Hello Slim Shady how are you

Example 3


cui.register(`My name is (?<name>[a-z ]+)`, 'i', function({name}){
  return `Hello ${name} how are you!`;
});


const question = 'My name is Slim Shady !!!!';
console.log('Q:',question)
const response = await cui.request(question);
console.log("A:", response);

Q: My name is Slim Shady !!!!
A: Hello Slim Shady how are you

Example 4, server.js


gt; curl "http://localhost:3000/my+name+is+shady"
Hello shady how are you!

gt; curl "http://localhost:3000/i+am+very+well"
Oh, shady I am glad you are very well