Discord bot for managing everything Lunaro for the Academia Lunaris Discord Server
Note
Lunaro tracking is enabled for every server member by default.
Lunaro Manager will react to changes in your Discord rich presence. It will automatically set your playing status to "Playing Lunaro" when you are playing Lunaro, and remove it with a small delay when you are not.
You can disable Lunaro tracking for your account at any time using the /tracking pause
command.
Guides to the Discord command explorer to discover all commands, and also links to this GitHub section.
Check if Lunaro Manager is online and how long it took to receive the ping. This value is calculated from the system time, and may thus be inaccurate.
Adds the playing role to your profile. You can optionally disable Lunaro tracking for your account at the same time.
Removes the playing role from your profile. You can optionally re-enable Lunaro tracking for your account at the same time.
Lists the number of members playing Lunaro.
Disables Lunaro tracking for your account.
The bot will no longer react to changes in your Discord rich presence. This is useful because the Lunaro tracker will otherwise override your manually set playing status.
Enables Lunaro tracking for your account.
The bot will now react to changes in your Discord rich presence. Now you don't have to manually set your playing status anymore, as the bot will automatically check if you are playing Lunaro.
Displays details about Lunaro Manager, including amount of actively tracked members as well as stats and metadata about the bot.
Displays a link to this GitHub page, encouraging the creation of issues and pull requests.
-
Create a bot on https://discord.com/developers
-
Enable
PRESENCE
&SERVER MEMBERS
intents in the Bot section -
Invite the bot to your server, giving the following permissions:
- Manage Roles
- Send Messages
-
Create a
.env
file following the schema in .env.schema -
Run the bot using one of the methods below
You can run the bot in several ways, depending on your preference and use case.
You need to have Rust installed. This is the recommended way to run the bot during development.
$ cargo run
You need to have Docker installed. This is the recommended way to run the bot in production.
$ docker compose up --build -d
If you have the Nix package manager installed with Flakes enabled, you have several ways to build and run this bot.
As a reminder:
nix build
builds the package binarynix shell
builds the package binary and makes it available in your$PATH
nix run
builds the package binary and immediately executes it
I will use nix run
as the example, but you can use any of the above.
# run from local repository. make sure Cargo.lock is available!
$ nix run
# run latest using remote repository
$ nix run github:imatpot/lunaro-manager
# run specific version using remote repository
$ nix run github:imatpot/lunaro-manager/2.1.0