Links

Bot

This documentation site is deprecated. Please visit the README of https://github.com/synzen/MonitoRSS for hosting instructions.
If you're using FreeBSD, more specific instructions can be found here, provided by Ultima.
If you're using Heroku, see here (provided by Macley-Kun) or here (more complicated, but needs no credit card) (provided by codeinteger6).

Table of Contents

  1. 1.
    Requirements
  2. 2.
    Setup
  3. 3.
    Running

Requirements

  1. 1.
    Node.js v12.16 to 14

Setup

  1. 1.
    Install Node.js (must be at least v12.16).
  2. 2.
    Clone files from https://github.com/synzen/MonitoRSS-Clone/ on the master branch
  3. 3.
    Use npm install in the directory from console to install all dependencies/modules. If you see any make errors, they can be ignored since they are optional dependencies.
  4. 4.
    Create and get a bot token from https://discordapp.com/developers/applications/.
    • "Create an Application" -> Click "Bot" on the left panel -> "Add Bot" -> Set icon and username -> "Save Changes" -> Click "Copy" under Token
  5. 5.
    Set the bot token and any other changes into settings/config.bot.json. You may copy the example json file in the settings folder, and rename it to config.bot.json
  6. 6.
    Click "OAuth2" on the left panel, then check the "bot" scope and whatever other permissions at the bottom. Use the generated invite URL to invite the bot.
  7. 7.
    Configure whether the bot should use a MongoDB database. See here for the difference.
    • MongoDB - Recommended (only 64-bit systems are supported). Follow below instructions is running it locally.
      • Install MongoDB (v4.2+).
      • Start the DB server in console by mongod, or automatically on bootup (ubuntu/debian sudo systemctl enable mongod.service). It must be constantly running in the background.
    • Databaseless (if MongoDB is not possible)
      • Set the config.bot.json value of database.uri to a folder path where guild profiles will be stored.
  8. 8.
    If you intend to use Discord commands, you must enable Message Content Intent in Discord's control panel for your bot application. This is required for the beat to read and respond to Discord messages. See the image below.
    Enable message content intent

Sharding

Sharding is default behavior. If you want to explicitly define the number of shards, set config.advanced.shards.

Security Notice

Do not ever post your bot token (or files containing your bot token) anywhere where anyone else can see or access it. With the token, your bot app can be accessed by anyone and might cause your account to be banned on behalf of someone else's actions.
I am not responsible for what happens if someone gets a hold of the token that happens to be the same one you use to run this bot.

Running

Run node bot.js or nodejs bot.js.