xmpp-bot

1.0.8 • Public • Published

xmpp-bot

A bot that handles commands for you

js-standard-style license

Usage

const XMPPBot = require('xmpp-bot');
 
let bot = new XMPPBot({
  jid: 'juliet@capulet.tld',
  password: 'romeo',
  rooms: [
    {jid: 'coven@chat.shakespeare.lit', nick: 'juliet'}
  ]
})
 
// register a command
bot.command('name', (answer, args, state, env) => {
  ... // do some work
  answer(...) // answer with results
})
 
// or just return answer
bot.command('echo', (answer, args) => args.join(' '))
 
// disconnect when you're done (automatically done on process exit)
bot.disconnect();

Options

Commands

Command functions are passed 4 arguments:

  • answer: function that sends the provided text or XML element
  • answer.broadcast: broadcast message to all rooms
  • args: array of arguments
  • state: an object that is saved for this command (=env[command-name])
  • env: state shared by all commands

Commands are executed when a message sent to the bot starts with their name or when the bot is mentioned with @nick <command> [args] in a MUC (multi-user-chat)

Package Sidebar

Install

npm i xmpp-bot

Weekly Downloads

0

Version

1.0.8

License

GPL-3.0

Last publish

Collaborators

  • skyrising