No description
Find a file
2025-04-15 19:44:17 +02:00
bot download: delete files on error 2025-04-15 19:44:17 +02:00
cookies Init 2025-04-14 13:05:43 +02:00
database main: changes, fixes 2025-04-14 23:45:54 +02:00
enums Init 2025-04-14 13:05:43 +02:00
ext fix instagram 429 error 2025-04-15 19:31:30 +02:00
models cleanup code 2025-04-15 10:46:54 +02:00
plugins Init 2025-04-14 13:05:43 +02:00
util supports more env variables 2025-04-15 18:44:01 +02:00
.env.example improve readme 2025-04-15 18:57:32 +02:00
.gitignore Init 2025-04-14 13:05:43 +02:00
build.sh Init 2025-04-14 13:05:43 +02:00
go.mod main: fixes downloads cleanup 2025-04-15 10:18:45 +02:00
go.sum main: fixes downloads cleanup 2025-04-15 10:18:45 +02:00
LICENSE Init 2025-04-14 13:05:43 +02:00
main.go Init 2025-04-14 13:05:43 +02:00
README.md improve readme 2025-04-15 18:57:32 +02:00

govd

a telegram bot for downloading media from various platforms

this project was born after the discontinuation of a highly popular bot known as UVD, and draws significant inspiration from yt-dlp

features

  • download media from various platforms
  • download videos, photos, and audio
  • inline mode support
  • group chat support with customizable settings
  • media caption support

dependencies

  • ffmpeg >= 6.1.1
  • libheif >= 1.19.7
  • pkg-config
  • mysql db

installation

git clone https://github.com/govdbot/govd.git
cd govd
# edit .env file with your bot token and database credentials
sh build.sh

env variables

variable description default
DB_HOST database host localhost
DB_PORT database port 3306
DB_NAME database name govd
DB_USER database user govd
DB_PASSWORD database password password
BOT_API_URL* telegram bot api url https://api.telegram.org
BOT_TOKEN telegram bot token 12345678:ABC-DEF1234ghIkl-zyx57W2P0s
CONCURRENT_UPDATES max concurrent updates handled by the bot 50
LOG_DISPATCHER_ERRORS log dispatcher errors 0
DOWNLOADS_DIR directory for downloaded files downloads
HTTP_PROXY http proxy (optional)
HTTPS_PROXY http proxy (optional)
NO_PROXY no proxy domains (optional)
REPO_URL project repository url https://github.com/govdbot/govd

note: to avoid limits on files, you should host your own telegram botapi. public bot instance is currently running under a botapi fork, tdlight-telegram-bot-api, but you can use the official botapi client too.

cookies

some extractors require cookies for download. to add your cookies, just insert a txt file in cookies folder (netscape format)

todo

  • add more extractors
  • switch to sonic json parser
  • switch to native libav
  • add tests
  • add dockerfile and compose
  • improve error handling
  • add support for telegram wehbhooks
  • switch to pgsql (?)
  • better API (?)
  • better docs with multiple README