- Add new optional parameter, "column-name" to the
/assign-role
and /remove-role
command.
- This new optional parameter will allow you to specify the name of the column where your user identifiers can be found.
- If no column-name is provided, it will default to the first column as it always has before.
- Separate "Member Not Found" and "Fail" count in the completed embed.
- Add more information to the error if assigned/unassigned role fails
- Add "Join Date" column to the CSV file created from
/export-users
- Fixed a bug that appeared when a user deleted the status message before the bot was finished processing the member file attachment.
- It will now cancel the parsing process and display an error that it was cancelled and properly remove the guild id from currently processing to allow them to start the process again.
- Fixed a bug that prevented transaction count updates for botinfo and status
- New command!:
/remove-role
- Adds the ability to now remove a role via csv upload.
- Fixed an issue that was causing error messages when the database was offline performing its backup while the bot was online and handling commands.
-
Faster parsing with a tweaked algorithm
- The parsing process has been tweaked to move things along quicker. You should see a nice reduction in wait times for the bot to finish parsing your member files.
-
Member export filenames
- When exporting your members using
/export-users
the filename will now include the filters used and a timestamp (utc)
(ex: 20231224_230736_export_code_noob_test_include_bots.csv)
-
Parsing complete log file
- Log file now contains more information on the actions taken
- Filename has been altered to include a timestamp (utc)
(ex: 20231224_230736_code_noob_test.csv)
-
Under-the-hood improvements
- upgraded backend database to postgres 15 - includes its own set of performance enhancements and bug fixed
- Improved logging and error response messages - Improve turnaround for identifying and squashing bugs
- All dependencies updated to latest stable versions
This update addresses a situation related to Discord interactions. Specifically, the issue arises when editing the progress message after the 15-minute interaction window has expired. In response to this, we've made a slight modification in the way such messages are managed.
Now, the initial command response, along with any error messages, will be presented in an ephemeral format (visible only to you), while the progress message will be sent as a regular channel message. This allows it to be updated throughout the entire duration of the role assignment procedure, thereby avoiding errors due to the original command interaction's expiry.
However, this change also introduces a new prerequisite for the /assign-role
command. The bot now MUST have permissions enabled to View Channel, Send Messages, and Attach Files in the channel where the command is being used. If these permissions are not granted, the command will not work and an error message will be generated, prompting you to enable these permissions. Moreover, if these permissions are modified after the initiation of the role assignment process, an error will be triggered the moment the bot requires one of these permissions, and an attempt to send a message will be made.
- Update discord lib to latest stable
- Move bot to stable
- update discord lib to latest beta
- add permission requirements to
/assign role
command
- View Channel, Send Messages, Attach Files are now required to be enabled for the bot to use
/assign role
- Provide more detailed error responses
- Handle critical errors with more information
- Add support for new usernames (beta feature)
- Add new and more informatitve errors
/assign role
has been renamed to /assign-role
- New command
/export-users
- Export server members to a CSV file see details
/process_csv
has been deprecated and removed
/help
now has two sub-commands /help overview
and /help commands
(see details)
- Internal rewrites to reduce cache and speed up bot startup time.
/process_csv
will become deprecated in a future version. Please familiarize yourself with replacement command /assign role
- 3 new commands
/role permissions
- View a role's permissions
/role members
- View an alphabetized list of all members with a role (can be paginated if more than 50)
/botinfo
- View info about the bot. Latency, uptime, version info, guild and member counts, and total roles assigned
- Moved back to public channel messages to eliminate the need to manage interaction expiration during processing
- Added [Trash] button to most all bot messages for quick and easy deletion (requires View Messages/Channel permissions)
- Updated
/help
command to reflect new /assign role
command, and button links have been updated
- Invite link updated across all platforms to include
View Messages/Channel
permissions
- Gave the completed stats embed some color

- Minor optimization to the csv parse functionality
- Major backend rewrite
- Timer increased to 15 minutes (up from 10 minutes)
- Due to Discord interaction limits a 10 minute time has been implemented during parsing.
- Any jobs that take up to 10 minutes will be stopped and "completed".
- Any members that have already processed will be assigned the selected roles and all members that were not processed will be noted in the log file.
- Mostly uninteresting backend changes and optimization
- Moved to ephemeral (system) messages for parse progress and complete messages
- 1.25 sleep between members has been moved to only be applied if the member was assigned a role. Any failed or skipped members will not trigger the sleep timer
- Added stats embed to show how many rows were successful (member given role), skipped (member has role), or failed (member not found) along with log file after job complete
- Moved to slash command
/process_csv
to make things a little easier on the user when uploading their files.
- CSV File formatting requirements updated
- Member ID, name, or nickname can be used now.
- Must be in the first column of data, all other columns ignored
- Must include a header
- Added log file that is sent to the user upon job completion
- Add progress messaging for csv parsing jobs. Message will update every 2-3 seconds to show progress
- Basic csv parsing functionality.
- Process csv via
on_message
event (user must paste their role ID, then attach the CSV file
- CSV file formatting requirements:
- member ID or name in the 2nd row, all other rows are ignored