Please visit the What's New wiki page for an easy-to-read update list and upgrade guide for v5.1.0 and v5.1.1 users.
This release contains a large number of updates, so the limitations of this release description makes it hard to read!
Use the wiki link provided above instead!
Update Guide For v5.1.0 and v5.1.1 Users
Required Update Config.ini File
Update yourconfig.ini
file to includeEnableDatabaseIntegrityCheck=True
under the[Main Settings]
section:[Main Settings] EnableDatabaseIntegrityCheck = True
Refer to the /templates/ directory to see a template of the file.Optional Setup Custom Aliases File
Rename yourglobal_aliases.csv
file tocustom_aliases.csv
Alternatively, if you don't have custom aliases underglobal_aliases.csv
you can simply delete it.Optional Setup Custom User Privileges File
Create acustom_user_privileges.csv
file (template provided in /templates/ folder) and fill it with custom user privileges as required.
This is important since the new update will require the database to be regenerated, so doing this will prevent any loss of custom user privileges.Optional Setup Custom Command Permissions File
Create acustom_permissions.csv
file (template provided in /templates/ folder) and fill it with custom command permissions as required.
This is important since the new update will require the database to be regenerated, so doing this will prevent any loss of custom command permissions.
Wiki Command For Server Tools Plugin NEW
-
This is a simple command that displays a link to the JJMumbleBot wiki for quick reference at runtime.
-
!wiki
: Displays a link to the JJMumbleBot wiki.
Custom Aliases And Runtime Modifications UPDATED
Previously, aliases could be updated by modifying the global_aliases.csv
file. Every update to the file required restarting the bot which was very tedious!
In this update, the internal database handling of this process has been improved and the file has been renamed to custom_aliases.csv
for consistency.
With this update, Updating multiple aliases can be updated at runtime using either a local csv file
or a remote csv file
downloaded through a URL.
Update Aliases With Local Files:
-
Users can now set custom aliases for commands by utilizing a
custom_aliases.csv
file within the cfg folder.*
This is useful for everyone, but particularly helpful for docker containers and cloud-hosted solutions that have their/cfg/
folders mounted.
*This file is automatically generated if it's missing and was formerly called theglobal_aliases.csv
file.
- For example: "I want to have an alias to display information about the bot!"
-
You can update the database at runtime using the new command:
!refreshaliases
.
alias,command
botinfo,(about)|(version)
In this simple example, the custom_aliases.csv
is modified so that a !botinfo
alias is made to call the !about and !version
commands.
Update Aliases With Remote Files:
-
Bot owners now have an option of updating aliases by utilizing a csv file on a remote endpoint/URL.
This functions similarly to the local file method shown above, but has the advantage of not requiring extensive access to the filesystem.
This is extremely useful for bot owners that use cloud-hosting solutions with limited filesystem access.
The csv file is downloaded to the following temporary path:/cfg/downloads/_aliases.csv
-
This can be achieved by utilizing this new command:
!importaliases 'URL'
Custom Command Permissions And Runtime Modifications NEW
Previously, to update the command permissions, each command had to be meticulously updated by modifying multiple csv files across multiple plugin folders.
With this update, that is no longer the case and updating multiple commands can be updated at runtime using either a local csv file
or a remote csv file
downloaded through a URL.
In addition to those updates, new commands have been added to display/update individual command permissions.
Display/Update Individual Permissions With Commands:
-
!getpermission 'command_name'
: Displays the permission level for the specified command.
!setpermission 'command_name' 'permission_level'
: Modifies the permission level for the specified command.
Update Command Permissions With Local Files:
-
Users can now set custom permission levels for commands by utilizing a
custom_permissions.csv
file within the cfg folder.*
This is useful for everyone, but particularly helpful for docker containers and cloud-hosted solutions that have their/cfg/
folders mounted.
*This file is automatically generated if it's missing.
- For example: "I want to allow only administrators to change the bot volume!"
- You can update the database at runtime using the new command:
!refreshpermissions
.
command,permission
volume,4
In this example, the custom_permissions.csv
is modified so that the volume command is set to a permission level of 4 (administrators and above only).
Update Command Permissions With Remote Files:
-
Bot owners now have an option of updating the command permissions by utilizing a csv file on a remote endpoint/URL.
This functions similarly to the local file method shown above, but has the advantage of not requiring extensive access to the filesystem.
This is extremely useful for bot owners that use cloud-hosting solutions with limited filesystem access.
The csv file is downloaded to the following temporary path:/cfg/downloads/_permissions.csv
-
This can be achieved by utilizing this command:
!importpermissions 'URL'
Custom User Privileges And Runtime Modifications NEW
Previously, to update the user privileges, administrators had to individually update user privileges using the !setprivileges
command for every user.
With this update, It is much simpler to update multiple user privileges at a time at runtime using either a local csv file
or a remove csv file
downloaded with a URL.
Update User Privileges With Local Files:
-
Users can now set custom privileges for users by utilizing a
custom_user_privileges.csv
file within the cfg folder.*
This is useful for everyone, but particularly helpful for docker containers and cloud hosted-solutions that have their/cfg/
folders mounted.
*This file is automatically generated if it's missing.
- For example: "I want to change privileges for 4 users!"
- You can update the database at runtime using the new command:
!refreshuserprivileges
.
username,level
Jason,4
Thomas,3
Suzy,4
John,2
In this example, the custom_user_privileges.csv
is modified to update the privileges of individual users.
Update User Privileges With Remote Files:
-
Bot owners now have an option of updating user privileges by utilizing a csv file on a remote endpoint/URL.
This functions similarly to the local file method shown above, but has the advantage of not requiring extensive access to the filesystem.
This is extremely useful for bot owners that use cloud-hosting solutions with limited filesystem access.
The csv file is downloaded to the following temporary path:/cfg/downloads/_privileges.csv
-
This can be achieved by utilizing this command:
!importuserprivileges 'URL'
Database and Config Integrity Checking NEW
-
On startup, the database is updated with any custom command permissions, custom aliases, or custom user privileges provided in the
custom_aliases.csv, custom_permissions.csv, and custom_user_privileges.csv
files.1
1This feature can be disabled in theconfig.ini
file, but disabling it may result in data conflicts when updates occur. - On startup, the
config.ini
file is scanned to make sure the options match the options in thetemplate_config.ini
file to ensure integrity.2
2This feature CANNOT be disabled in theconfig.ini
file since it is critical to prevent conflicts in the config file.
New Command Line Arguments NEW
-regeneratedatabase
: Deletes the existing internal database if it exists, so that it can be regenerated from scratch.
Wiki Visual Overhaul UPDATED
-
The JJMumbleBot Wiki has had a visual overhaul to improve readability and navigation!
Come check it out!
Bug Fixes FIXES
- Fixed error-handling for the
!volume
command. - Fixed issue where custom aliases would be re-added to the database on start-up if they were previously removed using a command.
- The JJMumbleBot Wiki now properly displays an error if javascript is disabled.
Other Changes MISC
- A warning is now displayed if database backups are enabled but the database file is missing.
- A different message is now displayed to blacklisted users that try to use bot commands.
- Renamed the generated
global_aliases.csv
tocustom_aliases.csv
- Cleaned up the console messages on regular bot startup.
- Optimized logging and debugging messages in the internal database library.
- Refactored user privilege checks.
- Updated repository README to allow new users to better understand the features of JJMumbleBot.
- Updated
Quick Setup Utility
web utility for v5.2.0 - Updated bot internal version and updated plugins to v5.2.0