Package Exports
- @discordia/framework
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@discordia/framework) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Note: Some of the links in this README file work better on the documentation site
Installation
Discordia instantiates and starts Discord bots using the @discordia/framework module.
# install the module using npm
npm install @discordia/framework
# install the module using yarn
yarn add @discordia/frameworkBasic Example
const DiscordiaFramework = require('@discordia/framework');
// actions is an array of DiscordiaAction objects
const actions = require('./actions');
const options = {
name: 'myBot',
caseSensitiveName: false,
missingCommandMessage: 'The command you tried to send was not available',
help: 'You should probably configure a useful help message or leave the default',
};
const myBot = new DiscordiaFramework('DISCORD_BOT_TOKEN', actions, options);
// Set up the event listeners and log the bot in using the provided token
myBot.start();Usage
Every Discordia framework is made of three pieces: a token, an array of actions, and a set of optional options.
Token
String
Your private Discord bot token. The token for your bot should be located at https://discordapp.com/developers/applications/{client-id}/bot (replace {client-id} with the Client ID of your Discord application) in a hidden field that you can reveal by clicking "Click to Reveal Token". This guide is a useful one for making a new Discord bot if you have not done so before. Follow that guide through step #4 to make your bot and get a link to invite it to a server.
⚠️This token is a sensitive piece of information - do not commit it with your source code and regenerate it if it ever becomes compromised⚠️
Actions
Array[DiscordiaAction]
An array of DiscordiaAction objects. See our guide on how to use the @discordia/action module to create your own actions and/or install them from third party modules.
Options
Object
The options object is prepopulated with overrideable defaults. More in-depth explanations of the available options are below.
| Option | Default |
|---|---|
name |
undefined |
caseSensitiveName |
false |
missingCommandMessage |
"The command you typed is not available 🙁" |
help |
@discordia/default-help |
name
String - Default = undefined
Your discord bot will see all messages sent in a server you invite it to. By default, it will only respond when you @ the bot. If name is set then the bot will instead respond to any message that begins with a string matching name. By default this is not case sensitive but you can set caseSensitiveName to true if you want the name to be case sensitive.
caseSensitiveName
Boolean - Default = false
Controls whether or not the bot name should be treated as if it is case sensitive. This field is ignored if name is not set.
missingCommandMessage
String|Function - Default = "The command you typed is not available 🙁"
See DiscordiaFramework.handleMissingCommand for more details.
The message to send if a server member tries to ask the bot to do an action it does not know how to handle. You can either customize the string or provide a function to give a more involved response.
help
String|Function - Default = @discordia/default-help
See DiscordiaFramework.handleHelp for more details.
The message to send if a server member tries to ask the bot for help. By default it will use @discordia/default-help to read your actions and send a response based on their accessors and descriptions. You can provide a static string as a response or provide a custom function to give a more involved response.
Testing
🚧 Coming Soon! 🚧