https://github.com/vilgotf/voice-pruner
Discord moderation bot
https://github.com/vilgotf/voice-pruner
bot discord discord-bot twilight-rs
Last synced: 9 months ago
JSON representation
Discord moderation bot
- Host: GitHub
- URL: https://github.com/vilgotf/voice-pruner
- Owner: vilgotf
- Archived: true
- Created: 2021-07-07T16:04:11.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-04-19T19:49:00.000Z (about 2 years ago)
- Last Synced: 2025-03-20T23:42:04.304Z (over 1 year ago)
- Topics: bot, discord, discord-bot, twilight-rs
- Language: Rust
- Homepage: https://discord.com/api/oauth2/authorize?client_id=861223160905072640&permissions=16777216&scope=bot
- Size: 332 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# Voice pruner
Discord admin bot to monitor and prune voice channels. Supports auto pruning users without the `CONNECT` permission. Assigning the bot a role named "no-auto-prune" disables auto pruning.
[Invite link] to an instance of this bot running the latest released version.
## Commands
* `/is-monitored` - Whether the voice channel is monitored
* channel - Voice channel to check
* `/list` - Lists visible voice channels
* type? - Type of visible channels to list
* Monitored - Lists visible monitored voice channels
* Unmonitored - Lists visible unmonitored voice channels
* `/prune` - Prune voice channels
* channel? - Prune only this voice channel
* role? - Prune only this role
## Required bot permissions
* `MOVE_MEMBERS` - Required for pruning
## Self hosting
A statically compiled binary of the bot may easily be created by running `cargo build --release` (the `--release` flags optimizes the binary). It's possible, through feature flags, to configure the TLS' certificate root store, defaulting to `native-roots`. Available feature flags:
* `native-roots` - The platform's certificate root store
* `webpki-roots` - Mozilla's certificate root store.
The bot tries to, on start-up, read its token from systemd's [credential storage] (a credential named `token`) or the `TOKEN` environment variable. Use the [voice-pruner.service](voice-pruner.service) unit as a starting point for running the bot with systemd.
### Privileged intents
The bot requires the `GUILD_MEMBERS` priviledged intent to monitor the updates of users' roles, but does otherwise function without it.
[credential storage]: https://systemd.io/CREDENTIALS/
[Invite link]: https://discord.com/api/oauth2/authorize?client_id=861223160905072640&permissions=16777216&scope=bot%20applications.commands