{"meta":{"slug":"phantom-bot","name":"Phantom Bot","category":"bots","source":"pterodactyl","owner":"pterodactyl","repo":"application-eggs","branch":"main","path":"bots/twitch/phantombot/egg-phantom-bot.json","rawUrl":"https://raw.githubusercontent.com/pterodactyl/application-eggs/main/bots/twitch/phantombot/egg-phantom-bot.json","indexedAt":1792246788483},"egg":{"_comment":"DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL","meta":{"update_url":null,"version":"PTDL_v2"},"exported_at":"2024-06-01T19:44:04+00:00","name":"PhantomBot","author":"mail@wuffy.eu","description":"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.","features":null,"docker_images":{"Java 16 [DEPRECATED]":"ghcr.io/ptero-eggs/yolks:java_16","Java 19":"ghcr.io/ptero-eggs/yolks:java_19"},"file_denylist":[],"startup":"java --add-opens java.base/java.lang=ALL-UNNAMED -Djava.security.policy=config/security -Dinteractive -Xms1m -Dfile.encoding=UTF-8 -jar PhantomBot.jar","config":{"files":"{\r\n    \"config/botlogin.txt\": {\r\n        \"parser\": \"properties\",\r\n        \"find\": {\r\n            \"baseport\": \"{{server.build.default.port}}\",\r\n            \"channel\": \"{{server.build.env.CHANNEL_NAME}}\",\r\n            \"owner\": \"{{server.build.env.CHANNEL_OWNER}}\",\r\n            \"paneluser\": \"{{server.build.env.WEBPANEL_USERNAME}}\",\r\n            \"panelpassword\": \"{{server.build.env.WEBPANEL_PASSWORD}}\",\r\n            \"user\": \"{{server.build.env.BOT_TWITCH_USERNAME}}\",\r\n            \"youtubekey\": \"{{server.build.env.YOUTUBE_API_KEY}}\",\r\n            \"discord_token\": \"{{server.build.env.DISCORD_BOT_TOKEN}}\"\r\n        }\r\n    }\r\n}","logs":"{}","startup":"{\r\n    \"done\": \"Joined \"\r\n}","stop":"exit"},"scripts":{"installation":{"container":"ghcr.io/ptero-eggs/installers:debian","entrypoint":"bash","script":"#!/bin/bash\r\n# PhantomBot Installation Script\r\n#\r\n# Server Files: /mnt/server\r\napt update\r\napt -y --no-install-recommends install curl wget ca-certificates unzip\r\n\r\ncd /tmp\r\n\r\n# Fetching latest github release\r\nif [ -z \"${RELEASE_VERSION}\" ] || [ \"${RELEASE_VERSION}\" == \"master\" ]; then\r\n        echo -e \"Using latest Github Master version\"\r\n        DOWNLOAD_URL=https://raw.githubusercontent.com/PhantomBot/nightly-build/master/PhantomBot-nightly-lin.zip\r\nelse\r\n    if [ -z \"${RELEASE_VERSION}\" ] || [ \"${RELEASE_VERSION}\" == \"latest\" ]; then\r\n        echo -e \"Using latest release version\"\r\n        RELEASE_VERSION=$(curl -s \"https://api.github.com/repos/PhantomBot/PhantomBot/releases/latest\" | grep -e '\"tag_name\"' | sed -E 's/.*\"([^\"]+)\".*/\\1/' | sed 's/^.//')\r\n    fi\r\n    DOWNLOAD_URL=https://github.com/PhantomBot/PhantomBot/releases/download/v${RELEASE_VERSION}/PhantomBot-${RELEASE_VERSION}-lin.zip\r\n    echo -e \"${DOWNLOAD_URL}\"\r\nfi\r\n\r\n# Download files\r\ncd /mnt/server\r\nwget ${DOWNLOAD_URL} -O PhantomBot.zip\r\n\r\n# Unzip files and delete the archive\r\nunzip -o PhantomBot.zip\r\nrm PhantomBot.zip\r\n\r\n# Move unzipped files into the server folder and delete the folder \r\ncp -f -r ./PhantomBot-*/* /mnt/server/\r\nrm -rf PhantomBot-*/\r\n\r\n# Creating default config\r\nif [ ! -f /mnt/server/config/botlogin.txt ]; then\r\n    echo -e \"Creating config/botlogin.txt\"\r\n    cat << EOF > /mnt/server/config/botlogin.txt\r\n    #PhantomBot Configuration File\r\n    #\r\n    # Here is a list wiht all config values:\r\n    # https://community.phantom.bot/t/settings-for-botlogin-txt/78\r\n    #\r\n    apioauth=\r\n    baseport=\r\n    channel=\r\n    oauth=\r\n    owner=\r\n    panelpassword=\r\n    paneluser=\r\n    user=\r\n    youtubekey=\r\n    discord_token=\r\nEOF\r\nfi\r\necho \"install finished\""}},"variables":[{"name":"Version","description":"latest = Latest Stable\r\nmaster = latest Github\r\n3.9.0.7 = Latest known working with Java 16","env_variable":"RELEASE_VERSION","default_value":"latest","user_viewable":true,"user_editable":true,"rules":"required|string|max:9","field_type":"text"},{"name":"Twitch Channel Name","description":"Enter the Twitch channel name where the bot will connect to","env_variable":"CHANNEL_NAME","default_value":"","user_viewable":true,"user_editable":true,"rules":"required|string|max:26","field_type":"text"},{"name":"Channel Owner","description":"","env_variable":"CHANNEL_OWNER","default_value":"","user_viewable":true,"user_editable":true,"rules":"required|string|max:26","field_type":"text"},{"name":"Bot Twitch Username","description":"Please enter the bot's Twitch username","env_variable":"BOT_TWITCH_USERNAME","default_value":"","user_viewable":true,"user_editable":true,"rules":"required|string|max:26","field_type":"text"},{"name":"Webpanel Username","description":"Please enter a custom username for the web panel","env_variable":"WEBPANEL_USERNAME","default_value":"","user_viewable":true,"user_editable":true,"rules":"required|string|max:64","field_type":"text"},{"name":"Webpanel Password","description":"Please enter a custom password for the web panel","env_variable":"WEBPANEL_PASSWORD","default_value":"","user_viewable":true,"user_editable":true,"rules":"required|string|max:2000","field_type":"text"},{"name":"Youtube API Key","description":"https://phantombot.dev/guides/#guide=content/integrations/youtubesetup","env_variable":"YOUTUBE_API_KEY","default_value":"","user_viewable":true,"user_editable":true,"rules":"max:128","field_type":"text"},{"name":"Discord Bot Token","description":"https://phantombot.dev/guides/#guide=content/integrations/discordintegrationsetup","env_variable":"DISCORD_BOT_TOKEN","default_value":"","user_viewable":true,"user_editable":true,"rules":"max:128","field_type":"text"}]},"readme":"# PhantomBot\n\n[Website](https://phantombot.dev/)\n[GitHub](https://github.com/phantombot/PhantomBot)\nPhantomBot 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.\n\n## Server Ports\n\n1 port is required to run PhantomBot.\n\n| Port                | default |\n|---------------------|---------|\n| Web UI (HTTP Server)| 25000   |\n"}