View on GitHub

discord-activity-monitor

Discord bot to add/remove roles based on user activity

Build status Health status

Discord Activity Monitor

A Discord bot to assign/remove a role from users in your guild based on whether or not they have been active lately

Features

Use cases

Getting started

Invite

Setup

Admin only Setup requires administrator permission in the Discord server

  1. Create a role (or choose an existing one) to use to mark active users
  2. Make your chosen role mentionable (only needed until setup is complete)
  3. Put the bot’s role higher in the list than your chosen role
  4. Run @Activity Monitor setup in a channel the bot can read and write in
    • If you’ve nicknamed the bot, substitute @Activity Monitor for it’s nickname
  5. Respond with the information the bot asks you for, until setup is complete

Example:
Example setup

Permissions

The bot requires certain permissions, which you are prompted for on the invite screen. Each permission has a reason for being required, explained below.

Permission Reason
Read messsages Detect when people are active
Send messages Used to ask setup questions (can be disabled after setup is complete)
Manage roles Assign and remove the active role from users
Embed links Responses to ‘help’ requests use message embeds for nice formatting

Self hosting

Manually

  1. Install Node.js v10 and
  2. Clone the repository, or download and extract the zip file (preferrably from the release page)
  3. Create a new file config.json from a copy of config.sample.json; paste your bot token in the token field (between the quotes)
  4. Run npm run full-start to compile and run the bot
    • If you see yellow ‘WARN’ messages about peer dependencies, you can safely ignore these

Git users

If you cloned the repository with git, make sure you git reset --hard vX.Y to a specific version, as latest master isn’t always production ready!

Docker

docker run [OPTIONS] benji7425/discord-activity-monitor

Options

Notes

Database

Need help?

I am available for contact via my support Discord server. I will always do my best to respond, however I am often busy so can’t always be available right away, and as this is a free service I may not always be able to resolve your query.

Built With

Versioning

SemVer is used for versioning; view available versions on the tags page

License

This project is licensed under the MIT License - see the LICENSE file for details