README
Ree6
Authors / Contributors
Bot Description & Features
From the developer's Github:
Ree6 is an all-in-one Discord Bot maintained by Presti, which started as an alternative of Mee6 to provide a lot of features that are hidden behind a paywall or subscription.
- Contains almost every feature Mee6 has.
- Has a open Source Webinterface.
- Provides advanced Audit-Logging.
- Has built in post notifications (Twitter, Instagram, YouTube, Reddit and Twitch).
- Built-in simple Ticket System.
- And more!
Configuration
- You will need to modify the config.yml to even start the bot.
Server Ports
There are no ports required for Ree6.
Updating
Re-Installing the server via the panel will do the following:
- Update the bot to the latest version.
API keys
This bot uses a lot of api keys. It will print some errors to the console if you don't have some filled in but the bot should still function as normal with the api keys you entered.
Docker Images (1)
| Name | Image |
|---|---|
Java_17 | ghcr.io/pterodactyl/yolks:java_17 |
Startup Command
java -Dnogui=true -jar Ree6.jar Variables (39)
[REQUIRED] Discord Bot Token
The token for your Discord bot. Learn how to obtain a token and configure your bot application properly here: https://jmusicbot.com/getting-a-bot-token/
- Environment:
BOT_TOKEN- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string
Dagpi token
Your Dagpi.xyz API-Token, for tweet image generation!
- Environment:
DAGPI_TOKEN- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Sentry DSN
Your Sentry DSN, for error reporting!
- Environment:
SENTRY_DSN- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Spotify Client Id
Spotify Application Configuration, used to parse Spotify Tracks/Playlists to YouTube search queries.
- Environment:
SPOTIFY_CLIENT_ID- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Spotify Client Secret
Spotify Application Configuration, used to parse Spotify Tracks/Playlists to YouTube search queries.
- Environment:
SPOTIFY_CLIENT_SECRET- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Heartbeat Url
The URL to the Heartbeat-Server
- Environment:
HEARTBEAT_URL- Default:
none- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
string
Heartbeat Interval
The interval between the heartbeats.
- Environment:
HEARTBEAT_INTERVAL- Default:
60- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
integer
Amari Token
Your Amari API-Token, for Amari Level imports!
- Environment:
AMARI_TOKEN- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Twitch Client Id
Twitch Application Configuration, used for the StreamTools and Twitch Notifications.
- Environment:
TWITCH_CLIENT_ID- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Twitch Client Secret
Twitch Application Configuration, used for the StreamTools and Twitch Notifications.
- Environment:
TWITCH_CLIENT_SECRET- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Twitter Bearer Key
Twitter Application Configuration, used for the Twitter Notifications.
- Environment:
TWITTER_BEARER- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Reddit Client Id
Reddit Application Configuration, used for the Reddit Notification.
- Environment:
REDDIT_CLIENT_ID- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Reddit Client Secret
Reddit Application Configuration, used for the Reddit Notification.
- Environment:
REDDIT_CLIENT_SECRET- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Instagram Username
Instagram Application Configuration, used for the Instagram Notification.
- Environment:
INSTAGRAM_USERNAME- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Instagram Password
Instagram Application Configuration, used for the Instagram Notification.
- Environment:
INSTAGRAM_PASSWORD- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
SQL Username
Username for the SQL connection.
- Environment:
DATABASE_USER- Default:
root- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
string|max:32
SQL Database
Database for the SQL Connection
- Environment:
DATABASE_DB- Default:
root- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
string|max:64
SQL Password
Password for the SQL connection.
- Environment:
DATABASE_PW- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
SQL Port
Port for the SQL connection.
- Environment:
DATABASE_PORT- Default:
3306- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
integer
Database Typ
The Typ of the Database Ree6 should use! Possible typs: - mariadb - sqlite - h2 - postgres
- Environment:
DATABASE_TYP- Default:
sqlite- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:mariadb,sqlite,postgres,postregsql,h2
Database Storagefile
The location of the storagefile if sqlite is being used.
- Environment:
DATABASE_FILE- Default:
storage/Ree6.db- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:32
[DEVELOPER-STUFF] Database Poolsize
The Database connection pool size!
- Environment:
DATABASE_POOL- Default:
10- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|integer
Database host
The Host address of the Database connection.
- Environment:
DATABASE_HOST- Default:
localhost- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
OpenAI Token
Your Authentication token that should be used in the AI API calls.
- Environment:
AI_TOKEN- Default:
OpenAI API-Token- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
OpenAI Url
The URL that should receive the API calls.
- Environment:
AI_URL- Default:
https://api.openai.com/v1/chat/completions- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
OpenAI Model
The AI model that should be used in the API calls.
- Environment:
AI_MODEL- Default:
gpt-3.5-turbo-0301- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:32
Activity Status
The Activity status of the Bot that will be shown.
- Environment:
MISC_STATUS- Default:
ree6.de | %guilds% Servers. (%shard%)- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Feedback Channel
The Channel Id of the Feedback channel.
- Environment:
MISC_FEEDBACK- Default:
0- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
integer
[DEVELOPER-STUFF] Bot Owner Id
The ID of the Bot Owner, this will be used internally on some checks.
- Environment:
MISC_OWNER- Default:
321580743488831490- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|integer
Invite Link
The Invite link to invite the Bot.
- Environment:
MISC_INVITE- Default:
https://invite.ree6.de- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Predefined Information for AI
The Information for the AI.
- Environment:
MISC_PREDEF- Default:
You are Ree6 a Discord bot.- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Support Link
The Url link for users to receive support.
- Environment:
MISC_SUPPORT- Default:
https://support.ree6.de- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Website
The Url to the Website of the Bot.
- Environment:
MISC_WEB- Default:
https://ree6.de- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Webinterface
The Url to the Webinterface.
- Environment:
MISC_INTERFACE- Default:
https://cp.ree6.de- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Record Url
The Url that uses can access to get their recording.
- Environment:
MISC_RECORD- Default:
https://cp.ree6.de/external/recording- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Twitch Url
The Url used to connect a Twitch Account with the Ree6 System.
- Environment:
MISC_TWITCH- Default:
https://cp.ree6.de/external/twitch- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Advertisment
The Advertisement in Embed Footers and the rest.
- Environment:
MISC_ADV- Default:
powered by Tube-hosting- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:128
Name
The Name of the Bot.
- Environment:
MISC_NAME- Default:
Ree6- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:20
Shards
The amount of shards that should be created.
- Environment:
MISC_SHARD- Default:
1- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|integer
Installation Script
ghcr.io/ptero-eggs/installers:debianbash#!/bin/bash
## this is a simple script to use the github API for release versions.
## this requires the egg has a variable for GITHUB_PACKAGE and VERSION
## this supports using oauth/personal access tokens via GITHUB_USER and GITHUB_OAUTH_TOKEN (both are required.)
## if you are getting hit with GitHub API limit issues then you need to have the user and token set.
apt update
apt install -y jq curl
CONFIG_LINK="https://raw.githubusercontent.com/ptero-eggs/application-eggs/main/bots/discord/ree6/config.yml"
LATEST_JSON=$(curl --silent "https://api.github.com/repos/Ree6-Applications/Ree6/releases/latest")
RELEASES=$(curl --silent "https://api.github.com/repos/Ree6-Applications/Ree6/releases")
MATCH=jar-with-dependencies.jar
if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then
DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i "${MATCH}" | head -1 )
else
VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tag_name')
if [ "${VERSION}" == "${VERSION_CHECK}" ]; then
DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i "${MATCH}" | head -1)
else
echo -e "defaulting to latest release"
DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i *.jar)
fi
fi
## Ree6 Setup
[ ! -d /mnt/server ] && mkdir -p /mnt/server
if [ ! -z "${DOWNLOAD_URL}" ]; then
if curl --output /dev/null --silent --head --fail ${DOWNLOAD_URL}; then
echo -e "link is valid. setting download link to ${DOWNLOAD_URL}"
DOWNLOAD_LINK=${DOWNLOAD_URL}
else
echo -e "link is invalid closing out"
exit 2
fi
fi
cd /mnt/server
echo -e "\nInstalling/Updating Ree6...\n"
if [ -f Ree6.jar ]; then
echo -e "Updating Ree6.jar to latest version..."
echo -e '\t(Old version can be found at "Ree6.jar-old")'
mv -f Ree6.jar Ree6.jar-old
fi
echo -e "Running: curl -sSL -o Ree6.jar ${DOWNLOAD_LINK}\n"
curl -sSL -o Ree6.jar ${DOWNLOAD_LINK}
if [ -f config.yml ]; then
echo -e "Updating config.yml to latest version..."
echo -e '\t(Old version can be found at "config.yml-old")'
mv -f config.yml config.yml-old
fi
echo -e "Running: curl -sSL -o config.yml ${CONFIG_LINK}\n"
curl -sSL -o config.yml ${CONFIG_LINK}
echo -e "\nRee6 Successfully Installed!"