diff --git a/README.md b/README.md index f72a5a75..9264bf6c 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,9 @@ If you are reading this it looks like you are looking to add an egg to your serv * [pixel-bot](/bots/discord/pixelbot/) Python * [Sinusbot](/bots/discord/sinusbot/) +[Twitch](/bots/twitch) +* [PhantomBot](/bots/twitch/phantombot/) + [TeamSpeak3](bots/teamspeak3) * [JTS3ServerMod](/bots/teamspeak3/jts3servermod/) @@ -80,7 +83,6 @@ If you are reading this it looks like you are looking to add an egg to your serv * [TyphoonLimbo](/minecraft_proxy/typhoonlimbo/) * [Velocity](/minecraft_proxy/velocity/) - [Red Dead Redemption](/rdr/) * [RedM](/rdr/redm/) diff --git a/bots/twitch/README.md b/bots/twitch/README.md new file mode 100644 index 00000000..b1b7b7a4 --- /dev/null +++ b/bots/twitch/README.md @@ -0,0 +1,7 @@ +# Twitch Bots + +### Some of these bots support other services but are primarily Twitch bots + +#### PhantomBot [Homepage](https://phantombot.tv) [Egg](/bots/twitch/phantombot/) + +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. diff --git a/bots/twitch/phantombot/README.md b/bots/twitch/phantombot/README.md new file mode 100644 index 00000000..b62d0ac6 --- /dev/null +++ b/bots/twitch/phantombot/README.md @@ -0,0 +1,27 @@ +# PhantomBot +### Their [Site](https://phantombot.tv) +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. + +### Server Ports +3 ports are required to run PhantomBot. + +| Port | default | +|---------------------|---------| +| Game (HTTP Server) | 25000 | +| YoutubeSocketServer | 25003 | +| PanelSocketServer | 25004 | + +# NOTES +You need to define one main port and the other 2 port need to be +3 and +4! + +Example: + +Port1: 1000 + +Port2: 1003 + +Port3: 1004 + +this are forced and can't be changed! diff --git a/bots/twitch/phantombot/egg-phantom-bot.json b/bots/twitch/phantombot/egg-phantom-bot.json new file mode 100644 index 00000000..0ea82b12 --- /dev/null +++ b/bots/twitch/phantombot/egg-phantom-bot.json @@ -0,0 +1,126 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2020-03-03T02:51:46+01: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.", + "image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-11", + "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 \"apioauth\": \"{{server.build.env.USER_OAUTH_TOKEN}}\",\r\n \"oauth\": \"{{server.build.env.BOT_OAUTH_TOKEN}}\",\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}", + "startup": "{\r\n \"done\": \"Connecting to Twitch WS-IRC Server\",\r\n \"userInteraction\": []\r\n}", + "logs": "{\r\n \"custom\": true,\r\n \"location\": \"latest.log\"\r\n}", + "stop": "exit" + }, + "scripts": { + "installation": { + "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 ca-certificates unzip\r\n\r\ncd \/tmp\r\n\r\n# Fetching last github release\r\nif [ -n \"${DOWNLOAD_PATH}\" ]; then\r\n echo -e \"Using download url\"\r\n DOWNLOAD_URL=`eval echo $(echo ${DOWNLOAD_PATH} | sed -e 's\/{{\/${\/g' -e 's\/}}\/}\/g')`\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:\/\/github.com\/PhantomBot\/PhantomBot\/releases\/latest\" | grep -o '[0-9].[0-9].[0-9]')\r\n else\r\n echo -e \"Using custom release version\"\r\n fi\r\n\r\n# DOWNLOAD_URL=https:\/\/github.com\/PhantomBot\/PhantomBot\/releases\/download\/v${RELEASE_VERSION}\/PhantomBot-${RELEASE_VERSION}.zip\r\n DOWNLOAD_URL=https:\/\/raw.githubusercontent.com\/PhantomBot\/nightly-build\/master\/PhantomBot-nightly-lin.zip\r\nfi\r\n\r\n# Downloading\r\ncurl -LJO ${DOWNLOAD_URL}\r\nunzip -o PhantomBot-*.zip\r\n\r\n# Moveing unziped files into the server folder\r\ncp -f -r .\/PhantomBot-*\/* \/mnt\/server\/\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", + "container": "ubuntu:16.04", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Version", + "description": "", + "env_variable": "RELEASE_VERSION", + "default_value": "latest", + "user_viewable": 1, + "user_editable": 1, + "rules": "max:9" + }, + { + "name": "Download Path", + "description": "Using the latest nightly build:\r\nhttps:\/\/raw.githubusercontent.com\/PhantomBot\/nightly-build\/master\/PhantomBot-nightly-lin.zip\r\n\r\nWhen you use the latest nightly build you need to change the docker image to:\r\nquay.io\/parkervcp\/pterodactyl-images:debian_openjdk-13", + "env_variable": "DOWNLOAD_PATH", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "max:512" + }, + { + "name": "Twitch Channel Name", + "description": "Please enter the bot's Twitch username", + "env_variable": "CHANNEL_NAME", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:26" + }, + { + "name": "Channel Owner", + "description": "", + "env_variable": "CHANNEL_OWNER", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:26" + }, + { + "name": "Bot OAuth Token", + "description": "Please note, this OAuth token needs to be generated while you're logged in into the bot's Twitch account.\r\nIf you're not logged in as the bot, please go to https:\/\/twitch.tv\/ and login as the bot.\r\nGet the bot's OAuth token here: https:\/\/twitchapps.com\/tmi\/", + "env_variable": "BOT_OAUTH_TOKEN", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:64" + }, + { + "name": "Your OAuth Token", + "description": "Please note, this OAuth token needs to be generated while you're logged in into your caster account.\r\nIf you're not logged in as the caster, please go to https:\/\/twitch.tv\/ and login as the caster.\r\nGet the your OAuth token here: https:\/\/phantombot.tv\/oauth\/", + "env_variable": "USER_OAUTH_TOKEN", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:64" + }, + { + "name": "Bot Twitch Username", + "description": "Please enter the bot's Twitch username", + "env_variable": "BOT_TWITCH_USERNAME", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:26" + }, + { + "name": "Webpanel Username", + "description": "Please enter a custom username for the web panel", + "env_variable": "WEBPANEL_USERNAME", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:64" + }, + { + "name": "Webpanel Password", + "description": "Please enter a custom password for the web panel", + "env_variable": "WEBPANEL_PASSWORD", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:2000" + }, + { + "name": "Youtube API Key", + "description": "https:\/\/community.phantom.bot\/t\/acquire-youtube-api-key\/222", + "env_variable": "YOUTUBE_API_KEY", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "max:64" + }, + { + "name": "Discord Bot Token", + "description": "https:\/\/community.phantom.bot\/t\/discord-integration-setup\/64", + "env_variable": "DISCORD_BOT_TOKEN", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "max:64" + } + ] +} \ No newline at end of file