📢 PhantomBot v3.6.2.5 is now available as a stable build
✅ Added:
➡️ Added the ability to set a custom tier name for the Prime
subscription tier (gmt2001, requested by oneandonlyjason #2774)
➡️ Added the ability to use the (plan)
tag for Prime subscription messages to get the custom tier name (gmt2001)
➡️ Added an update task to remove bad user greetings from the Edit User Greeting modal bug (gmt2001)
🌀 Changed:
➡️ Changed TwitchPubSub to sync all stream variables, such as title, game, etc, before sending TwitchOnline (gmt2001)
➡️ Changed the caches to better receive and send exceptions from the APIs to Rollbar and the logs (gmt2001)
🛠️ Fixed:
➡️ Fixed Discord not waiting for the current connection attempt to finish before trying again (gmt2001)
➡️ Fixed subscribeHandler not reloading custom tier names properly after using the panel to change them (gmt2001)
➡️ Fixed the lang string for the !namesubplan
command not existing (gmt2001)
➡️ Fixed TwitchPubSub not sending TwitchOnline events (gmt2001)
➡️ Fixed !coolcom
setting the value to NaN
when using the default formula of !coolcom mycommand number
(gmt2001)
➡️ Fixed outgoing Discord messages printing to console multiple times if retries were needed to send them (gmt2001)
➡️ Fixed a potential issue that could cause file paths to be rejected when using Docker (gmt2001)
➡️ Fixed a potential issue that could cause the Logger to fail to create the log folders when using Docker (gmt2001)
➡️ Fixed getLocalTime not including a timezone, causing tags like (countdown)
to fail if the bot timezone was changed (gmt2001)
➡️ Fixed the bot freezing and not displaying a useful message if OAuth refresh failed to get a valid token, but also failed to get a properly formatted error message (gmt2001)
➡️ Fixed TwitchAPIv5.GetChatUsers not handling invalid responses (gmt2001 rb#2249)
➡️ Fixed RestartRunner not accepting exit code 143 as a success exit code (gmt2001)
➡️ Fixed a NullPointerException when HttpClient was creating an HttpClientResponse to indicate that an exception was thrown during the request (gmt2001)
➡️ Fixed the Add Custom Command modal on the panel missing the default cooldown values, causing a validation error when attempting to save (gmt2001)
➡️ Fixed a NullPointerException when permissions.js was processing a .mods response (gmt2001)
➡️ Fixed the Edit User Greeting modal on the panel submitting a long javascript function string in place of the username when saving (gmt2001)
🗑️ Deprecated:
➡️ The OAuth page on https://phantombot.github.io now only provides a basic chat token for the bot account. After using this page to setup, please switch to automatically refreshing OAuth tokens from the bots built-in webserver http://localhost:25000/ (gmt2001)
➡️ com.gmt2001.HttpRequest
is Deprecated and should not be used for new development. com.gmt2001.httpclient.HttpClient
should be used instead
🛑 Removed:
➡️ Nothing Removed
🐞 Known Issues:
➡️ Due to the new Twitter API V2 not having some endpoints equivalent to the older V1 endpoints, some queries may use bot-side filtering, which could lead to the bot missing tweets if the target user sends/receives a high volume. This mostly affects retweet and mention detection
➡️ Autocomplete may still not work on some browsers when using the bot via localhost
🌐 Download It:
➡️ Downloads attached to the bottom of this release notice
❗ Remember to install to a separate folder, then copy over the config dir, as well as any custom scripts or files in addons
➡️ PhantomBot official builds are available on GitHub Container Registry at ghcr.io/phantombot/phantombot and ghcr.io/phantombot/nightly-build
➡️ PhantomBot official builds are available on DockerHub at gmt2001/phantombot-stable and gmt2001/phantombot-nightly. See the readme text on the appropriate Docker Hub pages for Docker Compose files
🗒️ Notes:
➡️ We have guides on PhantomBot. You can contribute by submitting a Pull Request adding or editing .md files in the /docs/guides/content folder of the repo. See the guides for info about formatting.
➡️ $.inidb.executeSql
is designed for personal, custom script use where the DataStore backend being used is known and will not change. Issues can, and will, occur if the SQL is written for one DataStore backend and the statement is then executed on a different backend.