This bot watches chat for video links and replies to messages containing supported links with an embedded video, so you don't need to click the link to watch shared videos.
Idea and hosting by @RTCFlyer.
- iFunny
- TikTok
- Node.js v18 or higher
- A local webserver to serve static files
yt-dlp
ffmpeg
- https://rapidapi.com/arraybobo/api/instagram-scraper-2022/pricing
- https://rapidapi.com/nguyenmanhict-MuTUtGWD7K/api/auto-download-all-in-one/pricing
Clone the repository:
git clone https://github.com/eartharoid/discord-media-helper.git bot && cd bot
Then create a .env
file with the following contents:
DISCORD_CLIENT_ID=
DISCORD_TOKEN=
DOWNLOAD_DIR=
FFMPEG_BIN=ffmpeg
HOST=
MAX_FILE_SIZE=50M
RAPID_API_KEY=
YTDL_BIN=yt-dlp
Create a Discord application and bot with the message content privileged intent enabled and paste the token into the .env
file.
Also, set the other environment variables:
DISCORD_CLIENT_ID
: the client ID of the Discord applicationDOWNLOAD_DIR
: the directory which is served by a web server (e.g./var/www/html/videos
) where videos will be downloaded toHOST
: the web server URL, which must end with a/
(e.g.https://example.com/videos/
)
Install Node.js dependencies:
npm i
Compile:
npm run build
Download yt-dlp
:
curl -o /usr/bin/yt-dlp https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp
And then install ffmpeg
.
Finally, register the commands:
node scripts/commands