PhantomBot is an actively developed open source interactive Twitch bot with a vibrant community that provides entertainment and moderation for your channel, allowing you to focus on what matters the most to you - your game and your viewers.
PhantomBot is a Twitch chat bot powered by Java. PhantomBot has many modern features out of the box such as a built-in webpanel, enhanced moderation, games, a point system, raffles, custom commands, a music player, and more. PhantomBot can also be integrated with many services such as Discord, Twitter, TipeeeStream, StreamLabs and StreamElements!
Additional functionality is enabled through the use of third-party modules.
PhantomBot requires the following software to be installed:
ARM (Raspberry Pi) or x86 (32-bit) architectures * OpenJDK 11
x86_64 (64-bit) architectures * No pre-requisites
Detailed upgrade instructions are listed on our documentation.
PhantomBot is licensed under the GNU General Public License v3 (GPL-3).
:information_source: Notice: As of Phantombot Nightly Build 49687f9 (July 4, 2021) and PhantomBot v3.5.0, we now use Rollbar to automatically report exceptions to the dev team.
NOTE: This is not included in stable builds until v3.5.0
OAuth tokens, Client IDs, and API Secrets are NOT sent. All information is kept private.
Data is only sent when an exception occurs. Some very common, safe to ignore, exceptions are not sent, such as the ones that occur when shutting down the bot while an active panel connection exists.
Exceptions are sent through a server owned by @gmt2001 for additional filtering before continuing on to Rollbar. No data is saved on this server beyond normal logs used for DDOS mitigation. These logs may include IP addresses and are deleted after 5 weeks. IP addresses are NOT sent on to Rollbar.
For all other values in botlogin.txt, only an indicator of whether the value exists will be sent, but not the actual value itself.
The other data sent includes: - java.home - Indicates where Java is installed - java.specification.name - Indicates the specification of the Java Runtime Environment the Java installation adheres to - java.specification.vendor - Indicates the vendor of the above specification - java.specification.version - Indicates the version of the above specification - java.vendor - Indicates the vendor of the actual Java installation - java.version - Indicates the actual version of the Java installation - os.arch - Indicates 32-bit or 64-bit operating system - os.name - Indicates the name of the operating system - os.version - Indicates the version of the operating system - The current state of debugon, even if set from the console - The current state of debuglog, even if set from the console - A boolean indicator of whether the OAuth is logged in as the Bot (but not the actual OAuth token) - A boolean indicator of whether the API OAuth is logged in as the Broadcaster (but not the actual OAuth token) - The full stack trace of the exception
To opt out of Rollbar exception reporting, add the following line to the botlogin.txt:
Docker users can opt out using the above method, or by adding the following environment variable to the container:
You must restart the bot after putting the opt-out for the change to take effect. Editing a Docker container or docker-compose may require more steps to apply the changes, consult your manual.
If you believe your data has already been sent and want to issue a GDPR delete request, please opt out as above and then send your bot name, broadcaster name, and the rollbarid from botlogin.txt to: gdpr /A\T/ phantombot // hopto \ org
We also accept requests for copies of your data. GDPR requests are accepted from all users, even those who do not live in a locale that has such laws.
Please note that the IP addresses in the DDOS logs can not be retrieved or deleted manually, but will be automatically deleted after 5 weeks by log rotation.