A NodeJS bot micro-framework for Discord.
| lib | ||
| .gitignore | ||
| index.js | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| yarn.lock | ||
discord-microframework
Interaction-oriented NodeJS bot micro-framework for Discord.
Getting started
Prerequisites
- NodeJS
- NPM
- Yarn
Install
From npm
yarn add discord-microframework
or
npm i discord-microframework
Use
const Discord = require('discord-microframework');
Bot
Instanciation
const Bot = new Discord.Bot(name, token, logLevel);
namestringtokenstringlogLevelstring
Start / Stop
Bot.start();
Bot.stop();
Discord.Bot.startAll();
Discord.Bot.stopAll();
Command handler
Instanciation
const myCommandHandler = new Discord.CommandHandler(name, prefix, bots, channels, logLevel);
namestringprefixstringbotsboolean - Decide wether to handle commands from bots or not.
(default :false)channelsarray - Channels ID where commands are handled.
(default :null— means everywhere)logLevelstring
Commands subscription
myCommandHandler.subscribe(command => {
// do something
});
cmdstring - Command without prefix and parametersargsarray - Command parametersargs_assocobject - Associative command parameters (parsed askey=value)delfunction - Delete commandoutfunction - Output response (short for 'output')messagestring
repfunction - Output response with mention (short for 'reply')messagestring
dmfunction - Output response in DMmessagestring
reactfunctionreaction(s)string or array - Unicode emoji characters
Handler activation
Bot.use(myCommandHandler);
Reaction handler
Instanciation
const myReactionHandler = new Discord.ReactionHandler(name, emojis);
namestringemojisarray - Unicode emoji characters
Handler activation
Bot.use(myReactionHandler);
Handler listening
myReactionHandler.listen(message, callbacks, user, remove, bots, logLevel);
Getters
Bot.channels()
Bot.guilds()
Bot.users()
Classes
Discord.RichEmbed
Built with
Node modules :
- discord.js - Discord bot API
- console-stamp - Timestamped logging
- p-queue - Ordered Promises resolution
- zen-observable - Observables implementation
Changelog
1.0.0(2019-06-??) • Initial release