NorseBot is a multipurpose discord bot with uses in ticket management, moderation, fun, and streamer integrations. Click the button below to invite NorseBot to your own discord server.
The default prefix is '!', however, this can be set to any prefix desired. Use !help
to get a full list of commands, or !help COMMAND_NAME_HERE
to get information about a specific command/feature.
Help Page 1 | Help Page 2 |
---|---|
NorseBot lets you to create applications that allow members of your discord server to apply for roles.
First create an application for your discord members to apply to with !app new
.
Next set the reviewing channel with !app reviewchannel #CHANNEL_MENTION_HERE
. This is the channel where submitted applications will reside. You will be able to either accept or decline their role request, and they will be messaged regarding the update.
Next set the application channel with !app applychannel #CHANNEL_MENTION_HERE
. Users will be able to react in this channel to fill out the applications you create.
Discord users can create a ticket by entering !ticket create TICKET_TITLE_HERE
in any text channel (This message is removed by NorseBot after a short delay). The first time a user creates a ticket a new Category will be setup with a ticket-logs channel. This ticket-logs channel will save the messages from a ticket once it is closed.
By default, the only people who can see the ticket channel created are administrators and the person who opened the ticket. If you want other users to be able to see tickets the moment they are created, modify the Tickets category permissions to include additional roles/users.
NorseBot lets you set up streaming notifications for members with a certain role. This requires the member has their twitch integrated with their discord; the notification will show up in the channel once discord recognizes they are streaming.
First set the notification channel with !stream channel #CHANNEL_MENTION_HERE
. This is the channel where NorseBot will post links to streams when members with the streaming role start streaming.
Finally, set the stream role with !stream role @ROLE_MENTION_HERE
. When users with this role start streaming, NorseBot will post a link to their stream in the streaming notification channel set previously.
You can also host this bot in your own NodeJS Environment. When on Linux, using PM2 is highly recommended.
- Clone this repository
- Install NodeJS (at least v12)
- Navigate to the project root directory
- Install dependencies:
npm install
using cmd prompt/terminal - Define the environment variable BOT_TOKEN (containing your Build-A-Bot token)
- Define the environment variable DB_LOGIN_URL (Example: DB_LOGIN_URL=mongodb+srv://USER:PASS@norsebot.mongodb.net) (urlencode USER/PASS on linux)
- Define the environment variable DB_NAME (name of the database, like dev, prod, etc.)
- If you would like to use the get random image command, define the envionronment variable UNSPLASH_TOKEN and include an Unsplash Developer Token.
- Run
npm start
in cmd prompt/terminal
- Run
npm dev
to run the bot without compiling it into JavaScript (slightly more memory intensive) - Run
npm test
in cmd prompt/terminal for unit testing