Skip to content

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.

egg-phantombot.json

updated

Ports

Add an allocation on the node for each port.

  • Web UI (HTTP Server) 25000

Install

Installer image
ghcr.io/ptero-eggs/installers:debian
Install script
56 lines

Images

New servers use the first image. Users can change it on the Startup page.

  • Java 16 [DEPRECATED] default ghcr.io/ptero-eggs/yolks:java_16
  • Java 19 ghcr.io/ptero-eggs/yolks:java_19

Startup

The Panel runs this command to start the server. It replaces each variable in the command with the value of that variable.

8 variables

Startup command

java --add-opens java.base/java.lang=ALL-UNNAMED -Djava.security.policy=config/security -Dinteractive -Xms1m -Dfile.encoding=UTF-8 -jar PhantomBot.jar
  • latest = Latest Stable master = latest Github 3.9.0.7 = Latest known working with Java 16

    RELEASE_VERSIONUsers can edit

    required|string|max:9

  • Enter the Twitch channel name where the bot will connect to

    CHANNEL_NAMEUsers can edit

    required|string|max:26A value is required.

  • CHANNEL_OWNERUsers can edit

    required|string|max:26A value is required.

  • Please enter the bot's Twitch username

    BOT_TWITCH_USERNAMEUsers can edit

    required|string|max:26A value is required.

  • Please enter a custom username for the web panel

    WEBPANEL_USERNAMEUsers can edit

    required|string|max:64A value is required.

  • Please enter a custom password for the web panel

    WEBPANEL_PASSWORDUsers can edit

    required|string|max:2000A value is required.

  • https://phantombot.dev/guides/#guide=content/integrations/youtubesetup

    YOUTUBE_API_KEYUsers can edit

    max:128

  • https://phantombot.dev/guides/#guide=content/integrations/discordintegrationsetup

    DISCORD_BOT_TOKENUsers can edit

    max:128

Wings

Stop command
exit
Running when the console shows
Joined

Files Wings edits

Wings sets these values in these files before each start.

config/botlogin.txt properties

baseport
{{server.build.default.port}}
channel
{{server.build.env.CHANNEL_NAME}}
owner
{{server.build.env.CHANNEL_OWNER}}
paneluser
{{server.build.env.WEBPANEL_USERNAME}}
panelpassword
{{server.build.env.WEBPANEL_PASSWORD}}
user
{{server.build.env.BOT_TWITCH_USERNAME}}
youtubekey
{{server.build.env.YOUTUBE_API_KEY}}
discord_token
{{server.build.env.DISCORD_BOT_TOKEN}}

Readme

PhantomBot

Website GitHub 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

1 port is required to run PhantomBot.

Port default
Web UI (HTTP Server) 25000

Changes

  1. Import chatbots

    · Daniel Barton · f917e8a

All changes on GitHub

Problem with this egg?

Open an issue on GitHub. Include your Panel and Wings versions.

Install script 56 lines bash in ghcr.io/ptero-eggs/installers:debian Show
#!/bin/bash
# PhantomBot Installation Script
#
# Server Files: /mnt/server
apt update
apt -y --no-install-recommends install curl wget ca-certificates unzip

cd /tmp

# Fetching latest github release
if [ -z "${RELEASE_VERSION}" ] || [ "${RELEASE_VERSION}" == "master" ]; then
        echo -e "Using latest Github Master version"
        DOWNLOAD_URL=https://raw.githubusercontent.com/PhantomBot/nightly-build/master/PhantomBot-nightly-lin.zip
else
    if [ -z "${RELEASE_VERSION}" ] || [ "${RELEASE_VERSION}" == "latest" ]; then
        echo -e "Using latest release version"
        RELEASE_VERSION=$(curl -s "https://api.github.com/repos/PhantomBot/PhantomBot/releases/latest" | grep -e '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/' | sed 's/^.//')
    fi
    DOWNLOAD_URL=https://github.com/PhantomBot/PhantomBot/releases/download/v${RELEASE_VERSION}/PhantomBot-${RELEASE_VERSION}-lin.zip
    echo -e "${DOWNLOAD_URL}"
fi

# Download files
cd /mnt/server
wget ${DOWNLOAD_URL} -O PhantomBot.zip

# Unzip files and delete the archive
unzip -o PhantomBot.zip
rm PhantomBot.zip

# Move unzipped files into the server folder and delete the folder 
cp -f -r ./PhantomBot-*/* /mnt/server/
rm -rf PhantomBot-*/

# Creating default config
if [ ! -f /mnt/server/config/botlogin.txt ]; then
    echo -e "Creating config/botlogin.txt"
    cat << EOF > /mnt/server/config/botlogin.txt
    #PhantomBot Configuration File
    #
    # Here is a list wiht all config values:
    # https://community.phantom.bot/t/settings-for-botlogin-txt/78
    #
    apioauth=
    baseport=
    channel=
    oauth=
    owner=
    panelpassword=
    paneluser=
    user=
    youtubekey=
    discord_token=
EOF
fi
echo "install finished"