JavaScript/Node.js library to create simple answer bots for Discord messaging app
This library is not production bullet-proof ready, use at your own risk
$ npm install -S diskord
OR$ yarn add diskord
- Nodejs v6
- A discord bot token (guide how to get one)
First, you will need to create your bot instance aka login to the bot.
const Diskord = require('diskord');
const bot = new Diskord({ token: 'XXXX' });
Then you can create actions, theses actions will react to a message sent by a user. You can filter actions to trigger them only on a specified channel or a server.
Let's create a simple action, the ping request:
bot.registerAction({
trigger: 'ping',
action: 'pong'
});
Writing
ping
or!ping
in the channel where the bot is present will trigger the action.
For more complex operations you can register a function to your action:
bot.registerAction({
trigger: 'hi',
action: function(params) {
// params = {
// author: {},
// args: string[],
// reply: Function
// }
reply(`Welcome ${params.author.username}! How are you?`);
}
});
Most of the time you want user to interact with the bot by providing options, it's easy to do it:
bot.registerAction({
trigger: 'weather',
action: function(params) {
const city = params.args[0];
if (!city) return reply('Usage: !weather Paris');
[...]
reply(`The temperature in ${city} is ...`);
}
});
SimpleBotOptions = {
token: 'XXXX' // Secret bot token
}
Action = {
trigger: string // Message (with or without prefix '!') to match
action: string | ActionFunction // Action to start on when trigger match
}
ActionFunction = function(params) {
// params = {
// author: { username: string },
// args: string[],
// reply: Function
// }
}
- Spam protection
- Documentation on how to make great messages
- Support of attachment in answers
- Ideas? Create an issue!