[IMPORTANT] Configuration update! from 2.1.1 to 2.3.0; pertaining to the below features. Please check the latest config.new.yml generated by the plugin and update your config!
[IMPORTANT] If you have been using markdown symbols to format the Matrix-bound messages in your config, you must change them to their HTML equivalent for them to display properly. Check the comments in the new config for conversion.
New Matrix chat commands: help, ip
Unknown chat command detection: This will send the unknown command message along with the command list
Disable Matrix chat commands: Remove them from the available_commands list in the config
Preserve formatting across Minecraft and Matrix chat
Blacklist users (may be helpful to filter out other bots, or problematic users :<)
Filter messages using regular expressions [regex] (e.g. filtering profanity)
Set room topic periodically - check config for more information on how this works
Technical changes
Fixed the "nag author(s)" error (plugin is not properly shutting down its async tasks when it is being shut down).
Room filter generation now uses JSONObject instead of strings
Created ConfigUtils, so that I no longer have to use Spigot Config API anywhere outside it
Matrix password login now tries API v3, r0, v1 in that order
The plugin now sends each message with a regular body and a formatted_body. When reserialization is disabled in config, both of these take same value. This change brings with it, a 5x increase in jar size because full html formatting is handled using Apache common-text StringEscapeUtils
The plugin now automatically removes all consecutive trailing /'s from the homeserver URL. Additionally, some basic config checking is included.